Skip to content

Commit

Permalink
Merge remote-tracking branch 'cmss13-devs/master' into project/ares/t…
Browse files Browse the repository at this point in the history
…m_holder
  • Loading branch information
realforest2001 committed Feb 27, 2024
2 parents 8d82a54 + a854bbb commit 2823478
Show file tree
Hide file tree
Showing 27 changed files with 28,378 additions and 28,148 deletions.
5 changes: 5 additions & 0 deletions code/__DEFINES/dropships.dm
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,8 @@
#define DROPSHIP_MIN_AUTO_DELAY 10 SECONDS
#define DROPSHIP_AUTO_RETRY_COOLDOWN 20 SECONDS
#define DROPSHIP_MEDEVAC_COOLDOWN 20 SECONDS

//Hatches states
#define SHUTTLE_DOOR_BROKEN -1
#define SHUTTLE_DOOR_UNLOCKED 0
#define SHUTTLE_DOOR_LOCKED 1
22 changes: 18 additions & 4 deletions code/game/area/almayer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -241,17 +241,23 @@
/area/almayer/shipboard/brig/armory
name = "\improper Brig Armory"

/area/almayer/shipboard/brig/main_office
name = "\improper Brig Main Office"
/area/almayer/shipboard/brig/mp_bunks
name = "\improper Brig MP Bunks"

/area/almayer/shipboard/brig/starboard_hallway
name = "\improper Brig Starboard Hallway"

/area/almayer/shipboard/brig/perma
name = "\improper Brig Perma Cells"

/area/almayer/shipboard/brig/cryo
name = "\improper Brig Cryo Pods"

/area/almayer/shipboard/brig/surgery
name = "\improper Brig Surgery"
/area/almayer/shipboard/brig/medical
name = "\improper Brig Medical"

/area/almayer/shipboard/brig/interrogation
name = "\improper Brig Interrogation Room"

/area/almayer/shipboard/brig/general_equipment
name = "\improper Brig General Equipment"
Expand All @@ -262,11 +268,15 @@
/area/almayer/shipboard/brig/execution
name = "\improper Brig Execution Room"

/area/almayer/shipboard/brig/execution_storage
name = "\improper Brig Execution Storage"

/area/almayer/shipboard/brig/cic_hallway
name = "\improper Brig CiC Hallway"

/area/almayer/shipboard/brig/dress
name = "\improper CIC Dress Uniform Room"

/area/almayer/shipboard/brig/processing
name = "\improper Brig Processing and Holding"

Expand All @@ -278,6 +288,10 @@
name = "\improper Brig Chief MP Office"
icon_state = "chiefmpoffice"

/area/almayer/shipboard/brig/warden_office
name = "\improper Brig Warden Office"
icon_state = "chiefmpoffice"

/area/almayer/shipboard/sea_office
name = "\improper Lower Deck Senior Enlisted Advisor Office"
icon_state = "chiefmpoffice"
Expand Down
48 changes: 48 additions & 0 deletions code/game/machinery/doors/multi_tile.dm
Original file line number Diff line number Diff line change
Expand Up @@ -241,10 +241,43 @@
no_panel = 1
not_weldable = 1
var/queen_pryable = TRUE
var/obj/docking_port/mobile/marine_dropship/linked_dropship


/obj/structure/machinery/door/airlock/multi_tile/almayer/dropshiprear/ex_act(severity)
return

/obj/structure/machinery/door/airlock/multi_tile/almayer/dropshiprear/attackby(obj/item/item, mob/user)
if(HAS_TRAIT(item, TRAIT_TOOL_MULTITOOL))
var/direction
switch(id)
if("starboard_door")
direction = "starboard"
if("port_door")
direction = "port"
if("aft_door")
direction = "aft"
if(!linked_dropship || !linked_dropship.door_control.door_controllers[direction])
return ..()
var/datum/door_controller/single/control = linked_dropship.door_control.door_controllers[direction]
if (control.status != SHUTTLE_DOOR_BROKEN)
return ..()
if(!skillcheck(user, SKILL_ENGINEER, SKILL_ENGINEER_ENGI))
to_chat(user, SPAN_WARNING("You don't seem to understand how to restore a remote connection to [src]."))
return
if(user.action_busy)
return

to_chat(user, SPAN_WARNING("You begin to restore the remote connection to [src]."))
if(!do_after(user, 5 SECONDS, INTERRUPT_ALL, BUSY_ICON_BUILD))
to_chat(user, SPAN_WARNING("You fail to restore a remote connection to [src]."))
return
unlock(TRUE)
close(FALSE)
control.status = SHUTTLE_DOOR_UNLOCKED
to_chat(user, SPAN_WARNING("You successfully restored the remote connection to [src]."))
return
..()

/obj/structure/machinery/door/airlock/multi_tile/almayer/dropshiprear/unlock()
if(is_reserved_level(z))
Expand All @@ -261,11 +294,26 @@
if(!locked)
return ..()

if(xeno.action_busy)
return

to_chat(xeno, SPAN_NOTICE("You try and force the doors open"))
if(do_after(xeno, 3 SECONDS, INTERRUPT_ALL, BUSY_ICON_HOSTILE))
unlock(TRUE)
open(1)
lock(TRUE)
var/direction
switch(id)
if("starboard_door")
direction = "starboard"
if("port_door")
direction = "port"
if("aft_door")
direction = "aft"
if(linked_dropship && linked_dropship.door_control.door_controllers[direction])
var/datum/door_controller/single/control = linked_dropship.door_control.door_controllers[direction]
control.status = SHUTTLE_DOOR_BROKEN


/obj/structure/machinery/door/airlock/multi_tile/almayer/dropshiprear/ds1
name = "\improper Alamo cargo door"
Expand Down
4 changes: 3 additions & 1 deletion code/game/objects/structures/barricade/barricade.dm
Original file line number Diff line number Diff line change
Expand Up @@ -387,7 +387,9 @@
update_health(-200)
playsound(src.loc, 'sound/items/Welder2.ogg', 25, TRUE)

welder = user.get_active_hand()
var/current_tool = user.get_active_hand()
if(current_tool != welder)
return TRUE // Swapped hands or tool
if(repeat && can_weld(welder, user, silent = TRUE))
// Assumption: The implementation of can_weld will return false if fully repaired
if(!try_weld_cade(welder, user, repeat = TRUE, skip_check = TRUE))
Expand Down
1 change: 1 addition & 0 deletions code/modules/admin/admin_verbs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -272,6 +272,7 @@ GLOBAL_LIST_INIT(admin_mob_event_verbs_hideable, list(

//verbs which can be hidden - needs work
GLOBAL_LIST_INIT(admin_verbs_hideable, list(
/client/proc/cmd_assume_direct_control,
/client/proc/release,
/client/proc/possess,
/client/proc/callproc_datum,
Expand Down
4 changes: 2 additions & 2 deletions code/modules/admin/verbs/debug.dm
Original file line number Diff line number Diff line change
Expand Up @@ -117,8 +117,8 @@
var/datum/space_level/cur_level = SSmapping.z_list[cur_z]
cur_x += cur_level.bounds[MAP_MINX] - 1
cur_y += cur_level.bounds[MAP_MINY] - 1
width = cur_level.bounds[MAP_MAXX] - cur_level.bounds[MAP_MINX] - half_chunk_size + 1
height = cur_level.bounds[MAP_MAXY] - cur_level.bounds[MAP_MINY] - half_chunk_size + 1
width = cur_level.bounds[MAP_MAXX] - cur_level.bounds[MAP_MINX] - half_chunk_size + 3
height = cur_level.bounds[MAP_MAXY] - cur_level.bounds[MAP_MINY] - half_chunk_size + 3
else
width = world.maxx - half_chunk_size + 2
height = world.maxy - half_chunk_size + 2
Expand Down
3 changes: 3 additions & 0 deletions code/modules/cm_aliens/XenoStructures.dm
Original file line number Diff line number Diff line change
Expand Up @@ -578,6 +578,9 @@
if(current_mob.stat == DEAD)
return FALSE

if(HAS_TRAIT(current_mob, TRAIT_NESTED))
return FALSE

var/turf/current_turf
var/turf/last_turf = loc
var/atom/temp_atom = new acid_type()
Expand Down
2 changes: 1 addition & 1 deletion code/modules/shuttle/computers/escape_pod_computer.dm
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@
.["docking_status"] = STATE_LAUNCHED
var/obj/structure/machinery/door/door = shuttle.door_handler.doors[1]
.["door_state"] = door.density
.["door_lock"] = shuttle.door_handler.is_locked
.["door_lock"] = shuttle.door_handler.status == SHUTTLE_DOOR_LOCKED
.["can_delay"] = TRUE//launch_status[2]
.["launch_without_evac"] = launch_without_evac

Expand Down
7 changes: 4 additions & 3 deletions code/modules/shuttle/dropship_hijack.dm
Original file line number Diff line number Diff line change
Expand Up @@ -176,13 +176,14 @@
turfs += get_area_turfs(/area/almayer/shipboard/brig/cic_hallway)
turfs += get_area_turfs(/area/almayer/shipboard/brig/cryo)
turfs += get_area_turfs(/area/almayer/shipboard/brig/evidence_storage)
turfs += get_area_turfs(/area/almayer/shipboard/brig/execution)
turfs += get_area_turfs(/area/almayer/shipboard/brig/general_equipment)
turfs += get_area_turfs(/area/almayer/shipboard/brig/lobby)
turfs += get_area_turfs(/area/almayer/shipboard/brig/main_office)
turfs += get_area_turfs(/area/almayer/shipboard/brig/starboard_hallway)
turfs += get_area_turfs(/area/almayer/shipboard/brig/perma)
turfs += get_area_turfs(/area/almayer/shipboard/brig/processing)
turfs += get_area_turfs(/area/almayer/shipboard/brig/surgery)
turfs += get_area_turfs(/area/almayer/shipboard/brig/medical)
turfs += get_area_turfs(/area/almayer/shipboard/brig/mp_bunks)
turfs += get_area_turfs(/area/almayer/shipboard/brig/chief_mp_office)
turfs += get_area_turfs(/area/almayer/command/cichallway)
turfs += get_area_turfs(/area/almayer/command/cic)
if("Upper deck Midship")
Expand Down
28 changes: 17 additions & 11 deletions code/modules/shuttle/helpers.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
if(!door_controllers[direction])
var/datum/door_controller/single/new_controller = new()
new_controller.label = label
new_controller.is_locked = FALSE
new_controller.status = SHUTTLE_DOOR_UNLOCKED
door_controllers[direction] = new_controller

var/datum/door_controller/single/controller = door_controllers[direction]
Expand All @@ -29,12 +29,12 @@
if(direction == "all")
for(var/i in door_controllers)
var/datum/door_controller/single/control = door_controllers[i]
if(!control.is_locked)
if(control.status != SHUTTLE_DOOR_LOCKED)
return FALSE
return TRUE
if(door_controllers[direction])
var/datum/door_controller/single/single_controller = door_controllers[direction]
return single_controller.is_locked
return single_controller.status == SHUTTLE_DOOR_LOCKED
else
WARNING("Direction [direction] does not exist.")
return FALSE
Expand All @@ -60,9 +60,9 @@

for(var/direction in door_controllers)
var/datum/door_controller/single/controller = door_controllers[direction]
var/list/door_data = list("id" = direction, "value" = controller.is_locked)
var/list/door_data = list("id" = direction, "value" = controller.status)
. += list(door_data)
if(!controller.is_locked)
if(controller.status == SHUTTLE_DOOR_UNLOCKED)
all_locked = FALSE

var/list/door_data = list("id" = "all", "value" = all_locked)
Expand All @@ -74,7 +74,7 @@
/datum/door_controller/single
var/label = "dropship"
var/list/doors = list()
var/is_locked = FALSE
var/status = SHUTTLE_DOOR_UNLOCKED

/datum/door_controller/single/Destroy(force, ...)
. = ..()
Expand All @@ -93,23 +93,29 @@
if("close")
INVOKE_ASYNC(door, TYPE_PROC_REF(/obj/structure/machinery/door/airlock, close))
if("force-lock")
if (status == SHUTTLE_DOOR_BROKEN)
continue
INVOKE_ASYNC(src, PROC_REF(lockdown_door), door)
is_locked = TRUE
status = SHUTTLE_DOOR_LOCKED
if("lock")
INVOKE_ASYNC(door, TYPE_PROC_REF(/obj/structure/machinery/door/airlock, lock))
is_locked = TRUE
if (status != SHUTTLE_DOOR_BROKEN)
status = SHUTTLE_DOOR_LOCKED
if("unlock")
INVOKE_ASYNC(door, TYPE_PROC_REF(/obj/structure/machinery/door/airlock, unlock))
is_locked = FALSE
if (status != SHUTTLE_DOOR_BROKEN)
status = SHUTTLE_DOOR_UNLOCKED
if("force-lock-launch")
if(asynchronous)
INVOKE_ASYNC(src, PROC_REF(lockdown_door_launch), door)
else
lockdown_door_launch(door)
is_locked = TRUE
if (status != SHUTTLE_DOOR_BROKEN)
status = SHUTTLE_DOOR_LOCKED
if("force-unlock")
INVOKE_ASYNC(src, PROC_REF(force_lock_open_door), door)
is_locked = FALSE
if (status != SHUTTLE_DOOR_BROKEN)
status = SHUTTLE_DOOR_UNLOCKED
else
CRASH("Unknown door command [action]")

Expand Down
3 changes: 3 additions & 0 deletions code/modules/shuttle/shuttles/dropship.dm
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,9 @@
door_control.add_door(air, "port")
if("aft_door")
door_control.add_door(air, "aft")
var/obj/structure/machinery/door/airlock/multi_tile/almayer/dropshiprear/hatch = air
if(istype(hatch))
hatch.linked_dropship = src

RegisterSignal(src, COMSIG_DROPSHIP_ADD_EQUIPMENT, PROC_REF(add_equipment))
RegisterSignal(src, COMSIG_DROPSHIP_REMOVE_EQUIPMENT, PROC_REF(remove_equipment))
Expand Down
5 changes: 0 additions & 5 deletions html/changelogs/AutoChangeLog-pr-3642.yml

This file was deleted.

7 changes: 0 additions & 7 deletions html/changelogs/AutoChangeLog-pr-5681.yml

This file was deleted.

7 changes: 0 additions & 7 deletions html/changelogs/AutoChangeLog-pr-5698.yml

This file was deleted.

6 changes: 6 additions & 0 deletions html/changelogs/AutoChangeLog-pr-5723.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
author: "LTNTS"
delete-after: True
changes:
- rscadd: "brig areas: warden office, MP bunks, starboard hallway, interrogation room, evidence storage"
- spellcheck: "changes brig surgery to brig medical"
- code_imp: "removed some brig areas from hijack, added other brig areas"
4 changes: 0 additions & 4 deletions html/changelogs/AutoChangeLog-pr-5738.yml

This file was deleted.

6 changes: 0 additions & 6 deletions html/changelogs/AutoChangeLog-pr-5749.yml

This file was deleted.

4 changes: 0 additions & 4 deletions html/changelogs/AutoChangeLog-pr-5759.yml

This file was deleted.

4 changes: 0 additions & 4 deletions html/changelogs/AutoChangeLog-pr-5800.yml

This file was deleted.

4 changes: 0 additions & 4 deletions html/changelogs/AutoChangeLog-pr-5804.yml

This file was deleted.

4 changes: 4 additions & 0 deletions html/changelogs/AutoChangeLog-pr-5807.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
author: "SabreML"
delete-after: True
changes:
- bugfix: "Fixed acid pillars shooting nested marines."
4 changes: 4 additions & 0 deletions html/changelogs/AutoChangeLog-pr-5808.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
author: "ihatethisengine"
delete-after: True
changes:
- balance: "Pried open dropship hatches cannot be remotely locked anymore"
4 changes: 4 additions & 0 deletions html/changelogs/AutoChangeLog-pr-5814.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
author: "Drathek"
delete-after: True
changes:
- bugfix: "Fixed the Mass Screenshot Debug verb bounds"
4 changes: 4 additions & 0 deletions html/changelogs/AutoChangeLog-pr-5827.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
author: "Birdtalon"
delete-after: True
changes:
- bugfix: "Admin verbs - Hide will now hide Control Mob verb"
Loading

0 comments on commit 2823478

Please sign in to comment.