Skip to content

Tooling Pairity with PvP and 516 Compat #797

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 40 commits into from
Feb 25, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
7eeb656
tooling parity
Drulikar Feb 25, 2025
995bb43
maps to ignore support
Drulikar Feb 25, 2025
a504afc
some 516 testing
Drulikar Feb 25, 2025
08ca167
New action workflows
Drulikar Feb 25, 2025
91861c0
New maplints
Drulikar Feb 25, 2025
256dec8
just chinook
Drulikar Feb 25, 2025
0ae07c9
"CENTER" -> "1,1" and href='? -> href='byond://?
hry-gh Oct 31, 2024
6baa90f
unatomized 516 improvements
hry-gh Dec 19, 2024
cf41915
puts the theme classname in the document
hry-gh Dec 19, 2024
c2c889a
correct sizing
hry-gh Dec 26, 2024
86e8af2
add the verb to the list
hry-gh Dec 27, 2024
ff3b54e
cross origin anonymous for cdn
hry-gh Dec 30, 2024
715566f
more byond://?
hry-gh Dec 30, 2024
e04740a
test grep
hry-gh Dec 31, 2024
da39faf
Revert "test grep"
hry-gh Dec 31, 2024
37ecd78
more bad buttons
hry-gh Dec 31, 2024
9a1dd3e
angstlord update - default is darkmode
hry-gh Dec 31, 2024
c4d9695
mc link broken by 516
hry-gh Jan 10, 2025
e258eea
516 byondstorage can fail to appear for a bit for some reason
hry-gh Jan 13, 2025
7dfb3a9
some morem issed hrefs
hry-gh Jan 14, 2025
0d97f42
initial
Drulikar Jan 18, 2025
4c788bb
Tweak PP and fix antagonists panel
Drulikar Jan 18, 2025
220ecec
search input so theres a clear button on 516
Drulikar Jan 18, 2025
08b59fb
Tweak early return
Drulikar Jan 18, 2025
a0da91f
All TGUI input is now search type
Drulikar Jan 19, 2025
a663afe
This took way too much debugging
Drulikar Jan 28, 2025
9490269
Also sanitize if the listeners aren't used
Drulikar Jan 28, 2025
dd1f3e7
sigh
hry-gh Feb 5, 2025
cffd1f3
indexeddb for 516
hry-gh Feb 5, 2025
7806c05
debug file
hry-gh Feb 5, 2025
2e0e030
unused variable
hry-gh Feb 5, 2025
7bf3bde
only on 516 i don't want to think about iframe abuse in ie11 please
hry-gh Feb 5, 2025
6872463
tidyup
hry-gh Feb 5, 2025
0e4e27f
predships init earlier
hry-gh Feb 5, 2025
474f7f7
More hrefs
Drulikar Feb 25, 2025
f6a4de1
Fix bitwise ops
Drulikar Dec 3, 2024
6575d59
Ambiguous bitwise OR lint
Drulikar Dec 4, 2024
1cddc0d
Map fixes
Drulikar Feb 25, 2025
5353d19
More OD pragmas
Drulikar Feb 25, 2025
5887037
ambiguous in usage
Drulikar Nov 3, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/alternate_byond_versions.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,5 @@
# Format is version: map
# Example:
# 500.1337: runtimestation

516.1656: runtime
1 change: 1 addition & 0 deletions .github/maps_to_ignore.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
chinook
26 changes: 15 additions & 11 deletions .github/workflows/ci_suite.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,29 +9,31 @@ on:
- master
jobs:
run_linters:
if: "!contains(github.event.head_commit.message, '[ci skip]')"
if: ( !contains(github.event.head_commit.message, '[ci skip]') )
name: Run Linters
runs-on: ubuntu-latest
concurrency:
group: run_linters-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Restore SpacemanDMM cache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ~/SpacemanDMM
key: ${{ runner.os }}-spacemandmm-${{ secrets.CACHE_PURGE_KEY }}
- name: Restore Yarn cache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: tgui/.yarn/cache
key: ${{ runner.os }}-yarn-${{ secrets.CACHE_PURGE_KEY }}-${{ hashFiles('tgui/yarn.lock') }}
restore-keys: |
${{ runner.os }}-build-
${{ runner.os }}-
- name: Restore Rust cache
uses: actions/cache@v3
uses: actions/cache@v4
with:
path: ~/.cargo
key: ${{ runner.os }}-rust
Expand Down Expand Up @@ -81,7 +83,7 @@ jobs:
- run: ./DMCompiler_linux-x64/DMCompiler --suppress-unimplemented colonialmarines.dme

compile_all_maps:
if: "!contains(github.event.head_commit.message, '[ci skip]')"
if: ( !contains(github.event.head_commit.message, '[ci skip]') )
name: Compile Maps
runs-on: ubuntu-latest
steps:
Expand All @@ -98,7 +100,7 @@ jobs:
tools/build/build --ci dm -DCIBUILDING -DCITESTING -DALL_MAPS

find_all_maps:
if: "!contains(github.event.head_commit.message, '[ci skip]')"
if: ( !contains(github.event.head_commit.message, '[ci skip]') )
name: Find Maps to Test
runs-on: ubuntu-latest
outputs:
Expand All @@ -115,6 +117,8 @@ jobs:
shopt -s extglob
echo "$(ls -mw0 maps/!(*override*).json)" > maps_output.txt
sed -i -e s+maps/+\"+g -e s+.json+\"+g maps_output.txt
echo "Ignored Maps: $(cat .github/maps_to_ignore.txt)"
cat .github/maps_to_ignore.txt | sed -r 's/\s*//g' | xargs -i sed -ri 's/(, "{}")|("{}", )//g' maps_output.txt
echo "Maps: $(cat maps_output.txt)"
echo "maps={\"paths\":[$(cat maps_output.txt)]}" >> $GITHUB_OUTPUT
- name: Find Alternate Tests
Expand All @@ -123,7 +127,7 @@ jobs:
ALTERNATE_TESTS_JSON=$(jq -nRc '[inputs | capture("^(?<major>[0-9]+)\\.(?<minor>[0-9]+): (?<map>.+)$")]' .github/alternate_byond_versions.txt)
echo "alternate_tests=$ALTERNATE_TESTS_JSON" >> $GITHUB_OUTPUT
run_all_tests:
if: "!contains(github.event.head_commit.message, '[ci skip]')"
if: ( !contains(github.event.head_commit.message, '[ci skip]') )
name: Unit Tests
needs: [find_all_maps]
strategy:
Expand All @@ -138,7 +142,7 @@ jobs:
map: ${{ matrix.map }}

run_alternate_tests:
if: "!contains(github.event.head_commit.message, '[ci skip]') && needs.find_all_maps.outputs.alternate_tests != '[]'"
if: ( !contains(github.event.head_commit.message, '[ci skip]') && needs.find_all_maps.outputs.alternate_tests != '[]' )
name: Alternate Tests
needs: [find_all_maps]
strategy:
Expand All @@ -155,15 +159,15 @@ jobs:
minor: ${{ matrix.setup.minor }}

check_alternate_tests:
if: "!contains(github.event.head_commit.message, '[ci skip]') && needs.find_all_maps.outputs.alternate_tests != '[]'"
if: ( !contains(github.event.head_commit.message, '[ci skip]') && needs.find_all_maps.outputs.alternate_tests != '[]' )
name: Check Alternate Tests
needs: [run_alternate_tests]
runs-on: ubuntu-latest
steps:
- run: echo Alternate tests passed.

test_windows:
if: "!contains(github.event.head_commit.message, '[ci skip]')"
if: ( !contains(github.event.head_commit.message, '[ci skip]') )
name: Windows Build
runs-on: windows-latest
concurrency:
Expand Down
32 changes: 32 additions & 0 deletions .github/workflows/generate_documentation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Generate documentation
on:
push:
branches:
- master
jobs:
generate_documentation:
if: ( !contains(github.event.head_commit.message, '[ci skip]') )
runs-on: ubuntu-latest
concurrency: gen-docs
steps:
- uses: actions/checkout@v3
- name: Setup cache
uses: actions/cache@v3
with:
path: ~/SpacemanDMM
key: ${{ runner.os }}-spacemandmm-${{ secrets.CACHE_PURGE_KEY }}
- name: Install SpacemanDMM
run: bash tools/ci/install_spaceman_dmm.sh dmdoc
- name: Generate documentation
run: |
~/dmdoc
touch dmdoc/.nojekyll
echo docs.cm-ss13.com > dmdoc/CNAME
- name: Deploy
uses: JamesIves/[email protected]
with:
BRANCH: gh-pages
CLEAN: true
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SINGLE_COMMIT: true
FOLDER: dmdoc
18 changes: 18 additions & 0 deletions .github/workflows/remove_guide_comments.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Removes guide comments from PRs when opened, so that when we merge them
# and reuse the pull request description, the clutter is not left behind
name: Remove guide comments
on:
pull_request_target:
types: [opened]
jobs:
remove_guide_comments:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Remove guide comments
uses: actions/github-script@v6
with:
script: |
const { removeGuideComments } = await import('${{ github.workspace }}/tools/pull_request_hooks/removeGuideComments.js')
await removeGuideComments({ github, context })
38 changes: 19 additions & 19 deletions code/__DEFINES/admin.dm
Original file line number Diff line number Diff line change
Expand Up @@ -22,33 +22,33 @@
///Note categories in text form, in order of their numerical #defines.
GLOBAL_LIST_INIT(note_categories, list("Admin", "Merit", "Whitelist"))

#define ADMIN_FLW(user) "(<a href='?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];adminplayerobservefollow=[REF(user)]'>FLW</a>)"
#define ADMIN_PP(user) "(<a href='?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];adminplayeropts=[REF(user)]'>PP</a>)"
#define ADMIN_VV(atom) "(<a href='?_src_=vars;[HrefToken(forceGlobal = TRUE)];Vars=[REF(atom)]'>VV</a>)"
#define ADMIN_PM(client) client ? "(<a href='?priv_msg=[client.ckey]'>PM</a>)" : "(NO CLIENT)"
#define ADMIN_SM(user) "(<a href='?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];subtlemessage=[REF(user)]'>SM</a>)"
#define ADMIN_NOTES(user) "(<a href='?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];viewnotes=[REF(user)]'>N</a>)"
#define ADMIN_CL(user) "(<a href='?_src_=vars;[HrefToken(forceGlobal = TRUE)];view_combat_logs=[REF(user)]'>CL</a>)"
#define ADMIN_KICK(user) "(<a href='?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];boot2=[REF(user)]'>KICK</a>)"
#define ADMIN_SC(user) "(<a href='?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];adminspawncookie=[REF(user)]'>SC</a>)"
#define ADMIN_FLW(user) "(<a href='byond://?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];adminplayerobservefollow=[REF(user)]'>FLW</a>)"
#define ADMIN_PP(user) "(<a href='byond://?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];adminplayeropts=[REF(user)]'>PP</a>)"
#define ADMIN_VV(atom) "(<a href='byond://?_src_=vars;[HrefToken(forceGlobal = TRUE)];Vars=[REF(atom)]'>VV</a>)"
#define ADMIN_PM(client) client ? "(<a href='byond://?priv_msg=[client.ckey]'>PM</a>)" : "(NO CLIENT)"
#define ADMIN_SM(user) "(<a href='byond://?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];subtlemessage=[REF(user)]'>SM</a>)"
#define ADMIN_NOTES(user) "(<a href='byond://?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];viewnotes=[REF(user)]'>N</a>)"
#define ADMIN_CL(user) "(<a href='byond://?_src_=vars;[HrefToken(forceGlobal = TRUE)];view_combat_logs=[REF(user)]'>CL</a>)"
#define ADMIN_KICK(user) "(<a href='byond://?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];boot2=[REF(user)]'>KICK</a>)"
#define ADMIN_SC(user) "(<a href='byond://?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];adminspawncookie=[REF(user)]'>SC</a>)"
#define ADMIN_LOOKUP(user) "[key_name_admin(user)][ADMIN_QUE(user)]"
#define ADMIN_LOOKUPFLW(user) "[key_name_admin(user)][ADMIN_QUE(user)] [ADMIN_FLW(user)]"
#define ADMIN_FULLMONTY_NONAME(user) "[ADMIN_PP(user)] [ADMIN_NOTES(user)] [ADMIN_VV(user)] [ADMIN_CL(user)] [ADMIN_SM(user)] [ADMIN_FLW(user)]"
#define ADMIN_FULLMONTY(user) "[key_name_admin(user)] [ADMIN_FULLMONTY_NONAME(user)]"
#define ADMIN_JMP(src) "(<a href='?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];adminplayerobservecoodjump=1;X=[src.x];Y=[src.y];Z=[src.z]'>JMP</a>)"
#define ADMIN_JMP_USER(user) "(<a href='?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];adminplayerobservejump=[REF(user)]'>JMP</a>)"
#define ADMIN_JMP(src) "(<a href='byond://?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];adminplayerobservecoodjump=1;X=[src.x];Y=[src.y];Z=[src.z]'>JMP</a>)"
#define ADMIN_JMP_USER(user) "(<a href='byond://?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];adminplayerobservejump=[REF(user)]'>JMP</a>)"
#define COORD(src) "[src ? src.Admin_Coordinates_Readable() : "nonexistent location"]"
#define AREACOORD(src) "[src ? src.Admin_Coordinates_Readable(TRUE) : "nonexistent location"]"
#define ADMIN_COORDJMP(src) "[src ? src.Admin_Coordinates_Readable(FALSE, TRUE) : "nonexistent location"]"
#define ADMIN_VERBOSEJMP(src) "[src ? src.Admin_Coordinates_Readable(TRUE, TRUE) : "nonexistent location"]"
#define ADMIN_INDIVIDUALLOG(user) "(<a href='?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];individuallog=[REF(user)]'>LOGS</a>)"
#define ADMIN_TAG(datum) "(<a href='?src=[REF(src)];[HrefToken(forceGlobal = TRUE)];tag_datum=[REF(datum)]'>TAG</a>)"
#define CC_MARK(user) "(<a href='?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];ccmark=[REF(user)]'>MARK</a>)"
#define CC_REPLY(user) "(<a href='?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];CentcommReply=[REF(user)]'>RPLY</a>)"
#define OBSERVER_JMP(observer, atom) atom ? "(<a href='?src=[REF(observer)];jumptocoord=1;X=[atom.x];Y=[atom.y];Z=[atom.z]'>JMP</a>)" : ""
#define ARES_MARK(user) "(<a href='?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];AresMark=[REF(user)]'>MARK</a>)"
#define ARES_REPLY(user, ref) "(<a href='?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];AresReply=[REF(user)];AresRef=[ref]'>RPLY</a>)"
#define ADMIN_VIEW_BUG_REPORT(datum) "<a href='?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];view_bug_report=[REF(datum)]'>VIEW REPORT</a>"
#define ADMIN_INDIVIDUALLOG(user) "(<a href='byond://?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];individuallog=[REF(user)]'>LOGS</a>)"
#define ADMIN_TAG(datum) "(<a href='byond://?src=[REF(src)];[HrefToken(forceGlobal = TRUE)];tag_datum=[REF(datum)]'>TAG</a>)"
#define CC_MARK(user) "(<a href='byond://?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];ccmark=[REF(user)]'>MARK</a>)"
#define CC_REPLY(user) "(<a href='byond://?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];CentcommReply=[REF(user)]'>RPLY</a>)"
#define OBSERVER_JMP(observer, atom) atom ? "(<a href='byond://?src=[REF(observer)];jumptocoord=1;X=[atom.x];Y=[atom.y];Z=[atom.z]'>JMP</a>)" : ""
#define ARES_MARK(user) "(<a href='byond://?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];AresMark=[REF(user)]'>MARK</a>)"
#define ARES_REPLY(user, ref) "(<a href='byond://?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];AresReply=[REF(user)];AresRef=[ref]'>RPLY</a>)"
#define ADMIN_VIEW_BUG_REPORT(datum) "<a href='byond://?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];view_bug_report=[REF(datum)]'>VIEW REPORT</a>"

/atom/proc/Admin_Coordinates_Readable(area_name, admin_jump_ref)
var/turf/T = get_turf(src)
Expand Down
4 changes: 2 additions & 2 deletions code/__DEFINES/subsystems.dm
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,7 @@
#define SS_INIT_HUMANS 21
#define SS_INIT_WHO 20
#define SS_INIT_POWER 19
#define SS_INIT_PREDSHIPS 18
#define SS_INIT_INFLUXMCSTATS 12
#define SS_INIT_INFLUXSTATS 11
#define SS_INIT_LIGHTING 10
Expand All @@ -139,16 +140,15 @@
#define SS_INIT_INTERIOR 2.7
#define SS_INIT_TECHTREE 2.5
#define SS_INIT_RADIO 2
#define SS_INIT_ASSETS 1
#define SS_INIT_TIMER 100
#define SS_INIT_UNSPECIFIED 0
#define SS_INIT_ASSETS -20
#define SS_INIT_TICKER -21
#define SS_INIT_VOTE -23
#define SS_INIT_DATABASE -27
#define SS_INIT_ENTITYMANAGER -28
#define SS_INIT_PLAYTIME -29
#define SS_INIT_STICKY -30
#define SS_INIT_PREDSHIPS -31
#define SS_INIT_OBJECTIVES -32
#define SS_INIT_MINIMAP -34
#define SS_INIT_STATPANELS -98
Expand Down
2 changes: 1 addition & 1 deletion code/__DEFINES/vv.dm
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@
#define GET_VV_VAR_TARGET href_list[VV_HK_VARNAME]

//Helper for getting something to vv_do_topic in general
#define VV_TOPIC_LINK(datum, href_key, text) "<a href='?_src_=vars;[HrefToken()];[href_key]=TRUE;target=[REF(datum)]'>text</a>"
#define VV_TOPIC_LINK(datum, href_key, text) "<a href='byond://?_src_=vars;[HrefToken()];[href_key]=TRUE;target=[REF(datum)]'>text</a>"

//Helpers for vv_get_dropdown()
#define VV_DROPDOWN_OPTION(href_key, name) . += "<option value='?_src_=vars;[HrefToken()];[href_key]=TRUE;target=[REF(src)]'>[name]</option>"
Expand Down
2 changes: 1 addition & 1 deletion code/__HELPERS/text.dm
Original file line number Diff line number Diff line change
Expand Up @@ -335,7 +335,7 @@
message = "Invalid location"
else
if(include_jmp_link)
message = "<a HREF='?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];adminplayerobservecoodjump=1;X=[A.x];Y=[A.y];Z=[A.z]'>[get_area(A)]</a> ([A.x], [A.y], [A.z])"
message = "<a href='byond://?_src_=admin_holder;[HrefToken(forceGlobal = TRUE)];adminplayerobservecoodjump=1;X=[A.x];Y=[A.y];Z=[A.z]'>[get_area(A)]</a> ([A.x], [A.y], [A.z])"
else
message = "[get_area(A)] ([A.x], [A.y], [A.z])"
return message
Expand Down
2 changes: 1 addition & 1 deletion code/__HELPERS/unsorted.dm
Original file line number Diff line number Diff line change
Expand Up @@ -403,7 +403,7 @@

if(key)
if(include_link && C)
. += "<a href='?priv_msg=[C.ckey]'>"
. += "<a href='byond://?priv_msg=[C.ckey]'>"

. += key

Expand Down
4 changes: 4 additions & 0 deletions code/__pragmas.dm
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,10 @@
#pragma DanglingVarType error
#pragma MissingInterpolatedExpression error
#pragma InvalidIndexOperation error
#pragma PointlessPositionalArgument error
#pragma ProcArgumentGlobal error
#pragma ScopeOperandNamedType error

//3000-3999
#pragma EmptyBlock error
#pragma AmbiguousInOrder error
4 changes: 0 additions & 4 deletions code/_experiments.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,3 @@
#if defined(UNIT_TESTS)

#endif

#if DM_VERSION >= 516
#error "Remove all 515 experiments"
#endif
8 changes: 8 additions & 0 deletions code/_onclick/hud/rendering/render_plate.dm
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,14 @@
relay.render_source = render_target
relay.plane = relay_plane
relay.layer = (plane + abs(LOWEST_EVER_PLANE))*0.5 //layer must be positive but can be a decimal

#if MIN_COMPILER_VERSION == 516
#error Default relay loc should be "1,1".
#endif

if(mymob.client?.byond_version > 515)
relay.screen_loc = "1,1"

if(blend_mode_override)
relay.blend_mode = blend_mode_override
else
Expand Down
2 changes: 1 addition & 1 deletion code/controllers/subsystem/events.dm
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ SUBSYSTEM_DEF(events)
var/normal = ""

for(var/datum/round_event_control/E in SSevents.control)
dat = "<BR><A href='?src=[REF(src)];[HrefToken()];force_event=[REF(E)]'>[E]</A>"
dat = "<BR><A href='byond://?src=[REF(src)];[HrefToken()];force_event=[REF(E)]'>[E]</A>"
normal += dat

dat = normal
Expand Down
2 changes: 1 addition & 1 deletion code/controllers/subsystem/minimap.dm
Original file line number Diff line number Diff line change
Expand Up @@ -957,7 +957,7 @@ SUBSYSTEM_DEF(minimaps)
old_map = get_tacmap_data_png(faction)

toolbar_updated_selection = toolbar_color_selection
message_admins("[key_name(user)] has updated the <a href='?tacmaps_panel=1'>tactical map</a> for [faction].")
message_admins("[key_name(user)] has updated the <a href='byond://?tacmaps_panel=1'>tactical map</a> for [faction].")
updated_canvas = FALSE

return TRUE
Expand Down
8 changes: 4 additions & 4 deletions code/controllers/subsystem/objectives_controller.dm
Original file line number Diff line number Diff line change
Expand Up @@ -315,7 +315,7 @@ SUBSYSTEM_DEF(objectives)
for(var/datum/cm_objective/objective in medium_value)
while(LAZYLEN(objective.required_objectives) < objective.number_of_clues_to_generate && LAZYLEN(low_value))
var/datum/cm_objective/req = pick(low_value)
if(req in objective.required_objectives || (req.objective_flags & OBJECTIVE_DEAD_END))
if((req in objective.required_objectives) || (req.objective_flags & OBJECTIVE_DEAD_END))
continue //don't want to pick the same thing twice OR use a dead-end objective.
link_objectives(req, objective)

Expand All @@ -328,7 +328,7 @@ SUBSYSTEM_DEF(objectives)
for(var/datum/cm_objective/objective in high_value)
while(LAZYLEN(objective.required_objectives) < objective.number_of_clues_to_generate && LAZYLEN(medium_value))
var/datum/cm_objective/req = pick(medium_value)
if(req in objective.required_objectives || (req.objective_flags & OBJECTIVE_DEAD_END))
if((req in objective.required_objectives) || (req.objective_flags & OBJECTIVE_DEAD_END))
continue //don't want to pick the same thing twice OR use a dead-end objective.
link_objectives(req, objective)

Expand All @@ -341,7 +341,7 @@ SUBSYSTEM_DEF(objectives)
for(var/datum/cm_objective/objective in extreme_value)
while(LAZYLEN(objective.required_objectives) < objective.number_of_clues_to_generate && LAZYLEN(high_value))
var/datum/cm_objective/req = pick(high_value)
if(req in objective.required_objectives || (req.objective_flags & OBJECTIVE_DEAD_END))
if((req in objective.required_objectives) || (req.objective_flags & OBJECTIVE_DEAD_END))
continue //don't want to pick the same thing twice OR use a dead-end objective.
link_objectives(req, objective)

Expand All @@ -354,7 +354,7 @@ SUBSYSTEM_DEF(objectives)
for(var/datum/cm_objective/objective in absolute_value)
while(LAZYLEN(objective.required_objectives) < objective.number_of_clues_to_generate && LAZYLEN(extreme_value))
var/datum/cm_objective/req = pick(extreme_value)
if(req in objective.required_objectives || (req.objective_flags & OBJECTIVE_DEAD_END))
if((req in objective.required_objectives) || (req.objective_flags & OBJECTIVE_DEAD_END))
continue //don't want to pick the same thing twice OR use a dead-end objective.
link_objectives(req, objective)

Expand Down
2 changes: 1 addition & 1 deletion code/controllers/subsystem/statpanel.dm
Original file line number Diff line number Diff line change
Expand Up @@ -418,7 +418,7 @@ SUBSYSTEM_DEF(statpanels)
set hidden = TRUE

if (!current_fontsize)
current_fontsize = 12
current_fontsize = 14

var/datum/statbrowser_options/options_panel = statbrowser_options
if(!options_panel)
Expand Down
7 changes: 7 additions & 0 deletions code/controllers/subsystem/tgui.dm
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,13 @@ SUBSYSTEM_DEF(tgui)
polyfill = "<script>\n[polyfill]\n</script>"
basehtml = replacetextEx(basehtml, "<!-- tgui:inline-polyfill -->", polyfill)

/datum/controller/subsystem/tgui/OnConfigLoad()
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))

/datum/controller/subsystem/tgui/Shutdown()
close_all_uis()

Expand Down
2 changes: 1 addition & 1 deletion code/controllers/subsystem/vote.dm
Original file line number Diff line number Diff line change
Expand Up @@ -362,7 +362,7 @@ SUBSYSTEM_DEF(vote)
log_vote(text)
var/vp = CONFIG_GET(number/vote_period)
SEND_SOUND(world, sound(vote_sound, channel = SOUND_CHANNEL_VOX, volume = vote_sound_vol))
to_chat(world, SPAN_CENTERBOLD("<br><br><font color='purple'><b>[text]</b><br>Type <b>vote</b> or click <a href='?src=[REF(src)]'>here</a> to place your votes.<br>You have [DisplayTimeText(vp)] to vote.</font><br><br>"))
to_chat(world, SPAN_CENTERBOLD("<br><br><font color='purple'><b>[text]</b><br>Type <b>vote</b> or click <a href='byond://?src=[REF(src)]'>here</a> to place your votes.<br>You have [DisplayTimeText(vp)] to vote.</font><br><br>"))
time_remaining = floor(vp/10)
for(var/c in GLOB.clients)
var/client/C = c
Expand Down
Loading