Merge remote-tracking branch 'citadel/master' into backend_sync

This commit is contained in:
silicons
2021-06-16 19:04:07 -07:00
31 changed files with 528 additions and 395 deletions

View File

@@ -1,22 +0,0 @@
name: Docker Build
on:
push:
branches:
- master
jobs:
publish:
if: "!contains(github.event.head_commit.message, '[ci skip]')"
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v2
- name: Build and Publish Docker Image to Registry
uses: elgohr/Publish-Docker-Github-Action@master
with:
name: tgstation/tgstation
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
dockerfile: Dockerfile
tags: "latest"

View File

@@ -2,9 +2,6 @@
"aa" = (
/turf/open/genturf,
/area/icemoon/underground/unexplored/rivers)
"ab" = (
/turf/open/genturf,
/area/icemoon/underground/unexplored)
"ac" = (
/turf/closed/mineral/random/snow,
/area/icemoon/underground/unexplored/rivers)
@@ -356,6 +353,7 @@
"aK" = (
/obj/vehicle/ridden/atv/snowmobile,
/obj/effect/turf_decal/bot,
/obj/item/key,
/turf/open/floor/plasteel/dark,
/area/mine/eva)
"aL" = (
@@ -550,6 +548,7 @@
/obj/machinery/light/small{
dir = 1
},
/obj/item/key,
/turf/open/floor/plasteel/dark,
/area/mine/eva)
"bh" = (
@@ -46146,30 +46145,30 @@ aa
aa
aa
aa
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
@@ -46403,30 +46402,30 @@ aa
aa
aa
aa
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
bT
bT
bT
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
@@ -46660,14 +46659,14 @@ aa
aa
aa
aa
ab
ab
ab
ab
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
aa
bS
bS
bT
@@ -46678,12 +46677,12 @@ bT
bS
bS
bS
ab
ab
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
aa
aa
@@ -46917,13 +46916,13 @@ aa
aa
aa
aa
ab
ab
ab
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
bS
bS
bT
@@ -46936,11 +46935,11 @@ bT
bS
bS
bS
ab
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
aa
@@ -47174,12 +47173,12 @@ aa
aa
aa
aa
ab
ab
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
bS
bS
bS
@@ -47194,10 +47193,10 @@ bS
bS
bS
bS
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
@@ -47431,11 +47430,11 @@ aa
aa
aa
aa
ab
ab
ab
ab
ab
aa
aa
aa
aa
aa
bS
bS
bS
@@ -47452,9 +47451,9 @@ bS
bS
bS
bS
ab
ab
ab
aa
aa
aa
aa
aa
aa
@@ -47688,10 +47687,10 @@ aa
aa
aa
aa
ab
ab
ab
ab
aa
aa
aa
aa
bS
bS
bT
@@ -47709,9 +47708,9 @@ bT
bT
bS
bS
ab
ab
ab
aa
aa
aa
aa
aa
aa
@@ -47945,9 +47944,9 @@ aa
aa
aa
aa
ab
ab
ab
aa
aa
aa
bS
bS
bT
@@ -47966,9 +47965,9 @@ ax
bT
bT
bS
ab
ab
ab
aa
aa
aa
aa
aa
aa
@@ -48202,9 +48201,9 @@ aa
aa
aa
aa
ab
ab
ab
aa
aa
aa
bS
bS
bT
@@ -48224,8 +48223,8 @@ ax
bT
bS
bS
ab
ab
aa
aa
aa
aa
aa
@@ -48459,9 +48458,9 @@ aa
aa
aa
aa
ab
ab
ab
aa
aa
aa
bS
bT
bT
@@ -48481,8 +48480,8 @@ aJ
bT
bT
bS
ab
ab
aa
aa
aa
aa
aa
@@ -48716,9 +48715,9 @@ aa
aa
aa
aa
ab
ab
ab
aa
aa
aa
bT
bT
ad
@@ -48738,8 +48737,8 @@ ax
ax
bT
bS
ab
ab
aa
aa
aa
aa
aa
@@ -48973,9 +48972,9 @@ aa
aa
aa
aa
ab
ab
ab
aa
aa
aa
bT
ad
ad
@@ -48995,8 +48994,8 @@ bJ
bJ
bJ
bS
ab
ab
aa
aa
aa
aa
aa
@@ -49230,8 +49229,8 @@ aa
aa
aa
aa
ab
ab
aa
aa
bT
bT
ad
@@ -49252,8 +49251,8 @@ cr
bO
bJ
bS
ab
ab
aa
aa
aa
aa
aa
@@ -49487,8 +49486,8 @@ aa
aa
aa
aa
ab
ab
aa
aa
bT
bT
ae
@@ -49509,8 +49508,8 @@ bZ
bP
bJ
bS
ab
ab
aa
aa
aa
aa
aa
@@ -49744,8 +49743,8 @@ aa
aa
aa
aa
ab
ab
aa
aa
bT
bT
ad
@@ -49766,8 +49765,8 @@ ca
bQ
bJ
bS
ab
ab
aa
aa
aa
aa
aa
@@ -50001,8 +50000,8 @@ aa
aa
aa
aa
ab
ab
aa
aa
bS
bT
ad
@@ -50023,8 +50022,8 @@ bJ
bJ
bJ
bS
ab
ab
aa
aa
aa
aa
aa
@@ -50258,8 +50257,8 @@ aa
aa
aa
aa
ab
ab
aa
aa
bS
bT
bT
@@ -50280,8 +50279,8 @@ ad
ad
bS
bS
ab
ab
aa
aa
aa
aa
aa
@@ -50515,8 +50514,8 @@ aa
aa
aa
aa
ab
ab
aa
aa
bS
bS
bT
@@ -50537,8 +50536,8 @@ ad
bS
bS
bS
ab
ab
aa
aa
aa
aa
aa
@@ -50772,9 +50771,9 @@ aa
aa
aa
aa
ab
ab
ab
aa
aa
aa
bS
bS
bT
@@ -50793,9 +50792,9 @@ ad
ad
bS
bS
ab
ab
ab
aa
aa
aa
aa
aa
aa
@@ -51029,10 +51028,10 @@ aa
aa
aa
aa
ab
ab
ab
ab
aa
aa
aa
aa
bS
bT
bT
@@ -51049,10 +51048,10 @@ ad
ad
bS
bS
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
@@ -51286,10 +51285,10 @@ aa
aa
aa
aa
ab
ab
ab
ab
aa
aa
aa
aa
bS
bS
bT
@@ -51306,10 +51305,10 @@ bS
bS
bS
bS
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
@@ -51543,13 +51542,13 @@ aa
aa
aa
aa
ab
ab
ab
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
bS
bT
bX
@@ -51562,11 +51561,11 @@ bS
bS
bS
bS
ab
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
aa
@@ -51800,13 +51799,13 @@ aa
aa
aa
aa
ab
ab
ab
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
bS
bS
bS
@@ -51816,14 +51815,14 @@ bS
bS
bS
bS
ab
ab
ab
ab
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
@@ -52057,30 +52056,30 @@ aa
aa
aa
aa
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
@@ -52314,30 +52313,30 @@ aa
aa
aa
aa
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa
aa

View File

@@ -1285,6 +1285,9 @@
},
/obj/item/reagent_containers/dropper,
/obj/effect/turf_decal/stripes/line,
/obj/machinery/light{
dir = 1
},
/turf/open/floor/plasteel,
/area/science/xenobiology)
"acj" = (
@@ -1470,6 +1473,9 @@
/obj/effect/turf_decal/stripes/line{
dir = 4
},
/obj/machinery/light{
dir = 8
},
/turf/open/floor/plasteel,
/area/science/xenobiology)
"acH" = (
@@ -2223,6 +2229,9 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 5
},
/obj/machinery/light/small{
dir = 8
},
/turf/open/floor/plasteel/white,
/area/science/xenobiology)
"adT" = (
@@ -4995,9 +5004,9 @@
dir = 1;
name = "north facing firelock"
},
/obj/machinery/door/airlock/research{
name = "Research Division Access";
req_access_txt = "47"
/obj/machinery/door/airlock/command{
name = "Corporate Showroom";
req_access_txt = "19"
},
/obj/structure/disposalpipe/segment,
/turf/open/floor/plasteel,
@@ -39035,6 +39044,12 @@
},
/turf/open/floor/plasteel/grimy,
/area/commons/fitness/recreation)
"rUV" = (
/obj/machinery/light{
dir = 4
},
/turf/open/floor/plasteel/white,
/area/science/xenobiology)
"rVy" = (
/obj/effect/spawner/structure/window/plasma/reinforced,
/obj/machinery/atmospherics/pipe/simple/scrubbers/visible,
@@ -59047,7 +59062,7 @@ aex
aeN
afa
afo
fTg
rUV
afX
fTg
afW
@@ -76780,7 +76795,7 @@ avT
xUL
vcG
lzB
avT
xiw
avT
ydp
ydp
@@ -78836,7 +78851,7 @@ nGx
nGx
xtV
lzB
avT
xiw
avT
avT
avT

View File

@@ -532,7 +532,7 @@
// /datum/component/storage signals
#define COMSIG_CONTAINS_STORAGE "is_storage" //() - returns bool.
#define COMSIG_TRY_STORAGE_INSERT "storage_try_insert" //(obj/item/inserting, mob/user, silent, force) - returns bool
#define COMSIG_TRY_STORAGE_SHOW "storage_show_to" //(mob/show_to, force) - returns bool.
#define COMSIG_TRY_STORAGE_SHOW "storage_show_to" //(mob/show_to, force, trigger_on_found) - returns bool.
#define COMSIG_TRY_STORAGE_HIDE_FROM "storage_hide_from" //(mob/hide_from) - returns bool
#define COMSIG_TRY_STORAGE_HIDE_ALL "storage_hide_all" //returns bool
#define COMSIG_TRY_STORAGE_SET_LOCKSTATE "storage_lock_set_state" //(newstate)

View File

@@ -52,7 +52,7 @@
/datum/crafting_recipe/armwraps
name = "Armwraps"
result = /obj/item/clothing/gloves/fingerless/pugilist
result = /obj/item/clothing/gloves/fingerless/pugilist/crafted
time = 60
tools = list(TOOL_WIRECUTTER)
reqs = list(/obj/item/stack/sheet/cloth = 4,

View File

@@ -159,7 +159,7 @@
/datum/component/embedded/proc/jostleCheck()
var/mob/living/carbon/victim = parent
var/damage = weapon.w_class * pain_mult
var/damage = weapon.w_class * jostle_pain_mult
var/pain_chance_current = jostle_chance
if(victim.m_intent == MOVE_INTENT_WALK || !(victim.mobility_flags & MOBILITY_STAND))
pain_chance_current *= 0.5

View File

@@ -37,7 +37,7 @@
to_chat(M, "<span class='notice'>You start dumping out tier/cell rating [lowest_rating] parts from [parent].</span>")
var/turf/T = get_turf(A)
var/datum/progressbar/progress = new(M, length(things), T)
while (do_after(M, 10, TRUE, T, FALSE, CALLBACK(src, .proc/mass_remove_from_storage, T, things, progress)))
while (do_after(M, 10, TRUE, T, FALSE, CALLBACK(src, .proc/mass_remove_from_storage, T, things, progress, TRUE, M)))
stoplag(1)
qdel(progress)
A.do_squish(0.8, 1.2)
@@ -81,7 +81,7 @@
to_chat(M, "<span class='notice'>You start dumping out tier/cell rating [lowest_rating] parts from [parent].</span>")
var/turf/T = get_turf(A)
var/datum/progressbar/progress = new(M, length(things), T)
while (do_after(M, 10, TRUE, T, FALSE, CALLBACK(src, .proc/mass_remove_from_storage, T, things, progress)))
while (do_after(M, 10, TRUE, T, FALSE, CALLBACK(src, .proc/mass_remove_from_storage, T, things, progress, TRUE, M)))
stoplag(1)
qdel(progress)
A.do_squish(0.8, 1.2)

View File

@@ -271,20 +271,20 @@
var/turf/T = get_turf(A)
var/list/things = contents()
var/datum/progressbar/progress = new(M, length(things), T)
while (do_after(M, 10, TRUE, T, FALSE, CALLBACK(src, .proc/mass_remove_from_storage, T, things, progress)))
while (do_after(M, 10, TRUE, T, FALSE, CALLBACK(src, .proc/mass_remove_from_storage, T, things, progress, TRUE, M)))
stoplag(1)
qdel(progress)
A.do_squish(0.8, 1.2)
/datum/component/storage/proc/mass_remove_from_storage(atom/target, list/things, datum/progressbar/progress, trigger_on_found = TRUE)
/datum/component/storage/proc/mass_remove_from_storage(atom/target, list/things, datum/progressbar/progress, trigger_on_found = TRUE, mob/user)
var/atom/real_location = real_location()
for(var/obj/item/I in things)
things -= I
if(I.loc != real_location)
continue
remove_from_storage(I, target)
if(trigger_on_found && I.on_found())
if(trigger_on_found && user && (user.active_storage != src) && I.on_found(user))
return FALSE
remove_from_storage(I, target)
if(TICK_CHECK)
progress.update(progress.goal - length(things))
return TRUE
@@ -429,7 +429,7 @@
return FALSE
// this must come before the screen objects only block, dunno why it wasn't before
if(over_object == M)
user_show_to_mob(M)
user_show_to_mob(M, trigger_on_found = TRUE)
return
if(isrevenant(M))
RevenantThrow(over_object, M, source)
@@ -448,15 +448,28 @@
return
A.add_fingerprint(M)
/datum/component/storage/proc/user_show_to_mob(mob/M, force = FALSE)
/datum/component/storage/proc/user_show_to_mob(mob/M, force = FALSE, trigger_on_found = FALSE)
var/atom/A = parent
if(!istype(M))
return FALSE
A.add_fingerprint(M)
if(!force && (check_locked(null, M) || !M.CanReach(parent, view_only = TRUE)))
return FALSE
if(trigger_on_found)
if(check_on_found(M))
return
ui_show(M)
/**
* Check if we should trigger on_found()
* If this returns TRUE, it means an on_found() returned TRUE and immediately broke the chain.
* In most contexts, this should mean to stop.
*/
/datum/component/storage/proc/check_on_found(mob/user)
for(var/obj/item/I in contents())
if(I.on_found(user))
return TRUE
/datum/component/storage/proc/mousedrop_receive(datum/source, atom/movable/O, mob/M)
if(isitem(O))
var/obj/item/I = O
@@ -579,8 +592,8 @@
/datum/component/storage/proc/show_to_ghost(datum/source, mob/dead/observer/M)
return user_show_to_mob(M, TRUE)
/datum/component/storage/proc/signal_show_attempt(datum/source, mob/showto, force = FALSE)
return user_show_to_mob(showto, force)
/datum/component/storage/proc/signal_show_attempt(datum/source, mob/showto, force = FALSE, trigger_on_found = TRUE)
return user_show_to_mob(showto, force, trigger_on_found = trigger_on_found)
/datum/component/storage/proc/on_check()
return TRUE
@@ -649,7 +662,7 @@
if(A.loc == user)
. = COMPONENT_NO_ATTACK_HAND
if(!check_locked(source, user, TRUE))
ui_show(user)
user_show_to_mob(user, trigger_on_found = TRUE)
A.do_jiggle()
/datum/component/storage/proc/signal_on_pickup(datum/source, mob/user)
@@ -679,7 +692,7 @@
var/atom/A = parent
if(!quickdraw)
A.add_fingerprint(user)
user_show_to_mob(user)
user_show_to_mob(user, trigger_on_found = TRUE)
if(rustle_sound)
playsound(A, "rustle", 50, 1, -5)
return TRUE

View File

@@ -207,3 +207,101 @@
if(!key_valid)
GLOB.topic_status_cache = .
/datum/world_topic/jsonstatus
keyword = "jsonstatus"
/datum/world_topic/jsonstatus/Run(list/input, addr)
. = list()
.["mode"] = "hidden" // GLOB.master_mode - woops we don't want people to know if there's secret/extended :)
.["round_id"] = "[GLOB.round_id]"
.["players"] = GLOB.clients.len
var/list/adm = get_admin_counts()
var/list/presentmins = adm["present"]
var/list/afkmins = adm["afk"]
.["admins"] = presentmins.len + afkmins.len //equivalent to the info gotten from adminwho
.["security_level"] = "[NUM2SECLEVEL(GLOB.security_level)]"
.["round_duration"] = WORLDTIME2TEXT("hh:mm:ss")
.["map"] = SSmapping.config.map_name
return json_encode(.)
/datum/world_topic/jsonplayers
keyword = "jsonplayers"
/datum/world_topic/jsonplayers/Run(list/input, addr)
. = list()
for(var/client/C in GLOB.clients)
if(C.holder?.fakekey)
. += C.holder.fakekey
continue
. += C.key
return json_encode(.)
/datum/world_topic/jsonmanifest
keyword = "jsonmanifest"
/datum/world_topic/jsonmanifest/Run(list/input, addr)
var/list/command = list()
var/list/security = list()
var/list/engineering = list()
var/list/medical = list()
var/list/science = list()
var/list/cargo = list()
var/list/civilian = list()
var/list/misc = list()
for(var/datum/data/record/R in GLOB.data_core.general)
var/name = R.fields["name"]
var/rank = R.fields["rank"]
var/real_rank = rank // make_list_rank(R.fields["real_rank"])
if(real_rank in GLOB.security_positions)
security[name] = rank
else if(real_rank in GLOB.engineering_positions)
engineering[name] = rank
else if(real_rank in GLOB.medical_positions)
medical[name] = rank
else if(real_rank in GLOB.science_positions)
science[name] = rank
else if(real_rank in GLOB.supply_positions)
cargo[name] = rank
else if(real_rank in GLOB.civilian_positions)
civilian[name] = rank
else
misc[name] = rank
// mixed departments, /datum/department when
if(real_rank in GLOB.command_positions)
command[name] = rank
. = list()
.["Command"] = command
.["Security"] = security
.["Engineering"] = engineering
.["Medical"] = medical
.["Science"] = science
.["Cargo"] = cargo
.["Civilian"] = civilian
.["Misc"] = misc
return json_encode(.)
/datum/world_topic/jsonrevision
keyword = "jsonrevision"
/datum/world_topic/jsonrevision/Run(list/input, addr)
var/datum/getrev/revdata = GLOB.revdata
var/list/data = list(
"date" = copytext(revdata.date, 1, 11),
"dd_version" = world.byond_version,
"dd_build" = world.byond_build,
"dm_version" = DM_VERSION,
"dm_build" = DM_BUILD,
"revision" = revdata.commit,
"round_id" = "[GLOB.round_id]",
"testmerge_base_url" = "[CONFIG_GET(string/githuburl)]/pull/"
)
if (revdata.testmerge.len)
for (var/datum/tgs_revision_information/test_merge/TM in revdata.testmerge)
data["testmerges"] += list(list(
"id" = TM.number,
"desc" = TM.title,
"author" = TM.author
))
return json_encode(data)

View File

@@ -800,6 +800,8 @@
var/list/things = src_object.contents()
var/datum/progressbar/progress = new(user, things.len, src)
var/datum/component/storage/STR = GetComponent(/datum/component/storage)
if(STR == src_object)
return
while (do_after(user, 10, TRUE, src, FALSE, CALLBACK(STR, /datum/component/storage.proc/handle_mass_item_insertion, things, src_object, user, progress)))
stoplag(1)
qdel(progress)

View File

@@ -386,7 +386,7 @@ GLOBAL_LIST_EMPTY(station_turfs)
var/list/things = src_object.contents()
var/datum/progressbar/progress = new(user, things.len, src)
while (do_after(usr, 1 SECONDS, TRUE, src, FALSE, CALLBACK(src_object, /datum/component/storage.proc/mass_remove_from_storage, src, things, progress)))
while (do_after(usr, 1 SECONDS, TRUE, src, FALSE, CALLBACK(src_object, /datum/component/storage.proc/mass_remove_from_storage, src, things, progress, TRUE, user)))
stoplag(1)
qdel(progress)

View File

@@ -6,7 +6,7 @@
holder.marked_datum = D
vv_update_display(D, "marked", VV_MSG_MARKED)
/client/proc/mark_datum_mapview(datum/D as mob|obj|turf|area in view(view))
/client/proc/mark_datum_mapview(datum/D in world)
set category = "Debug"
set name = "Mark Object"
mark_datum(D)

View File

@@ -76,6 +76,18 @@
if(!silent)
to_chat(user, "<span class='warning'>With [src] off of your arms, you feel less ready to punch things.</span>")
/obj/item/clothing/gloves/fingerless/pugilist/crafted
unique_reskin = list("Short" = "armwraps",
"Extended" = "armwraps_extended"
)
/obj/item/clothing/gloves/fingerless/pugilist/crafted/reskin_obj(mob/M)
. = ..()
if(icon_state == "armwraps_extended")
item_state = "armwraps_extended"
else
return
/obj/item/clothing/gloves/fingerless/pugilist/chaplain
name = "armwraps of unyielding resolve"
desc = "A series of armwraps, soaked in holy water. Makes you pretty keen to smite evil magic users."

View File

@@ -50,6 +50,77 @@
-->
<div class="commit sansserif">
<h2 class="date">17 June 2021</h2>
<h3 class="author">Vynzill updated:</h3>
<ul class="changes bgimages16">
<li class="rscadd">ability to change crafted armwrap sprite to alternate one.</li>
<li class="imageadd">extended armwrap icon and sprite</li>
</ul>
<h3 class="author">timothyteakettle updated:</h3>
<ul class="changes bgimages16">
<li class="bugfix">fixes an oversight causing embed jostling to do 2x as much damage as it should</li>
</ul>
<h2 class="date">16 June 2021</h2>
<h3 class="author">silicons updated:</h3>
<ul class="changes bgimages16">
<li class="bugfix">on_found works again</li>
</ul>
<h2 class="date">15 June 2021</h2>
<h3 class="author">EmeraldSundisk updated:</h3>
<ul class="changes bgimages16">
<li class="rscadd">Xenobiology now has proper lighting</li>
<li class="bugfix">The Corporate Showroom now has a proper front door</li>
<li class="bugfix">Mining snowmobiles now have keys</li>
<li class="bugfix">Adjusts area designations so GENTURF icons should no longer be visible in-game</li>
</ul>
<h2 class="date">14 June 2021</h2>
<h3 class="author">EmeraldSundisk updated:</h3>
<ul class="changes bgimages16">
<li class="rscadd">Adds a brand new, wholly unique mining base to Snaxi tweak: A thorough redesign of Snaxi (see PR #14818 for more info)</li>
<li class="bugfix">Increases the number of electrical connections between substations</li>
</ul>
<h3 class="author">MrJWhit updated:</h3>
<ul class="changes bgimages16">
<li class="balance">Removes cat meteors.</li>
</ul>
<h3 class="author">SandPoot updated:</h3>
<ul class="changes bgimages16">
<li class="rscadd">Tablet computers now have a pen slot, they can almost replace your pda!</li>
<li class="spellcheck">Removed a bracket from printer's examine.</li>
<li class="bugfix">The cosmetic turtleneck and skirtleneck no longer start with broken sensors.</li>
</ul>
<h3 class="author">TripleShades updated:</h3>
<ul class="changes bgimages16">
<li class="rscadd">Lights to AI Sat Walkways</li>
<li class="rscadd">Lights to Atmospherics</li>
<li class="rscadd">Floor labels to Atmospherics Gas Miner containment units</li>
<li class="rscdel">Gas canisters from Gas Miner containment units</li>
<li class="rscdel">Excessive wiring in Security and Detective's Office</li>
</ul>
<h3 class="author">qweq12yt updated:</h3>
<ul class="changes bgimages16">
<li class="bugfix">Locker orders now properly bundle together in a single locker (still separated by buyer).</li>
<li class="bugfix">Changed some package names to be more accurate.</li>
</ul>
<h3 class="author">timothyteakettle updated:</h3>
<ul class="changes bgimages16">
<li class="rscadd">bees can go in containers and are released upon opening the container</li>
<li class="rscadd">7 more round tips have been added</li>
</ul>
<h3 class="author">zeroisthebiggay updated:</h3>
<ul class="changes bgimages16">
<li class="imageadd">new singularity hammer sprite</li>
<li class="imageadd">various slight sprite additions</li>
<li class="imageadd">distinctive combat defib sprite</li>
<li class="imageadd">a onesleeved croptop accessory sprited by trojan coyote</li>
<li class="imageadd">new bank machine sprite</li>
<li class="imagedel">unused goon coffin sprite</li>
<li class="imageadd">new water cooler sprite</li>
</ul>
<h2 class="date">12 June 2021</h2>
<h3 class="author">silicons updated:</h3>
<ul class="changes bgimages16">
@@ -570,44 +641,6 @@
<ul class="changes bgimages16">
<li class="bugfix">Borgs can now use tank dispensers (again?)</li>
</ul>
<h2 class="date">15 April 2021</h2>
<h3 class="author">BlueWildrose updated:</h3>
<ul class="changes bgimages16">
<li class="bugfix">Fixed escape pods not docking at Centcom</li>
</ul>
<h3 class="author">skodai updated:</h3>
<ul class="changes bgimages16">
<li class="imageadd">Resprited the icons for the sushi, onigiri, tuna can and sea weed.</li>
</ul>
<h2 class="date">14 April 2021</h2>
<h3 class="author">Hatterhat updated:</h3>
<ul class="changes bgimages16">
<li class="balance">Space pirates are now slightly more aware of how much money the station has, and will demand payment accordingly. (No more 20k minimum payouts and basically-confirmed three midround skeletons.)</li>
</ul>
<h2 class="date">13 April 2021</h2>
<h3 class="author">rossark updated:</h3>
<ul class="changes bgimages16">
<li class="bugfix">wrong word</li>
</ul>
<h2 class="date">12 April 2021</h2>
<h3 class="author">BlueWildrose updated:</h3>
<ul class="changes bgimages16">
<li class="bugfix">Fixed female slime-subspecies left/right sprites being flipped</li>
<li class="bugfix">Fixed drones nullspacing things they try to place on tables and in closets</li>
<li class="bugfix">Fixed phantom mob-holder items. You can now grab Ian from your backpack without any issues.</li>
</ul>
<h3 class="author">silicons updated:</h3>
<ul class="changes bgimages16">
<li class="balance">gold cores can spawn simplemob xenos again.</li>
</ul>
<h3 class="author">timothyteakettle updated:</h3>
<ul class="changes bgimages16">
<li class="config">makes AGE_VERIFICATION option off by default</li>
</ul>
</div>
<b>GoonStation 13 Development Team</b>

View File

@@ -29446,3 +29446,52 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py.
2021-06-12:
silicons:
- bugfix: xenos are now truly immune to stamina damage.
2021-06-14:
EmeraldSundisk:
- rscadd: 'Adds a brand new, wholly unique mining base to Snaxi tweak: A thorough
redesign of Snaxi (see PR #14818 for more info)'
- bugfix: Increases the number of electrical connections between substations
MrJWhit:
- balance: Removes cat meteors.
SandPoot:
- rscadd: Tablet computers now have a pen slot, they can almost replace your pda!
- spellcheck: Removed a bracket from printer's examine.
- bugfix: The cosmetic turtleneck and skirtleneck no longer start with broken sensors.
TripleShades:
- rscadd: Lights to AI Sat Walkways
- rscadd: Lights to Atmospherics
- rscadd: Floor labels to Atmospherics Gas Miner containment units
- rscdel: Gas canisters from Gas Miner containment units
- rscdel: Excessive wiring in Security and Detective's Office
qweq12yt:
- bugfix: Locker orders now properly bundle together in a single locker (still separated
by buyer).
- bugfix: Changed some package names to be more accurate.
timothyteakettle:
- rscadd: bees can go in containers and are released upon opening the container
- rscadd: 7 more round tips have been added
zeroisthebiggay:
- imageadd: new singularity hammer sprite
- imageadd: various slight sprite additions
- imageadd: distinctive combat defib sprite
- imageadd: a onesleeved croptop accessory sprited by trojan coyote
- imageadd: new bank machine sprite
- imagedel: unused goon coffin sprite
- imageadd: new water cooler sprite
2021-06-15:
EmeraldSundisk:
- rscadd: Xenobiology now has proper lighting
- bugfix: The Corporate Showroom now has a proper front door
- bugfix: Mining snowmobiles now have keys
- bugfix: Adjusts area designations so GENTURF icons should no longer be visible
in-game
2021-06-16:
silicons:
- bugfix: on_found works again
2021-06-17:
Vynzill:
- rscadd: ability to change crafted armwrap sprite to alternate one.
- imageadd: extended armwrap icon and sprite
timothyteakettle:
- bugfix: fixes an oversight causing embed jostling to do 2x as much damage as it
should

View File

@@ -1,4 +0,0 @@
author: "SandPoot"
delete-after: True
changes:
- bugfix: "The cosmetic turtleneck and skirtleneck no longer start with broken sensors."

View File

@@ -1,8 +0,0 @@
author: "TripleShades"
delete-after: True
changes:
- rscadd: "Lights to AI Sat Walkways"
- rscadd: "Lights to Atmospherics"
- rscadd: "Floor labels to Atmospherics Gas Miner containment units"
- rscdel: "Gas canisters from Gas Miner containment units"
- rscdel: "Excessive wiring in Security and Detective's Office"

View File

@@ -1,5 +0,0 @@
author: "SandPoot"
delete-after: True
changes:
- rscadd: "Tablet computers now have a pen slot, they can almost replace your pda!"
- spellcheck: "Removed a bracket from printer's examine."

View File

@@ -1,6 +0,0 @@
author: "EmeraldSundisk"
delete-after: True
changes:
- rscadd: "Adds a brand new, wholly unique mining base to Snaxi
tweak: A thorough redesign of Snaxi (see PR #14818 for more info)"
- bugfix: "Increases the number of electrical connections between substations"

View File

@@ -1,5 +0,0 @@
author: "qweq12yt"
delete-after: True
changes:
- bugfix: "Locker orders now properly bundle together in a single locker (still separated by buyer)."
- bugfix: "Changed some package names to be more accurate."

View File

@@ -1,4 +0,0 @@
author: "timothyteakettle"
delete-after: True
changes:
- rscadd: "bees can go in containers and are released upon opening the container"

View File

@@ -1,4 +0,0 @@
author: "zeroisthebiggay"
delete-after: True
changes:
- imageadd: "new water cooler sprite"

View File

@@ -1,5 +0,0 @@
author: "zeroisthebiggay"
delete-after: True
changes:
- imageadd: "new bank machine sprite"
- imagedel: "unused goon coffin sprite"

View File

@@ -1,4 +0,0 @@
author: "zeroisthebiggay"
delete-after: True
changes:
- imageadd: "new singularity hammer sprite"

View File

@@ -1,4 +0,0 @@
author: "zeroisthebiggay"
delete-after: True
changes:
- imageadd: "new singularity hammer sprite"

View File

@@ -1,5 +0,0 @@
author: "zeroisthebiggay"
delete-after: True
changes:
- imageadd: "various slight sprite additions"
- imageadd: "distinctive combat defib sprite"

View File

@@ -1,4 +0,0 @@
author: "timothyteakettle"
delete-after: True
changes:
- rscadd: "7 more round tips have been added"

View File

@@ -1,4 +0,0 @@
author: "zeroisthebiggay"
delete-after: True
changes:
- imageadd: "a onesleeved croptop accessory sprited by trojan coyote"

View File

@@ -1,4 +0,0 @@
author: "MrJWhit"
delete-after: True
changes:
- balance: "Removes cat meteors."

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 23 KiB