Skip to content

Commit

Permalink
Merge branch 'maps' of https://github.com/DexeeXI/Monkestation2.0 int…
Browse files Browse the repository at this point in the history
…o maps
  • Loading branch information
DexeeXI committed Dec 4, 2023
2 parents 9e3b60a + 46f81ee commit 1556c14
Show file tree
Hide file tree
Showing 116 changed files with 1,833 additions and 942 deletions.
122 changes: 47 additions & 75 deletions _maps/map_files/generic/CentCom.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -2008,7 +2008,7 @@
},
/obj/machinery/light/floor/has_bulb,
/turf/open/floor/iron/dark,
/area/centcom/central_command_areas/firing_range)
/area/centcom/tdome/observation)
"fP" = (
/obj/structure/table/wood/fancy,
/obj/item/storage/photo_album,
Expand Down Expand Up @@ -3769,7 +3769,7 @@
dir = 4
},
/turf/open/floor/iron/dark,
/area/centcom/central_command_areas/firing_range)
/area/centcom/tdome/observation)
"lb" = (
/obj/structure/railing,
/obj/machinery/atmospherics/pipe/smart/manifold4w/general/hidden,
Expand Down Expand Up @@ -5344,12 +5344,6 @@
},
/turf/open/space/basic,
/area/space)
"pK" = (
/obj/effect/turf_decal/siding/wood{
dir = 8
},
/turf/open/floor/wood/large,
/area/centcom/central_command_areas/firing_range)
"pN" = (
/obj/effect/turf_decal/siding/wood{
dir = 9
Expand Down Expand Up @@ -6771,7 +6765,7 @@
/area/centcom/syndicate_mothership/expansion_bombthreat)
"tU" = (
/turf/closed/indestructible/fakeglass,
/area/centcom/central_command_areas/firing_range)
/area/centcom/tdome/observation)
"tV" = (
/obj/machinery/atmospherics/pipe/smart/simple/general/visible,
/turf/closed/indestructible/opsglass,
Expand Down Expand Up @@ -9139,12 +9133,6 @@
/obj/structure/flora/bush/flowers_pp/style_random,
/turf/open/floor/grass,
/area/centcom/central_command_areas/hall)
"Bb" = (
/obj/effect/turf_decal/siding/wood{
dir = 10
},
/turf/open/floor/wood/large,
/area/centcom/central_command_areas/firing_range)
"Bc" = (
/obj/effect/turf_decal/tile/bar/opposingcorners,
/turf/open/floor/iron,
Expand Down Expand Up @@ -10859,7 +10847,7 @@
},
/obj/machinery/light/directional/west,
/turf/open/floor/wood/large,
/area/centcom/central_command_areas/firing_range)
/area/centcom/tdome/observation)
"Gh" = (
/obj/effect/turf_decal/siding/wood{
dir = 4
Expand Down Expand Up @@ -10950,6 +10938,9 @@
},
/turf/open/floor/plating,
/area/centcom/syndicate_mothership/control)
"Gs" = (
/turf/open/floor/iron/dark,
/area/centcom/tdome/observation)
"Gt" = (
/obj/machinery/door/airlock/centcom{
name = "Trapp's Office"
Expand Down Expand Up @@ -13282,12 +13273,6 @@
/obj/structure/noticeboard/directional/east,
/turf/open/floor/mineral/plastitanium,
/area/centcom/syndicate_mothership/expansion_bioterrorism)
"MU" = (
/obj/effect/turf_decal/siding/wood{
dir = 4
},
/turf/open/floor/wood/large,
/area/centcom/central_command_areas/firing_range)
"MV" = (
/obj/effect/turf_decal/siding/thinplating{
dir = 5
Expand Down Expand Up @@ -14570,12 +14555,6 @@
},
/turf/open/floor/iron/dark/herringbone,
/area/centcom/central_command_areas/admin_hangout)
"QT" = (
/obj/effect/turf_decal/siding/wood{
dir = 6
},
/turf/open/floor/wood/large,
/area/centcom/central_command_areas/firing_range)
"QU" = (
/obj/structure/flora/tree/pine/style_random,
/obj/structure/flora/grass/both/style_random,
Expand Down Expand Up @@ -14918,9 +14897,6 @@
},
/turf/open/lava/plasma/ice_moon,
/area/centcom/syndicate_mothership/control)
"RS" = (
/turf/open/floor/wood/large,
/area/centcom/central_command_areas/firing_range)
"RT" = (
/obj/machinery/light/directional/south,
/turf/open/floor/grass,
Expand Down Expand Up @@ -15720,10 +15696,6 @@
/obj/item/radio/headset,
/turf/open/floor/wood,
/area/centcom/wizard_station)
"Un" = (
/obj/effect/turf_decal/siding/wood,
/turf/open/floor/wood/large,
/area/centcom/central_command_areas/firing_range)
"Up" = (
/obj/effect/turf_decal/siding/wood,
/obj/machinery/light/neon_lining{
Expand Down Expand Up @@ -17223,7 +17195,7 @@
/area/centcom/central_command_areas/hall)
"YY" = (
/obj/machinery/computer/atmos_control/noreconnect{
atmos_chambers = list("nukiebase"="Burn Chamber");
atmos_chambers = list("nukiebase"="Burn Chamber");
desc = "Used to monitor the Syndicate Ordnance Laboratory's burn chamber.";
dir = 1;
name = "Ordnance Chamber Monitor"
Expand Down Expand Up @@ -57141,13 +57113,13 @@ pq
ew
gc
QC
Fn
Fn
Fn
Fn
Fn
Fn
Fn
QC
QC
QC
QC
QC
QC
QC
lr
lr
lr
Expand Down Expand Up @@ -57398,13 +57370,13 @@ Jd
xp
Ht
Ht
pK
pK
pK
Ht
Ht
Ht
Gg
pK
pK
Bb
Ht
Ht
aw
mw
rE
GM
Expand Down Expand Up @@ -57655,13 +57627,13 @@ Jd
TV
Nf
Wb
RS
RS
RS
RS
RS
RS
Un
Wb
Wb
Wb
Wb
Wb
Wb
Mo
oF
GM
GM
Expand Down Expand Up @@ -57912,13 +57884,13 @@ Jd
Xx
Mp
Mp
MU
MU
MU
MU
MU
MU
QT
Mp
Mp
Mp
Mp
Mp
Mp
Ro
mw
wq
GM
Expand Down Expand Up @@ -58426,13 +58398,13 @@ ae
ew
Fo
QC
Bo
Bo
Bo
Gs
Gs
Gs
tU
Bo
Bo
Bo
Gs
Gs
Gs
mw
Ra
GM
Expand Down Expand Up @@ -58940,13 +58912,13 @@ pq
ew
Ik
QC
Bo
Bo
Bo
Gs
Gs
Gs
tU
Bo
Bo
Bo
Gs
Gs
Gs
mw
UU
GM
Expand Down
8 changes: 7 additions & 1 deletion code/_onclick/item_attack.dm
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@
/obj/attackby(obj/item/attacking_item, mob/user, params)
return ..() || ((obj_flags & CAN_BE_HIT) && attacking_item.attack_atom(src, user, params))

/mob/living/attackby(obj/item/attacking_item, mob/living/user, params)
/mob/living/proc/can_perform_surgery(mob/living/user, params)
for(var/datum/surgery/operations as anything in surgeries)
if(user.istate & ISTATE_HARM)
break
Expand All @@ -166,6 +166,12 @@
var/list/modifiers = params2list(params)
if(operations.next_step(user, modifiers))
return TRUE
return FALSE


/mob/living/attackby(obj/item/attacking_item, mob/living/user, params)
if(can_perform_surgery(user, params))
return TRUE

if(..())
return TRUE
Expand Down
4 changes: 3 additions & 1 deletion code/controllers/subsystem/vote.dm
Original file line number Diff line number Diff line change
Expand Up @@ -206,7 +206,9 @@ SUBSYSTEM_DEF(vote)
if(vote_initiator)
to_chat(vote_initiator, span_warning("Invalid voting choice."))
return FALSE


if(!to_vote.player_startable)
return FALSE
// Vote can't be initiated in our circumstances? No vote
if(!to_vote.can_be_initiated(vote_initiator, unlimited_vote_power))
return FALSE
Expand Down
4 changes: 4 additions & 0 deletions code/datums/votes/_vote_datum.dm
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,8 @@

/// Multipliers donators get for this vote type
var/donator_multiplier = 0
// can we start this vote by a player
var/player_startable = TRUE

/**
* Used to determine if this vote is a possible
Expand Down Expand Up @@ -78,6 +80,8 @@
*/
/datum/vote/proc/can_be_initiated(mob/by_who, forced = FALSE)
SHOULD_CALL_PARENT(TRUE)
if(!player_startable)
return FALSE

if(started_time)
var/next_allowed_time = (started_time + CONFIG_GET(number/vote_delay))
Expand Down
9 changes: 7 additions & 2 deletions code/game/atoms.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1057,10 +1057,15 @@
/**
* Respond to an emag being used on our atom
*
* Default behaviour is to send [COMSIG_ATOM_EMAG_ACT] and return
* Args:
* * mob/user: The mob that used the emag. Nullable.
* * obj/item/card/emag/emag_card: The emag that was used. Nullable.
*
* Returns:
* TRUE if the emag had any effect, falsey otherwise.
*/
/atom/proc/emag_act(mob/user, obj/item/card/emag/emag_card)
SEND_SIGNAL(src, COMSIG_ATOM_EMAG_ACT, user, emag_card)
return (SEND_SIGNAL(src, COMSIG_ATOM_EMAG_ACT, user, emag_card))

/**
* Respond to narsie eating our atom
Expand Down
6 changes: 4 additions & 2 deletions code/game/machinery/announcement_system.dm
Original file line number Diff line number Diff line change
Expand Up @@ -176,8 +176,10 @@ GLOBAL_LIST_EMPTY(announcement_systems)
if(!(machine_stat & (NOPOWER|BROKEN)) && !(. & EMP_PROTECT_SELF))
act_up()

/obj/machinery/announcement_system/emag_act()
/obj/machinery/announcement_system/emag_act(mob/user, obj/item/card/emag/emag_card)
if(obj_flags & EMAGGED)
return
return FALSE
obj_flags |= EMAGGED
act_up()
balloon_alert(user, "announcement strings corrupted")
return TRUE
11 changes: 7 additions & 4 deletions code/game/machinery/barsigns.dm
Original file line number Diff line number Diff line change
Expand Up @@ -169,15 +169,18 @@ MAPPING_DIRECTIONAL_HELPERS(/obj/machinery/barsign, 32)

set_sign(sign)

/obj/machinery/barsign/emag_act(mob/user)
/obj/machinery/barsign/emag_act(mob/user, obj/item/card/emag/emag_card)
if(machine_stat & (NOPOWER|BROKEN|EMPED))
balloon_alert(user, "controls are unresponsive!")
return
return FALSE

balloon_alert(user, "illegal barsign loaded")
sleep(10 SECONDS)
set_sign(new /datum/barsign/hiddensigns/syndibarsign)
addtimer(CALLBACK(src, PROC_REF(finish_emag_act)), 10 SECONDS)
return TRUE

/// Timer proc, called after ~10 seconds after [emag_act], since [emag_act] returns a value and cannot sleep
/obj/machinery/barsign/proc/finish_emag_act()
set_sign(new /datum/barsign/hiddensigns/syndibarsign)

/obj/machinery/barsign/proc/pick_sign(mob/user)
var/picked_name = tgui_input_list(user, "Available Signage", "Bar Sign", sort_list(get_bar_names()))
Expand Down
8 changes: 4 additions & 4 deletions code/game/machinery/buttons.dm
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@
else
return ..()

/obj/machinery/button/emag_act(mob/user)
/obj/machinery/button/emag_act(mob/user, obj/item/card/emag/emag_card)
. = ..()
if(obj_flags & EMAGGED)
return
Expand All @@ -139,9 +139,9 @@

// The device inside can be emagged by swiping the button
// returning TRUE will prevent feedback (so we can do our own)
if(device?.emag_act(user))
return
balloon_alert(user, "access overridden")
if(!device?.emag_act(user, emag_card))
balloon_alert(user, "access overridden")
return TRUE

/obj/machinery/button/attack_ai(mob/user)
if(!silicon_access_disabled && !panel_open)
Expand Down
9 changes: 6 additions & 3 deletions code/game/machinery/computer/apc_control.dm
Original file line number Diff line number Diff line change
Expand Up @@ -27,12 +27,15 @@
return
..()

/obj/machinery/computer/apc_control/emag_act(mob/user)
/obj/machinery/computer/apc_control/emag_act(mob/user, obj/item/card/emag/emag_card)
if(obj_flags & EMAGGED)
return
return FALSE
obj_flags |= EMAGGED
usr.log_message("emagged [src].", LOG_ATTACK, color="red")
if (user)
user.log_message("emagged [src].", LOG_ATTACK, color="red")
balloon_alert(user, "access controller shorted")
playsound(src, SFX_SPARKS, 50, TRUE, SHORT_RANGE_SOUND_EXTRARANGE)
return TRUE

/obj/machinery/computer/apc_control/proc/log_activity(log_text)
if(!should_log)
Expand Down
Loading

0 comments on commit 1556c14

Please sign in to comment.