Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
 into safe-z
  • Loading branch information
Absolucy committed Apr 18, 2024
2 parents dd745e4 + 1fd9c6c commit 1af6459
Show file tree
Hide file tree
Showing 49 changed files with 623 additions and 225 deletions.
3 changes: 2 additions & 1 deletion _maps/map_files/BoxStation/BoxStation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -9908,8 +9908,9 @@
"doR" = (
/obj/machinery/power/apc/auto_name/directional/south,
/obj/structure/cable,
/obj/effect/mapping_helpers/apc/cell_5k,
/obj/machinery/plumbing/ooze_compressor,
/obj/effect/mapping_helpers/apc/cell_10k,
/obj/effect/mapping_helpers/apc/full_charge,
/turf/open/floor/iron/white,
/area/station/science/xenobiology)
"doW" = (
Expand Down
15 changes: 11 additions & 4 deletions _maps/map_files/Deltastation/DeltaStation2.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -42678,6 +42678,8 @@
/obj/effect/turf_decal/siding/purple{
dir = 9
},
/obj/effect/mapping_helpers/apc/cell_10k,
/obj/effect/mapping_helpers/apc/full_charge,
/turf/open/floor/iron,
/area/station/science/xenobiology)
"kpy" = (
Expand Down Expand Up @@ -89711,6 +89713,11 @@
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/iron,
/area/station/engineering/atmos)
"vUy" = (
/obj/machinery/duct,
/obj/machinery/light/floor/has_bulb,
/turf/open/floor/engine,
/area/station/science/xenobiology)
"vUz" = (
/obj/structure/disposalpipe/segment,
/turf/open/floor/iron/white,
Expand Down Expand Up @@ -121069,7 +121076,7 @@ feF
gcr
pTC
iLv
gvX
vUy
duq
fMl
fMl
Expand All @@ -121079,7 +121086,7 @@ taA
fMl
fMl
xsN
gvX
vUy
iLv
mAt
aAx
Expand Down Expand Up @@ -122868,7 +122875,7 @@ woj
rrU
pTC
iLv
gvX
vUy
pQz
fMl
fMl
Expand All @@ -122878,7 +122885,7 @@ taA
fMl
fMl
esm
gvX
vUy
iLv
mAt
cZl
Expand Down
2 changes: 2 additions & 0 deletions _maps/map_files/IceBoxStation/IceBoxStation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -1194,6 +1194,8 @@
},
/obj/machinery/power/apc/auto_name/directional/south,
/obj/structure/cable,
/obj/effect/mapping_helpers/apc/cell_10k,
/obj/effect/mapping_helpers/apc/full_charge,
/turf/open/floor/iron/white,
/area/station/science/xenobiology)
"aut" = (
Expand Down
8 changes: 6 additions & 2 deletions _maps/map_files/MetaStation/MetaStation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -13278,6 +13278,8 @@
/obj/effect/turf_decal/tile/purple/half/contrasted{
dir = 8
},
/obj/effect/mapping_helpers/apc/cell_10k,
/obj/effect/mapping_helpers/apc/full_charge,
/turf/open/floor/iron/white,
/area/station/science/cytology)
"eYw" = (
Expand Down Expand Up @@ -32577,8 +32579,6 @@
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
/obj/machinery/duct,
/obj/machinery/power/apc/auto_name/directional/west,
/obj/structure/cable,
/turf/open/floor/stone,
/area/station/science/xenobiology)
"lJh" = (
Expand Down Expand Up @@ -49930,6 +49930,10 @@
/obj/effect/turf_decal/stripes/line{
dir = 9
},
/obj/effect/mapping_helpers/apc/cell_10k,
/obj/machinery/power/apc/auto_name/directional/north,
/obj/effect/mapping_helpers/apc/full_charge,
/obj/structure/cable,
/turf/open/floor/stone,
/area/station/science/xenobiology)
"rMz" = (
Expand Down
40 changes: 26 additions & 14 deletions _maps/map_files/tramstation/tramstation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -44309,6 +44309,16 @@
/obj/structure/cable,
/turf/open/floor/carpet,
/area/station/command/heads_quarters/hos)
"nme" = (
/obj/effect/turf_decal/trimline/purple/filled/line{
dir = 1
},
/obj/machinery/power/apc/auto_name/directional/north,
/obj/structure/cable,
/obj/effect/mapping_helpers/apc/cell_10k,
/obj/effect/mapping_helpers/apc/full_charge,
/turf/open/floor/stone,
/area/station/science/xenobiology)
"nmf" = (
/obj/structure/table/wood,
/obj/machinery/computer/security/wooden_tv,
Expand Down Expand Up @@ -54558,14 +54568,6 @@
/obj/structure/cable,
/turf/open/space/basic,
/area/space/nearstation)
"qCW" = (
/obj/effect/turf_decal/trimline/purple/filled/line{
dir = 1
},
/obj/machinery/power/apc/auto_name/directional/north,
/obj/structure/cable,
/turf/open/floor/stone,
/area/station/science/xenobiology)
"qCX" = (
/obj/effect/turf_decal/stripes/line{
dir = 9
Expand Down Expand Up @@ -67170,6 +67172,16 @@
/obj/machinery/door/firedoor,
/turf/open/floor/iron,
/area/station/cargo/drone_bay)
"uAW" = (
/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/structure/disposalpipe/segment{
dir = 10
},
/turf/open/floor/catwalk_floor,
/area/station/maintenance/starboard/central)
"uAZ" = (
/obj/effect/turf_decal/trimline/white/warning{
dir = 8
Expand Down Expand Up @@ -124257,7 +124269,7 @@ xPQ
vud
tml
qVr
qCW
nme
pbt
xcM
dtN
Expand Down Expand Up @@ -126540,8 +126552,8 @@ hFC
bwz
xks
qxm
icR
icR
uAW
lLW
iix
tuN
tuN
Expand Down Expand Up @@ -127825,7 +127837,7 @@ oys
oys
gDw
gDw
nop
bay
nop
hPn
eyE
Expand Down Expand Up @@ -128080,8 +128092,8 @@ kHX
gDw
gDw
gDw
nop
nop
bay
uJu
nop
oys
oys
Expand Down
1 change: 1 addition & 0 deletions _maps/~monkestation/RandomBars/Icebox/BarSM.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -1385,6 +1385,7 @@
/obj/effect/turf_decal/trimline/yellow/warning{
dir = 5
},
/obj/effect/mapping_helpers/mail_sorting/service/bar,
/turf/open/floor/pod/dark,
/area/station/commons/lounge)
"Vg" = (
Expand Down
17 changes: 4 additions & 13 deletions _maps/~monkestation/RandomBars/Icebox/clockwork_icebox.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -304,10 +304,11 @@
"oS" = (
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible/layer2,
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/obj/structure/disposalpipe/junction/flip{
/obj/structure/cable,
/obj/structure/disposalpipe/sorting/mail/flip{
dir = 4
},
/obj/structure/cable,
/obj/effect/mapping_helpers/mail_sorting/service/bar,
/turf/open/floor/bronze,
/area/station/commons/lounge)
"qk" = (
Expand Down Expand Up @@ -412,16 +413,6 @@
},
/turf/open/floor/bronze/filled,
/area/station/service/bar)
"va" = (
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/visible/layer2,
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/obj/structure/disposalpipe/segment{
dir = 4
},
/obj/effect/mapping_helpers/mail_sorting/service/bar,
/obj/structure/cable,
/turf/open/floor/bronze,
/area/station/commons/lounge)
"vh" = (
/obj/structure/chair/bronze{
dir = 1
Expand Down Expand Up @@ -993,7 +984,7 @@ Pz
Xo
cx
vh
va
Xp
TP
EK
EK
Expand Down
3 changes: 3 additions & 0 deletions code/__DEFINES/maths.dm
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@

#define IS_FINITE__UNSAFE(a) (a-a == a-a)
#define IS_FINITE(a) (isnum(a) && IS_FINITE__UNSAFE(a))

#define IS_SAFE_NUM(a) (isnum(a) && !IS_INF__UNSAFE(a) && IS_FINITE__UNSAFE(a))

// ------------------------------------
// Aight dont remove the rest

Expand Down
11 changes: 11 additions & 0 deletions code/__DEFINES/~monkestation/clock_cult.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,16 @@

#define SIGIL_TRANSMISSION_RANGE 4

///base state the ark is created in, any state besides this will be a hostile environment
#define ARK_STATE_BASE 0
///state for the grace period after the cult has reached its member count max and have enough activing anchoring crystals to summon
#define ARK_STATE_CHARGING 1
///state for after the cult has been annouced as well as the first half of the assault
#define ARK_STATE_ACTIVE 2
///state for the halfway point of ark activation
#define ARK_STATE_SUMMONING 3
///the ark has either finished opening or been destroyed in this state
#define ARK_STATE_FINAL 4

///max damage taken per hit by "important" clock structures
#define MAX_IMPORTANT_CLOCK_DAMAGE 30
2 changes: 2 additions & 0 deletions code/__DEFINES/~monkestation/traits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@
#define TRAIT_ALL_SURGERIES "all_surgeries"
/// Prevents the user from ever (unintentionally) failing a surgery step, and ensures they always have the maximum surgery speed.
#define TRAIT_PERFECT_SURGEON "perfect_surgeon"
/// Prevents the user from casting spells using sign language. Works on both /datum/mind and /mob/living.
#define TRAIT_CANT_SIGN_SPELLS "cant_sign_spells"
/// Station trait for when the clown has bridge access *shudders*
#define STATION_TRAIT_CLOWN_BRIDGE "clown_bridge"

Expand Down
1 change: 1 addition & 0 deletions code/_globalvars/traits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,7 @@ GLOBAL_LIST_INIT(traits_by_type, list(
"TRAIT_EXPANDED_FOV" = TRAIT_EXPANDED_FOV,
"TRAIT_ANALGESIA" = TRAIT_ANALGESIA,
"TRAIT_ON_ELEVATED_SURFACE" = TRAIT_ON_ELEVATED_SURFACE,
"TRAIT_CANT_SIGN_SPELLS" = TRAIT_CANT_SIGN_SPELLS, // monke edit
),
/obj/item/bodypart = list(
"TRAIT_PARALYSIS" = TRAIT_PARALYSIS,
Expand Down
3 changes: 3 additions & 0 deletions code/controllers/subsystem/polling.dm
Original file line number Diff line number Diff line change
Expand Up @@ -181,6 +181,9 @@ SUBSYSTEM_DEF(polling)
/datum/controller/subsystem/polling/proc/poll_ghost_candidates_for_mob(question, role, check_jobban, poll_time = 30 SECONDS, mob/target_mob, ignore_category = null, flashwindow = TRUE, pic_source, role_name_text)
var/static/list/mob/currently_polling_mobs = list()

if(!isnull(target_mob) && !ismob(target_mob))
stack_trace("attempted to use a non-mob as the target mob ([target_mob] | [target_mob.type])")

if(currently_polling_mobs.Find(target_mob))
return list()

Expand Down
1 change: 1 addition & 0 deletions code/game/objects/items/storage/bags.dm
Original file line number Diff line number Diff line change
Expand Up @@ -508,6 +508,7 @@
/obj/item/reagent_containers/syringe,
/obj/item/slime_extract,
/obj/item/swab,
/obj/item/stack/biomass // monke: make science bags able to hold biomass cubes
))

/*
Expand Down
4 changes: 2 additions & 2 deletions code/modules/atmospherics/gasmixtures/reactions.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1227,8 +1227,8 @@
var/particle_chance = ((PARTICLE_CHANCE_CONSTANT)/(reaction_energy-PARTICLE_CHANCE_CONSTANT)) + 1//Asymptopically approaches 100% as the energy of the reaction goes up.
if(prob(PERCENT(particle_chance)))
location.fire_nuclear_particle()
var/rad_power = max((FUSION_RAD_COEFFICIENT/instability) + 5000, 0)
radiation_pulse(location,rad_power)
var/rad_power = max((FUSION_RAD_COEFFICIENT/instability) + 250, 15000) //Wow!
radiation_pulse(location, rand(1,30), 9, 60, 2 SECONDS, rad_power, 1) // Nonmodular. Fixes fusion going wacko mode - makes it significantly harder to irradiate people through walls, and fixes the range issue.
var/new_heat_capacity = air.heat_capacity()
if(new_heat_capacity > MINIMUM_HEAT_CAPACITY && (air.temperature <= FUSION_MAXIMUM_TEMPERATURE || reaction_energy <= 0)) //If above FUSION_MAXIMUM_TEMPERATURE, will only adjust temperature for endothermic reactions.
air.temperature = clamp(((air.temperature*old_heat_capacity + reaction_energy)/new_heat_capacity),TCMB,INFINITY)
Expand Down
3 changes: 1 addition & 2 deletions code/modules/mob/living/basic/guardian/guardian_verbs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -170,9 +170,8 @@
"Do you want to play as [owner.real_name]'s [chosen_guardian.theme.name]?",
check_jobban = ROLE_PAI,
poll_time = 10 SECONDS,
target_mob = src,
target_mob = owner,
ignore_category = POLL_IGNORE_HOLOPARASITE,
pic_source = src,
role_name_text = chosen_guardian.theme.name
)
if (!LAZYLEN(ghost_candidates))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,13 +36,6 @@
modified_speech = copytext_char(speech, 3)

else
// monke start - stfu poly
var/speak_prob = speaking_pawn.ears.use_command ? 25 : 50
for(var/channel in list(RADIO_KEY_COMMON, RADIO_TOKEN_COMMAND))
if(channel in available_channels)
speak_prob = max(FLOOR(speak_prob * 0.4, 5), 5)
use_radio = prob(speak_prob)
// monke end
if(HAS_CHANNEL_PREFIX)
modified_speech = "[use_radio ? pick(available_channels) : ""][copytext_char(speech, 3)]"
else
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -470,8 +470,8 @@
colour = "grey"

/datum/status_effect/stabilized/grey/tick()
for(var/mob/living/basic/slime/S in range(1, get_turf(owner)))
SEND_SIGNAL(S, COMSIG_FRIENDSHIP_CHANGE, owner, 1)
for(var/mob/living/basic/slime/new_friend in range(3, get_turf(owner)))
SEND_SIGNAL(new_friend, COMSIG_FRIENDSHIP_CHANGE, owner, 1)
return ..()

/datum/status_effect/stabilized/orange
Expand Down
2 changes: 2 additions & 0 deletions code/modules/spells/spell.dm
Original file line number Diff line number Diff line change
Expand Up @@ -378,6 +378,8 @@
return FALSE

if((invocation_type == INVOCATION_WHISPER || invocation_type == INVOCATION_SHOUT) && !living_owner.can_speak())
if(HAS_TRAIT(living_owner, TRAIT_SIGN_LANG) && !HAS_MIND_TRAIT(living_owner, TRAIT_CANT_SIGN_SPELLS)) // monkestation edit: allow sign language users to cast spells
return TRUE
if(feedback)
to_chat(owner, span_warning("You can't get the words out to invoke [src]!"))
return FALSE
Expand Down
2 changes: 2 additions & 0 deletions code/modules/vending/autodrobe.dm
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@
"products" = list(
/obj/item/clothing/under/costume/gladiator = 1,
/obj/item/clothing/head/helmet/gladiator = 1,
/obj/item/clothing/head/viking/fake_helmet = 1, //monkestation edit
/obj/item/clothing/under/viking/fake_tunic = 1, //monkestation edit
/obj/item/clothing/suit/toggle/labcoat/mad = 1,
/obj/item/clothing/suit/bio_suit/plaguedoctorsuit = 1,
/obj/item/clothing/head/bio_hood/plague = 1,
Expand Down
16 changes: 16 additions & 0 deletions html/changelogs/AutoChangeLog-pr-1638.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
author: "Absolucy"
delete-after: True
changes:
- rscadd: "Added a HUD that appears when hovering your mouse over ooze compressors, showing the current extract it is making, and the progress on making said extract."
- bugfix: "Fixed the normal slime extract menu coming up on ooze compressors after selecting a crossbreed."
- bugfix: "Fixed xenobiology machinery taking up absurd amounts of power while doing nothing."
- balance: "Increased range of stabilized grey extract from 1 to 3."
- qol: "Increased biomass cube stack size (5 -> 15)."
- qol: "Biocubes now fit in science bags."
- qol: "You can dump biocubes from a science bag into the biomass recycler."
- qol: "You can right click the slime market with a science bag to sell all the extracts without the confirmation prompt."
- rscadd: "Added balloon alerts to lots of xenobio-related actions."
- qol: "You can toggle ooze suckers directly via right click."
- qol: "You can now right click an active ooze compressor to cancel the current recipe."
- qol: "Slime mutation syringes now show whether they've been used or not in the examine text."
- bugfix: "Removing accessories from slimes now works properly."
5 changes: 5 additions & 0 deletions html/changelogs/AutoChangeLog-pr-1658.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
author: "Absolucy"
delete-after: True
changes:
- bugfix: "Fix holoparasite resetting not working."
- code_imp: "Added a safety check that'll emit a (harmless) runtime if something tries to pass an invalid target mob to `SSpolling.poll_ghost_candidates_for_mob`."
Loading

0 comments on commit 1af6459

Please sign in to comment.