Skip to content

Commit f9f6ad8

Browse files
MistakeNot4892atlantisczewoody41
committed
Updating Cynosure branch to compile on current Neb dev.
Work on getting the Cynosure map to playable state. This is a squash of multiple commits, important changes are listed below: - Fixes roundstart power, and in general improves the power system by using a code-defined SMES presets for each function. Modifies SMES code to not include an extra coil in every SMES. - Fixes networking/telecommunications. Currently has a form of small room next to the Site Administrator's office (where SA's private bathroom was) with all the necessary equipment. This may be relocated to a more permanent place in the future. Also maps in bunch of relays all around the station (these are like WiFi antennas for pretty much everything) - Copies over telecommunication channels from the Exodus map (may be modified in the future, if needed). Radios now work. - Removes the telecommunications satellite Z level altogether, as it is completely incompatible with the new networking and radio system. - Fixes inability to late-join by mapping in Arrivals landmarks. Currently not using the original moving shuttle, instead you spawn next to the airlock where the shuttle docked. - Reactor cold loop is no longer 'accidentally' connected to the station's distribution loop via a misplaced valve. While this was indeed a very innovative and effective central heating solution, staff has complained of 1000°C air coming out of vents. - Drops outdoor temperature to -5°C - Refactors all on-station areas to follow a common naming scheme - /area/cynosure/(type/department)/(floor)/(area name) - Replace substation scrubber valves with open variants - Fix leaking pipes in Research, which tripped the shutoff valves - Fix probably all airlocks on the station - Fix/Setup the Cargo, Emergency and Escape Pod shuttles. Area permissions, new areas icons (#2) * Fixed secure access for all departments, added new access operator: Opion to unsecure areas inside secure areas * Added missing new icon file * fixed access for jobs, added job overrides for cynosure * fixed access merge * fixed prison access * Merged job overrides to one file Ore box + Unloader fix - Fix unloader not updating ore box on-examine contents when removing ores - Tweak ore box examine to skip ores that have 0 pieces contained in the box. Assorted cynosure map fixes - Fix miners not having access to their own locker room - Remapped refinery room to use the new machines - Added assorted circuit boards to tech storage - Fix atmospherics holding tank computers as well as the supermatter computer not being linked to their vents/injectors/sensors. Fixed signs and lights (#3) Shutter and button fixes (#4) * Fixed signs and lights * Shutter fixes, directional signs fixes, surgery holosign fixes, blast door button fixes Updating Cynosure to compile on current Neb. Co-authored-by: Atlantis <[email protected]> Co-authored-by: woody41 <[email protected]>
1 parent e5acc4e commit f9f6ad8

File tree

149 files changed

+415893
-434
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

149 files changed

+415893
-434
lines changed
Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,30 @@
11
/**Define a poster's decl and its mapper type */
22
#define DEFINE_POSTER(TYPENAME, ICONSTATE, NAME, DESC)\
33
/decl/poster_design/##TYPENAME{name = NAME; desc = DESC; icon_state = ICONSTATE;};\
4-
/obj/structure/sign/poster/##TYPENAME{poster_design = /decl/poster_design/##TYPENAME; name = NAME; icon_state = ICONSTATE;};
4+
/obj/structure/sign/poster/##TYPENAME{poster_design = /decl/poster_design/##TYPENAME; name = NAME; icon_state = ICONSTATE;};
5+
6+
// Defines an escape pod shuttle datum and all relevant landmarks.
7+
#define DEFINE_ESCAPE_POD(NAME, ID) \
8+
/datum/shuttle/autodock/ferry/escape_pod/pod_##ID { \
9+
shuttle_area = /area/shuttle/escape_pod_##ID; \
10+
name = "Escape Pod " + #NAME; \
11+
dock_target = "escape_pod_" + #ID; \
12+
arming_controller = "escape_pod_"+ #ID +"_berth"; \
13+
waypoint_station = "escape_pod_"+ #ID +"_start"; \
14+
landmark_transition = "escape_pod_"+ #ID +"_transit"; \
15+
waypoint_offsite = "escape_pod_"+ #ID +"_out"; \
16+
} \
17+
/obj/effect/shuttle_landmark/escape_pod/start/pod_##ID { \
18+
landmark_tag = "escape_pod_"+ #ID +"_start"; \
19+
docking_controller = "escape_pod_"+ #ID +"_berth"; \
20+
} \
21+
/obj/effect/shuttle_landmark/escape_pod/transit/pod_##ID { \
22+
landmark_tag = "escape_pod_"+ #ID +"_transit"; \
23+
} \
24+
/obj/effect/shuttle_landmark/escape_pod/out/pod_##ID { \
25+
landmark_tag = "escape_pod_"+ #ID +"_out"; \
26+
} \
27+
/area/shuttle/escape_pod_##ID { \
28+
name = "Escape Pod " + #NAME; \
29+
area_flags = AREA_FLAG_RAD_SHIELDED | AREA_FLAG_ION_SHIELDED | AREA_FLAG_IS_NOT_PERSISTENT; \
30+
}

code/__defines/guns.dm

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
#define SPEEDLOADER 2 //Transfers casings from the mag to the gun when used.
2525
#define MAGAZINE 4 //The magazine item itself goes inside the gun
2626

27-
2827
#define GUN_BULK_RIFLE 5
2928

3029
#define BULLET_IMPACT_NONE "none"

code/game/area/area_access.dm

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
/area
22
var/list/req_access = list()
33
var/secure = FALSE // unsecure areas will have doors between them use access diff; secure ones use union.
4+
var/override_unlock = FALSE // TRUE will override area and will be always unlocked. This is e.g. for restrooms inside secure areas, surgery observation room etc.
45

56
// Given two areas, find the minimal req_access needed such that (return value) + (area access) >= (other area access) and vice versa
67
/proc/req_access_diff(area/first, area/second)

code/game/jobs/access_datum.dm

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,12 @@ var/global/const/access_tox_storage = "ACCESS_TOX_STORAGE" //8
5858
desc = "Toxins Lab"
5959
region = ACCESS_REGION_RESEARCH
6060

61+
var/global/const/access_warden = "ACCESS_WARDEN" //9
62+
/datum/access/warden
63+
id = access_warden
64+
desc = "Warden Office"
65+
region = ACCESS_REGION_SECURITY
66+
6167
var/global/const/access_engine = "ACCESS_ENGINEERING" //10
6268
/datum/access/engine
6369
id = access_engine
@@ -268,12 +274,6 @@ var/global/const/access_research = "ACCESS_RESEARCH" //47
268274
desc = "Science"
269275
region = ACCESS_REGION_RESEARCH
270276

271-
var/global/const/access_explorer = "ACCESS_EXPLORER"
272-
/datum/access/explorer
273-
id = access_explorer
274-
desc = "Explorer"
275-
region = ACCESS_REGION_GENERAL
276-
277277
var/global/const/access_mining = "ACCESS_MINING" //48
278278
/datum/access/mining
279279
id = access_mining
@@ -310,12 +310,6 @@ var/global/const/access_xenobiology = "ACCESS_XENOBIO" //55
310310
desc = "Xenobiology Lab"
311311
region = ACCESS_REGION_RESEARCH
312312

313-
var/global/const/access_xenofauna = "ACCESS_XENOFAUNA"
314-
/datum/access/xenofauna
315-
id = access_xenofauna
316-
desc = "Xenfauna Lab"
317-
region = ACCESS_REGION_RESEARCH
318-
319313
var/global/const/access_ce = "ACCESS_CHIEF_ENGINEER" //56
320314
/datum/access/ce
321315
id = access_ce

code/game/machinery/alarm.dm

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1123,3 +1123,15 @@ FIRE ALARM
11231123

11241124
if(. == TOPIC_REFRESH)
11251125
interact(user)
1126+
1127+
/obj/machinery/alarm/outside/Initialize(mapload, dir)
1128+
..()
1129+
return INITIALIZE_HINT_LATELOAD
1130+
1131+
// TODO: Automatically set to expected exterior conditions.
1132+
/*
1133+
/obj/machinery/alarm/outside/LateInitialize()
1134+
. = ..()
1135+
if(isatom(loc) && loc.z)
1136+
var/datum/level_data/level = SSmapping.levels_by_z[loc.z]
1137+
*/

code/game/machinery/atmoalter/canister.dm

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -82,10 +82,11 @@
8282
start_gas = /decl/material/gas/hydrogen
8383

8484
/obj/machinery/portable_atmospherics/canister/phoron
85-
name = "\improper Canister \[Phoron\]"
86-
icon_state = "orange"
87-
canister_color = "orange"
88-
can_label = 0
85+
name = "phoron canister"
86+
icon_state = "purple"
87+
canister_color = "purple"
88+
can_label = FALSE
89+
start_gas = /decl/material/solid/phoron
8990

9091
/obj/machinery/portable_atmospherics/canister/carbon_dioxide
9192
name = "\improper CO2 canister"

code/game/machinery/cryopod.dm

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,8 @@
4848
storage_name = "Robotic Storage Control"
4949
allow_items = 0
5050

51+
/obj/machinery/computer/cryopod/checkpoint
52+
5153
/obj/machinery/computer/cryopod/interface_interact(mob/user)
5254
interact(user)
5355
return TRUE
@@ -207,6 +209,8 @@
207209
allow_occupant_types = list(/mob/living/silicon/robot,/mob/living/human)
208210
disallow_occupant_types = list(/mob/living/silicon/robot/drone)
209211

212+
/obj/machinery/cryopod/robot/door/checkpoint
213+
210214
/obj/machinery/cryopod/robot/door/dorms
211215
name = "Residential District Elevator"
212216
desc = "A small elevator that goes down to the deeper section of the colony."

code/game/machinery/doors/_door.dm

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -574,6 +574,8 @@
574574

575575
if (!fore && !aft)
576576
return list()
577+
else if (fore.override_unlock || aft.override_unlock)
578+
return list()
577579
else if (fore.secure || aft.secure)
578580
return req_access_union(fore, aft)
579581
else

code/game/machinery/doors/firedoor.dm

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -481,3 +481,5 @@
481481
if(istype(destination) && destination.simulated)
482482
SSair.mark_for_update(destination)
483483
return TRUE
484+
485+
/obj/machinery/door/firedoor/border_only

code/game/machinery/portable_turret.dm

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
power_channel = EQUIP //drains power from the EQUIPMENT channel
2020
max_health = 80
2121

22+
var/incoming_damage_multiplier = 1
23+
2224
var/raised = 0 //if the turret cover is "open" and the turret is raised
2325
var/raising= 0 //if the turret is currently opening or closing its cover
2426
var/auto_repair = 0 //if 1 the turret slowly repairs itself.
@@ -289,7 +291,7 @@ var/global/list/turret_icons
289291

290292
else
291293
//if the turret was attacked with the intention of harming it:
292-
var/force = used_item.expend_attack_force(user) * 0.5
294+
var/force = used_item.expend_attack_force(user) * 0.5 * incoming_damage_multiplier
293295
user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN)
294296
take_damage(force, used_item.atom_damage_type)
295297
if(force > 1) //if the force of impact dealt at least 1 damage, the turret gets pissed off
@@ -327,7 +329,7 @@ var/global/list/turret_icons
327329
die() //the death process :(
328330

329331
/obj/machinery/porta_turret/bullet_act(obj/item/projectile/Proj)
330-
var/damage = Proj.get_structure_damage()
332+
var/damage = Proj.get_structure_damage() * incoming_damage_multiplier
331333

332334
if(!damage)
333335
return
@@ -600,9 +602,6 @@ var/global/list/turret_icons
600602
/atom/movable/porta_turret_cover
601603
icon = 'icons/obj/turrets.dmi'
602604

603-
604-
605-
606605
#undef TURRET_PRIORITY_TARGET
607606
#undef TURRET_SECONDARY_TARGET
608607
#undef TURRET_NOT_TARGET

0 commit comments

Comments
 (0)