Skip to content

Commit 53da9c3

Browse files
committed
tweak: Порт нескольких пр-ов совместимости с 516 (#6655) [testmerge][f66e7b9]
1 parent 836198a commit 53da9c3

File tree

26 files changed

+332
-318
lines changed

26 files changed

+332
-318
lines changed

code/_onclick/hud/plane_master/plane_master_group.dm

+4-4
Original file line numberDiff line numberDiff line change
@@ -40,14 +40,13 @@
4040
#warn Fully change default relay_loc to "1,1", rather than changing it based on client version
4141
#endif
4242

43-
if(viewing_hud.mymob?.client?.byond_version > 515)
44-
relay_loc = "1,1"
45-
rebuild_plane_masters()
46-
4743
our_hud = viewing_hud
4844
our_hud.master_groups[key] = src
4945
show_hud()
5046
build_planes_offset(our_hud, active_offset)
47+
if(viewing_hud.mymob?.client?.byond_version > 515)
48+
relay_loc = "1,1"
49+
rebuild_plane_masters()
5150

5251
/// Hide the plane master from its current hud, fully clear it out
5352
/datum/plane_master_group/proc/orphan_hud()
@@ -66,6 +65,7 @@
6665
hide_hud()
6766
rebuild_plane_masters()
6867
show_hud()
68+
our_hud.update_parallax_pref()
6969
build_planes_offset(our_hud, active_offset)
7070

7171
/// Regenerate our plane masters, this is useful if we don't have a mob but still want to rebuild. Such in the case of changing the screen_loc of relays

code/controllers/subsystem/debugview.dm

+1-1
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ SUBSYSTEM_DEF(debugview)
8989
if((SS.flags & SS_NO_FIRE) || !SS.can_fire)
9090
continue
9191

92-
html += "[SS.state_colour()]\[[SS.state_letter()]][SS.ss_id]</font>\t[round(SS.cost, 1)]ms | [round(SS.tick_usage, 1)]% [SS.get_stat_details() ? "| [SS.get_stat_details()] " : ""]| <a href=?_src_=vars;Vars=[SS.UID()]>VV Edit</a>"
92+
html += "[SS.state_colour()]\[[SS.state_letter()]][SS.ss_id]</font>\t[round(SS.cost, 1)]ms | [round(SS.tick_usage, 1)]% [SS.get_stat_details() ? "| [SS.get_stat_details()] " : ""]| <a href='byond://?_src_=vars;Vars=[SS.UID()]'>VV Edit</a>"
9393

9494
popup.set_content(html.Join("<br>"))
9595
popup.open(FALSE)

code/datums/datumvars.dm

+13-14
Original file line numberDiff line numberDiff line change
@@ -56,23 +56,23 @@
5656
/datum/proc/vv_get_dropdown()
5757
. = list()
5858
. += "---"
59-
.["Call Proc"] = "?_src_=vars;proc_call=[UID()]"
60-
.["Mark Object"] = "?_src_=vars;mark_object=[UID()]"
61-
.["Jump to Object"] = "?_src_=vars;jump_to=[UID()]"
62-
.["Delete"] = "?_src_=vars;delete=[UID()]"
63-
.["Modify Traits"] = "?_src_=vars;traitmod=[UID()]"
64-
.["Add Component/Element"] = "?_src_=vars;addcomponent=[UID()]"
65-
.["Remove Component/Element"] = "?_src_=vars;removecomponent=[UID()]"
66-
.["Mass Remove Component/Element"] = "?_src_=vars;removecomponent_mass=[UID()]"
59+
.["Call Proc"] = "byond://?_src_=vars;proc_call=[UID()]"
60+
.["Mark Object"] = "byond://?_src_=vars;mark_object=[UID()]"
61+
.["Jump to Object"] = "byond://?_src_=vars;jump_to=[UID()]"
62+
.["Delete"] = "byond://?_src_=vars;delete=[UID()]"
63+
.["Modify Traits"] = "byond://?_src_=vars;traitmod=[UID()]"
64+
.["Add Component/Element"] = "byond://?_src_=vars;addcomponent=[UID()]"
65+
.["Remove Component/Element"] = "byond://?_src_=vars;removecomponent=[UID()]"
66+
.["Mass Remove Component/Element"] = "byond://?_src_=vars;removecomponent_mass=[UID()]"
6767
. += "---"
6868

6969
/client/vv_get_dropdown()
7070
. = list()
7171
. += "---"
72-
.["Call Proc"] = "?_src_=vars;proc_call=[UID()]"
73-
.["Mark Object"] = "?_src_=vars;mark_object=[UID()]"
74-
.["Delete"] = "?_src_=vars;delete=[UID()]"
75-
.["Modify Traits"] = "?_src_=vars;traitmod=[UID()]"
72+
.["Call Proc"] = "byond://?_src_=vars;proc_call=[UID()]"
73+
.["Mark Object"] = "byond://?_src_=vars;mark_object=[UID()]"
74+
.["Delete"] = "byond://?_src_=vars;delete=[UID()]"
75+
.["Modify Traits"] = "byond://?_src_=vars;traitmod=[UID()]"
7676
. += "---"
7777

7878
/client/proc/debug_variables(datum/D in world)
@@ -114,7 +114,6 @@
114114
hash = md5(A.icon)
115115
hash = md5(hash + A.icon_state)
116116
usr << browse_rsc(sprite, "vv[hash].png")
117-
118117
title = "[D]"
119118
var/formatted_type = replacetext("[type]", "/", "<wbr>/")
120119

@@ -145,7 +144,7 @@
145144
else
146145
atomsnowflake += "<a href='byond://?_src_=vars;datumedit=[refid];varnameedit=name'><b id='name'>[D]</b></a>"
147146
atomsnowflake += "<br><font size='1'><a href='byond://?_src_=vars;rotatedatum=[refid];rotatedir=left'><<</a> <a href='byond://?_src_=vars;datumedit=[refid];varnameedit=dir' id='dir'>[dir2text(A.dir) || A.dir]</a> <a href='byond://?_src_=vars;rotatedatum=[refid];rotatedir=right'>>></a></font>"
148-
147+
149148
else if("name" in D.vars)
150149
atomsnowflake += "<a href='byond://?_src_=vars;datumedit=[refid];varnameedit=name'><b id='name'>[D]</b></a>"
151150
else

code/game/atoms.dm

+7-7
Original file line numberDiff line numberDiff line change
@@ -1361,13 +1361,13 @@ GLOBAL_LIST_EMPTY(blood_splatter_icons)
13611361
. = ..()
13621362
var/turf/curturf = get_turf(src)
13631363
if(curturf)
1364-
.["Jump to turf"] = "?_src_=holder;adminplayerobservecoodjump=1;X=[curturf.x];Y=[curturf.y];Z=[curturf.z]"
1365-
.["Atom say"] = "?_src_=vars;atom_say=[UID()]"
1366-
.["Add reagent"] = "?_src_=vars;addreagent=[UID()]"
1367-
.["Edit reagents"] = "?_src_=vars;editreagents=[UID()]"
1368-
.["Transform editor"] = "?_src_=vars;matrix_tester=[UID()]"
1369-
.["Trigger explosion"] = "?_src_=vars;explode=[UID()]"
1370-
.["Trigger EM pulse"] = "?_src_=vars;emp=[UID()]"
1364+
.["Jump to turf"] = "byond://?_src_=holder;adminplayerobservecoodjump=1;X=[curturf.x];Y=[curturf.y];Z=[curturf.z]"
1365+
.["Atom say"] = "byond://?_src_=vars;atom_say=[UID()]"
1366+
.["Add reagent"] = "byond://?_src_=vars;addreagent=[UID()]"
1367+
.["Edit reagents"] = "byond://?_src_=vars;editreagents=[UID()]"
1368+
.["Transform editor"] = "byond://?_src_=vars;matrix_tester=[UID()]"
1369+
.["Trigger explosion"] = "byond://?_src_=vars;explode=[UID()]"
1370+
.["Trigger EM pulse"] = "byond://?_src_=vars;emp=[UID()]"
13711371

13721372
/atom/proc/AllowDrop()
13731373
return FALSE

code/game/atoms_movable.dm

+2-2
Original file line numberDiff line numberDiff line change
@@ -1460,7 +1460,7 @@
14601460
/atom/movable/vv_get_dropdown()
14611461
. = ..()
14621462
if(!GetComponent(/datum/component/deadchat_control))
1463-
.["Give deadchat control"] = "?_src_=vars;grantdeadchatcontrol=[UID()]"
1463+
.["Give deadchat control"] = "byond://?_src_=vars;grantdeadchatcontrol=[UID()]"
14641464
else
1465-
.["Remove deadchat control"] = "?_src_=vars;removedeadchatcontrol=[UID()]"
1465+
.["Remove deadchat control"] = "byond://?_src_=vars;removedeadchatcontrol=[UID()]"
14661466

code/game/objects/objs.dm

+4-4
Original file line numberDiff line numberDiff line change
@@ -269,12 +269,12 @@
269269

270270
/obj/vv_get_dropdown()
271271
. = ..()
272-
.["Delete all of type"] = "?_src_=vars;delall=[UID()]"
272+
.["Delete all of type"] = "byond://?_src_=vars;delall=[UID()]"
273273
if(!speed_process)
274-
.["Make speed process"] = "?_src_=vars;makespeedy=[UID()]"
274+
.["Make speed process"] = "byond://?_src_=vars;makespeedy=[UID()]"
275275
else
276-
.["Make normal process"] = "?_src_=vars;makenormalspeed=[UID()]"
277-
.["Modify armor values"] = "?_src_=vars;modifyarmor=[UID()]"
276+
.["Make normal process"] = "byond://?_src_=vars;makenormalspeed=[UID()]"
277+
.["Modify armor values"] = "byond://?_src_=vars;modifyarmor=[UID()]"
278278

279279
/obj/proc/check_uplink_validity()
280280
return TRUE

code/modules/admin/polls/poll_list_panel.dm

+1-1
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@
127127
//Provide lists of ckeys and their answers
128128
if (POLLTYPE_TEXT)
129129
//Change the table name
130-
output += "<a href='?_src_=holder;resultspoll=[poll.UID()];startat=[start_index-10]'>Previous Page</a><a href='?_src_=holder;resultspoll=[poll.UID()];startat=[start_index+10]'>Next Page</a><br/>"
130+
output += "<a href='byond://?_src_=holder;resultspoll=[poll.UID()];startat=[start_index-10]'>Previous Page</a><a href='byond://?_src_=holder;resultspoll=[poll.UID()];startat=[start_index+10]'>Next Page</a><br/>"
131131
output += "<table><tr><th>Ckey</th><th>Response</th></tr>"
132132
//Get the results
133133
var/datum/db_query/query_get_poll_results = SSdbcore.NewQuery({"

code/modules/client/client_procs.dm

+1-1
Original file line numberDiff line numberDiff line change
@@ -237,7 +237,7 @@
237237
/client/New(TopicData)
238238
// TODO: Remove with 516
239239
if(byond_version >= 516) // Enable 516 compat browser storage mechanisms
240-
winset(src, "", "browser-options=byondstorage")
240+
winset(src, "", "browser-options=byondstorage,find")
241241
var/tdata = TopicData //save this for later use
242242
TopicData = null //Prevent calls to client.Topic from connect
243243

code/modules/client/preference/preferences.dm

+4-4
Original file line numberDiff line numberDiff line change
@@ -833,7 +833,7 @@ GLOBAL_LIST_INIT(special_role_times, list( //minimum age (in days) for accounts
833833
html += "<tr bgcolor='[job.selection_color]'><td width='60%' align='right'>"
834834
var/rank
835835
if(job.alt_titles)
836-
rank = "<a href=\"?_src_=prefs;preference=job;task=alt_title;job=\ref[job]\">[GetPlayerAltTitle(job)]</a>"
836+
rank = "<a href=\"byond://?_src_=prefs;preference=job;task=alt_title;job=\ref[job]\">[GetPlayerAltTitle(job)]</a>"
837837
else
838838
rank = job.title
839839
if((job_support_low & JOB_FLAG_CIVILIAN) && (job.title != "Civilian"))
@@ -1098,7 +1098,7 @@ GLOBAL_LIST_INIT(special_role_times, list( //minimum age (in days) for accounts
10981098
return 1
10991099

11001100
/datum/preferences/proc/ShowDisabilityState(mob/user, flag, label)
1101-
return "<li><b>[label]:</b> <a href=\"?_src_=prefs;task=input;preference=disabilities;disability=[flag]\">[disabilities & flag ? "Yes" : "No"]</a></li>"
1101+
return "<li><b>[label]:</b> <a href=\"byond://?_src_=prefs;task=input;preference=disabilities;disability=[flag]\">[disabilities & flag ? "Yes" : "No"]</a></li>"
11021102

11031103
/datum/preferences/proc/SetDisabilities(mob/user)
11041104
var/datum/species/S = GLOB.all_species[species]
@@ -1143,8 +1143,8 @@ GLOBAL_LIST_INIT(special_role_times, list( //minimum age (in days) for accounts
11431143
HTML += ShowDisabilityState(user, DISABILITY_FLAG_APHASIA, "Aphasia")
11441144

11451145
HTML += {"</ul>
1146-
<a href=\"?_src_=prefs;task=close;preference=disabilities\">\[Done\]</a>
1147-
<a href=\"?_src_=prefs;task=reset;preference=disabilities\">\[Reset\]</a>
1146+
<a href=\"byond://?_src_=prefs;task=close;preference=disabilities\">\[Done\]</a>
1147+
<a href=\"byond://?_src_=prefs;task=reset;preference=disabilities\">\[Reset\]</a>
11481148
</center></tt>"}
11491149

11501150
var/datum/browser/popup = new(user, "disabil", "<div align='center'>Choose Disabilities</div>", 350, 380)

code/modules/mob/living/carbon/human/human.dm

+8-8
Original file line numberDiff line numberDiff line change
@@ -1734,14 +1734,14 @@ Eyes need to have significantly high darksight to shine unless the mob has the X
17341734
/mob/living/carbon/human/vv_get_dropdown()
17351735
. = ..()
17361736
. += "---"
1737-
.["Set Species"] = "?_src_=vars;setspecies=[UID()]"
1738-
.["Copy Outfit"] = "?_src_=vars;copyoutfit=[UID()]"
1739-
.["Make AI"] = "?_src_=vars;makeai=[UID()]"
1740-
.["Make cyborg"] = "?_src_=vars;makerobot=[UID()]"
1741-
.["Make monkey"] = "?_src_=vars;makemonkey=[UID()]"
1742-
.["Make alien"] = "?_src_=vars;makealien=[UID()]"
1743-
.["Make slime"] = "?_src_=vars;makeslime=[UID()]"
1744-
.["Make superhero"] = "?_src_=vars;makesuper=[UID()]"
1737+
.["Set Species"] = "byond://?_src_=vars;setspecies=[UID()]"
1738+
.["Copy Outfit"] = "byond://?_src_=vars;copyoutfit=[UID()]"
1739+
.["Make AI"] = "byond://?_src_=vars;makeai=[UID()]"
1740+
.["Make cyborg"] = "byond://?_src_=vars;makerobot=[UID()]"
1741+
.["Make monkey"] = "byond://?_src_=vars;makemonkey=[UID()]"
1742+
.["Make alien"] = "byond://?_src_=vars;makealien=[UID()]"
1743+
.["Make slime"] = "byond://?_src_=vars;makeslime=[UID()]"
1744+
.["Make superhero"] = "byond://?_src_=vars;makesuper=[UID()]"
17451745
. += "---"
17461746

17471747

code/modules/mob/mob.dm

+21-21
Original file line numberDiff line numberDiff line change
@@ -955,33 +955,33 @@
955955

956956
/mob/vv_get_dropdown()
957957
. = ..()
958-
.["Show player panel"] = "?_src_=vars;mob_player_panel=[UID()]"
958+
.["Show player panel"] = "byond://?_src_=vars;mob_player_panel=[UID()]"
959959

960-
.["Give Spell"] = "?_src_=vars;give_spell=[UID()]"
961-
.["Give Martial Art"] = "?_src_=vars;givemartialart=[UID()]"
962-
.["Give Disease"] = "?_src_=vars;give_disease=[UID()]"
963-
.["Give Taipan Hud"] = "?_src_=vars;give_taipan_hud=[UID()]"
964-
.["Toggle Godmode"] = "?_src_=vars;godmode=[UID()]"
965-
.["Toggle Build Mode"] = "?_src_=vars;build_mode=[UID()]"
960+
.["Give Spell"] = "byond://?_src_=vars;give_spell=[UID()]"
961+
.["Give Martial Art"] = "byond://?_src_=vars;givemartialart=[UID()]"
962+
.["Give Disease"] = "byond://?_src_=vars;give_disease=[UID()]"
963+
.["Give Taipan Hud"] = "byond://?_src_=vars;give_taipan_hud=[UID()]"
964+
.["Toggle Godmode"] = "byond://?_src_=vars;godmode=[UID()]"
965+
.["Toggle Build Mode"] = "byond://?_src_=vars;build_mode=[UID()]"
966966

967-
.["Make 2spooky"] = "?_src_=vars;make_skeleton=[UID()]"
967+
.["Make 2spooky"] = "byond://?_src_=vars;make_skeleton=[UID()]"
968968

969-
.["Assume Direct Control"] = "?_src_=vars;direct_control=[UID()]"
970-
.["Offer Control to Ghosts"] = "?_src_=vars;offer_control=[UID()]"
971-
.["Drop Everything"] = "?_src_=vars;drop_everything=[UID()]"
969+
.["Assume Direct Control"] = "byond://?_src_=vars;direct_control=[UID()]"
970+
.["Offer Control to Ghosts"] = "byond://?_src_=vars;offer_control=[UID()]"
971+
.["Drop Everything"] = "byond://?_src_=vars;drop_everything=[UID()]"
972972

973-
.["Regenerate Icons"] = "?_src_=vars;regenerateicons=[UID()]"
974-
.["Add Language"] = "?_src_=vars;addlanguage=[UID()]"
975-
.["Remove Language"] = "?_src_=vars;remlanguage=[UID()]"
976-
.["Grant All Language"] = "?_src_=vars;grantalllanguage=[UID()]"
977-
.["Change Voice"] = "?_src_=vars;changevoice=[UID()]"
978-
.["Add Organ"] = "?_src_=vars;addorgan=[UID()]"
979-
.["Remove Organ"] = "?_src_=vars;remorgan=[UID()]"
973+
.["Regenerate Icons"] = "byond://?_src_=vars;regenerateicons=[UID()]"
974+
.["Add Language"] = "byond://?_src_=vars;addlanguage=[UID()]"
975+
.["Remove Language"] = "byond://?_src_=vars;remlanguage=[UID()]"
976+
.["Grant All Language"] = "byond://?_src_=vars;grantalllanguage=[UID()]"
977+
.["Change Voice"] = "byond://?_src_=vars;changevoice=[UID()]"
978+
.["Add Organ"] = "byond://?_src_=vars;addorgan=[UID()]"
979+
.["Remove Organ"] = "byond://?_src_=vars;remorgan=[UID()]"
980980

981-
.["Add Verb"] = "?_src_=vars;addverb=[UID()]"
982-
.["Remove Verb"] = "?_src_=vars;remverb=[UID()]"
981+
.["Add Verb"] = "byond://?_src_=vars;addverb=[UID()]"
982+
.["Remove Verb"] = "byond://?_src_=vars;remverb=[UID()]"
983983

984-
.["Gib"] = "?_src_=vars;gib=[UID()]"
984+
.["Gib"] = "byond://?_src_=vars;gib=[UID()]"
985985

986986
///Can this mob resist (default FALSE)
987987
/mob/proc/can_resist()

code/modules/tgui/tgui_panel/tgui_panel_external.dm

+2
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@
3131
tgui_panel.initialize(force = TRUE)
3232
// Force show the panel to see if there are any errors
3333
winset(src, "legacy_output_selector", "left=output_legacy")
34+
if(byond_version >= 516)
35+
winset(src, null, "browser-options=byondstorage,find")
3436

3537
/client/verb/refresh_tgui()
3638
set name = "Refresh TGUI"

tgui/packages/common/keys.ts

+17-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,8 @@ export enum KEY {
2525
Down = 'Down',
2626
End = 'End',
2727
Enter = 'Enter',
28-
Escape = 'Esc',
28+
Esc = 'Esc',
29+
Escape = 'Escape',
2930
Home = 'Home',
3031
Insert = 'Insert',
3132
Left = 'Left',
@@ -37,3 +38,18 @@ export enum KEY {
3738
Tab = 'Tab',
3839
Up = 'Up',
3940
}
41+
42+
/**
43+
* ### isEscape
44+
*
45+
* Checks if the user has hit the 'ESC' key on their keyboard.
46+
* There's a weirdness in BYOND where this could be either the string
47+
* 'Escape' or 'Esc' depending on the browser. This function handles
48+
* both cases.
49+
*
50+
* @param key - the key to check, typically from event.key
51+
* @returns true if key is Escape or Esc, false otherwise
52+
*/
53+
export const isEscape = (key: string): boolean => {
54+
return key === KEY.Esc || key === KEY.Escape;
55+
};

tgui/packages/common/storage.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -46,15 +46,15 @@ class MemoryBackend {
4646
return this.store[key];
4747
}
4848

49-
async set(key, value) {
49+
set(key, value) {
5050
this.store[key] = value;
5151
}
5252

53-
async remove(key) {
53+
remove(key) {
5454
this.store[key] = undefined;
5555
}
5656

57-
async clear() {
57+
clear() {
5858
this.store = {};
5959
}
6060
}

0 commit comments

Comments
 (0)