Skip to content

Commit

Permalink
Merge branch 'master' into ouerea
Browse files Browse the repository at this point in the history
  • Loading branch information
RustingWithYou committed May 6, 2024
2 parents 6d2af09 + 5b830b5 commit 6d0cb7e
Show file tree
Hide file tree
Showing 106 changed files with 83,758 additions and 69,318 deletions.
5 changes: 4 additions & 1 deletion aurorastation.dme
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,7 @@
#include "code\__DEFINES\dcs\signals\signals_record.dm"
#include "code\__DEFINES\dcs\signals\signals_spatial_grid.dm"
#include "code\__DEFINES\dcs\signals\signals_subsystem.dm"
#include "code\__DEFINES\dcs\signals\signals_turf.dm"
#include "code\__DEFINES\dcs\signals\signals_atom\signals_atom_main.dm"
#include "code\__DEFINES\dcs\signals\signals_atom\signals_atom_movable.dm"
#include "code\__DEFINES\dcs\signals\signals_atom\signals_atom_movement.dm"
Expand Down Expand Up @@ -1258,6 +1259,7 @@
#include "code\game\objects\items\weapons\implants\implants\emp.dm"
#include "code\game\objects\items\weapons\implants\implants\explosive.dm"
#include "code\game\objects\items\weapons\implants\implants\freedom.dm"
#include "code\game\objects\items\weapons\implants\implants\galatean.dm"
#include "code\game\objects\items\weapons\implants\implants\health_tracker.dm"
#include "code\game\objects\items\weapons\implants\implants\loyalty.dm"
#include "code\game\objects\items\weapons\implants\implants\mindshield.dm"
Expand Down Expand Up @@ -3753,9 +3755,10 @@
#include "maps\away\away_site\abandoned_diner\abandoned_diner.dm"
#include "maps\away\away_site\abandoned_diner\abandoned_diner_areas.dm"
#include "maps\away\away_site\abandoned_diner\abandoned_diner_landmarks.dm"
#include "maps\away\away_site\abandoned_industrial\abandoned_industrial_station.dm"
#include "maps\away\away_site\abandoned_industrial\abandoned_industrial_station_.dm"
#include "maps\away\away_site\abandoned_industrial\abandoned_industrial_station_areas.dm"
#include "maps\away\away_site\abandoned_industrial\abandoned_industrial_station_items.dm"
#include "maps\away\away_site\abandoned_industrial\abandoned_industrial_station_landmarks.dm"
#include "maps\away\away_site\abandoned_mining\cursed.dm"
#include "maps\away\away_site\abandoned_propellant_depot\abandoned_propellant_depot_.dm"
#include "maps\away\away_site\abandoned_propellant_depot\abandoned_propellant_depot_areas.dm"
Expand Down
10 changes: 5 additions & 5 deletions code/__DEFINES/chemistry.dm
Original file line number Diff line number Diff line change
Expand Up @@ -107,15 +107,15 @@
#define INTOX_DEATH 0.45

//How many units of intoxication to remove per second
#define INTOX_FILTER_HEALTHY 0.10
#define INTOX_FILTER_BRUISED 0.07
#define INTOX_FILTER_DAMAGED 0.03
#define INTOX_FILTER_HEALTHY 0.015
#define INTOX_FILTER_BRUISED 0.007
#define INTOX_FILTER_DAMAGED 0.003

#define BASE_DIZZY 50 //Base dizziness from getting drunk.
#define DIZZY_ADD_SCALE 15 //Amount added for every 0.01 percent over the JUDGEIMP limit

#define BASE_VOMIT_CHANCE 10 //Base chance
#define VOMIT_CHANCE_SCALE 2.5 //Percent change added for every 0.01 percent over the VOMIT limit
#define BASE_VOMIT_CHANCE 1 //Base chance
#define VOMIT_CHANCE_SCALE 1 //Percent change added for every 0.01 percent over the VOMIT limit

#define REAGENTS_FREE_SPACE(R) (R.maximum_volume - R.total_volume)

Expand Down
2 changes: 2 additions & 0 deletions code/__DEFINES/dcs/signals/signals_atom/signals_atom_main.dm
Original file line number Diff line number Diff line change
Expand Up @@ -16,3 +16,5 @@
#define COMPONENT_ATOM_BLOCK_EXIT (1<<0)
///from base of atom/Exited(): (atom/movable/gone, direction)
#define COMSIG_ATOM_EXITED "atom_exited"
///from base of atom/has_gravity(): (turf/location, list/forced_gravities)
#define COMSIG_ATOM_HAS_GRAVITY "atom_has_gravity"
6 changes: 6 additions & 0 deletions code/__DEFINES/dcs/signals/signals_turf.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
// Turf signals. Format:
// When the signal is called: (signal arguments)
// All signals send the source datum of the signal as the first argument

///from base of atom/has_gravity(): (atom/asker, list/forced_gravities)
#define COMSIG_TURF_HAS_GRAVITY "turf_has_gravity"
10 changes: 10 additions & 0 deletions code/__DEFINES/traits.dm
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,7 @@
// common trait sources
#define TRAIT_GENERIC "generic"
#define GENERIC_ITEM_TRAIT "generic_item"
#define DISABILITY_TRAIT "disability"

/// cannot be removed without admin intervention
#define ROUNDSTART_TRAIT "roundstart"
Expand Down Expand Up @@ -174,3 +175,12 @@

/// Traits given by psionics.
#define TRAIT_SOURCE_PSIONICS "psionics"


// DISABILITY TRAITS

/// Causes the mob to take twice as long to clot their wounds
#define TRAIT_DISABILITY_HEMOPHILIA "disability_hemophilia"

/// Causes the mob to never clot their wounds
#define TRAIT_DISABILITY_HEMOPHILIA_MAJOR "disability_hemophilia_major"
2 changes: 1 addition & 1 deletion code/__HELPERS/paths/path.dm
Original file line number Diff line number Diff line change
Expand Up @@ -336,7 +336,7 @@
src.thrown = !!construct_from.throwing

src.anchored = construct_from.anchored
src.has_gravity = has_gravity(construct_from)
src.has_gravity = construct_from.has_gravity()
if(ismob(construct_from))
var/mob/living/mob_construct = construct_from
src.incapacitated = mob_construct.incapacitated()
Expand Down
22 changes: 8 additions & 14 deletions code/game/area/areas.dm
Original file line number Diff line number Diff line change
Expand Up @@ -48,9 +48,14 @@ var/global/list/area_blurb_stated_to = list()
var/oneoff_light = 0
var/oneoff_environ = 0

///Boolean, if this area has gravity
var/has_gravity = TRUE
var/alwaysgravity = 0
var/nevergravity = 0

///Boolean, if this area always has gravity
var/alwaysgravity = FALSE

///Boolean, if this area never has gravity
var/nevergravity = FALSE

var/list/all_doors = list() //Added by Strumpetplaya - Alarm Change - Contains a list of doors adjacent to this area
var/air_doors_activated = FALSE
Expand Down Expand Up @@ -390,24 +395,13 @@ var/list/mob/living/forced_ambiance_list = new
for(var/obj/machinery/door/window/temp_windoor in src)
temp_windoor.open()

/area/proc/has_gravity()
/area/has_gravity(turf/gravity_turf)
if(alwaysgravity)
return TRUE
if(nevergravity)
return FALSE
return has_gravity

/area/space/has_gravity()
return 0

/proc/has_gravity(atom/AT, turf/T)
if(!T)
T = get_turf(AT)
var/area/A = get_area(T)
if(A && A.has_gravity())
return 1
return 0

//A useful proc for events.
//This returns a random area of the station which is meaningful. Ie, a room somewhere
/proc/random_station_area(var/filter_players = FALSE)
Expand Down
34 changes: 34 additions & 0 deletions code/game/atom/_atom.dm
Original file line number Diff line number Diff line change
Expand Up @@ -141,6 +141,40 @@
/atom/Exited(atom/movable/gone, direction)
SEND_SIGNAL(src, COMSIG_ATOM_EXITED, gone, direction)

/**
* Returns true if this atom has gravity for the passed in turf
*
* Sends signals [COMSIG_ATOM_HAS_GRAVITY] and [COMSIG_TURF_HAS_GRAVITY], both can force gravity with
* the forced gravity var.
*
* micro-optimized to hell because this proc is very hot, being called several times per movement every movement.
*
* This is slightly different from TG's version due to Aurora reasons.
*/
/atom/proc/has_gravity(turf/gravity_turf)
if(!isturf(gravity_turf))
gravity_turf = get_turf(src)

if(!gravity_turf)//no gravity in nullspace
return FALSE

var/list/forced_gravity = list()
SEND_SIGNAL(src, COMSIG_ATOM_HAS_GRAVITY, gravity_turf, forced_gravity)
SEND_SIGNAL(gravity_turf, COMSIG_TURF_HAS_GRAVITY, src, forced_gravity)
if(length(forced_gravity))
var/positive_grav = max(forced_gravity)
var/negative_grav = min(min(forced_gravity), 0) //negative grav needs to be below or equal to 0

//our gravity is sum of the most massive positive and negative numbers returned by the signal
//so that adding two forced_gravity elements with an effect size of 1 each doesnt add to 2 gravity
//but negative force gravity effects can cancel out positive ones

return (positive_grav + negative_grav)

var/area/turf_area = gravity_turf.loc

return turf_area.has_gravity()

/**
* This proc is used for telling whether something can pass by this atom in a given direction, for use by the pathfinding system.
*
Expand Down
1 change: 1 addition & 0 deletions code/game/machinery/vending_types.dm
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,7 @@
/obj/item/reagent_containers/food/drinks/bottle/twentytwoseventyfive = 3,
/obj/item/reagent_containers/food/drinks/bottle/saintjacques = 1,
/obj/item/reagent_containers/food/drinks/bottle/hooch = 1,
/obj/item/reagent_containers/food/drinks/bottle/nemiik = 2,
/obj/item/reagent_containers/food/drinks/cans/grape_juice = 6,
/obj/item/reagent_containers/food/drinks/cans/beetle_milk = 2,
/obj/item/reagent_containers/food/drinks/cans/sodawater = 15,
Expand Down
6 changes: 6 additions & 0 deletions code/game/objects/items/trash.dm
Original file line number Diff line number Diff line change
Expand Up @@ -400,3 +400,9 @@
/obj/item/trash/papad/apple
icon_state = "papadapple_trash"

/obj/item/trash/bowl_small
name = "small bowl"
desc = "A side dish used to live here, but then it moved out."
icon_state = "small_bowl"
drop_sound = 'sound/items/drop/glass.ogg'
pickup_sound = 'sound/items/pickup/glass.ogg'
14 changes: 14 additions & 0 deletions code/game/objects/items/weapons/circuitboards/machinery/ship.dm
Original file line number Diff line number Diff line change
Expand Up @@ -115,3 +115,17 @@
"/obj/item/stack/cable_coil" = 30,
"/obj/item/bluespace_crystal" = 1
)

/obj/item/circuitboard/shipsensors/relay
name = T_BOARD("S-24 Beacon sensor array")
build_path = /obj/machinery/shipsensors/strong/relay
origin_tech = list(TECH_POWER = 6, TECH_ENGINEERING = 8, TECH_BLUESPACE = 5)
req_components = list(
"/obj/item/stock_parts/subspace/ansible" = 1,
"/obj/item/stock_parts/subspace/filter" = 1,
"/obj/item/stock_parts/subspace/treatment" = 1,
"/obj/item/stock_parts/subspace/analyzer" = 1,
"/obj/item/stock_parts/manipulator" = 6,
"/obj/item/stock_parts/scanning_module" = 3,
"/obj/item/stack/cable_coil" = 30
)
36 changes: 36 additions & 0 deletions code/game/objects/items/weapons/implants/implants/galatean.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
// GALATEAN BIOAUGMENTATIONS
// the weird, uncomfortable places where meat meets metal

/obj/item/implant/export_lasgun
name = "bioelectrical conduit"
desc = "A Galatean bioaugmentation that channels the innate bioelectricity of the human nervous system. Use of this augment against the terms of its packaging are a violation of Galatean law."
icon_state = "implant_excel"
implant_icon = "excel"
implant_color = "#ffd079"
origin_tech = list(TECH_MATERIAL = 1, TECH_BIO = 2, TECH_ILLEGAL = 3)
default_action_type = null
known = TRUE

/obj/item/implant/export_lasgun/get_data()
. = {"
<b>Implant Specifications:</b><BR>
<b>Name:</b> Planetary Weapons Development Bureau Bioelectricity Conduit, Export-Model <BR>
<b>Life:</b> Six years.<BR>
<b>Important Notes:</b> Personnel injected with this device can operate certain approved models of laser weapon without side effects..<BR>
<HR>
<b>Implant Details:</b><BR>
<b>Function:</b> Conducts the body's electricity into usable forms of electricity for Galatean export-model weaponry.<BR>
<b>Integrity:</b> Implant will last for a period of six standard years, after which it will degrade and require removal."}

/obj/item/implant/export_lasgun/implanted(mob/M)
to_chat(M, SPAN_GOOD("Static dances across your skin."))
if(ishuman(M))
return TRUE

/obj/item/implantcase/export_lasgun
name = "glass case - 'bioconduit'"
imp = /obj/item/implant/export_lasgun

/obj/item/implanter/export_lasgun
name = "implanter-bioconductor"
imp = /obj/item/implant/export_lasgun
11 changes: 11 additions & 0 deletions code/game/objects/items/weapons/power_cells.dm
Original file line number Diff line number Diff line change
Expand Up @@ -211,3 +211,14 @@
. = ..()
charge = 0
update_icon()

/obj/item/cell/hydrogen
name = "hydrogen blaster canister"
desc = "An industrial-grade hydrogen power cell, used in various blaster weapons- or blaster-adjacent power tools- in place of expensive phoron."
icon_state = "hycell"
maxcharge = 10000 // hydrogen is actually used today in electric cars
matter = list(DEFAULT_WALL_MATERIAL = 700, MATERIAL_GLASS = 70)
w_class = ITEMSIZE_SMALL
drop_sound = 'sound/items/drop/gascan.ogg'
pickup_sound = 'sound/items/pickup/gascan.ogg'
origin_tech = list(TECH_POWER = 4)
17 changes: 17 additions & 0 deletions code/modules/background/space_sectors/badlands.dm
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,23 @@
sector_hud_menu_sound = 'sound/effects/menu_click_heavy.ogg'
sector_hud_arrow = "menu_arrow"

lore_radio_stations = list(
"34.2 The Voice of the Tajaran People" = 'texts/lore_radio/adhomai/34.2_The_Voice_of_the_Tajaran_People.txt',
"14.6 Northern Harr'masir Radio" = 'texts/lore_radio/adhomai//14.6_Northern_Harrmasir_Radio.txt',
"72.9 Crevus Radio Center 27" = 'texts/lore_radio/adhomai/72.9_Crevus_Radio_Center_27.txt',
"51.2 Radio Free Adhomai" = 'texts/lore_radio/adhomai/51.2_Radio_Free_Adhomai.txt',
"83.1 The Crown Herald" = 'texts/lore_radio/adhomai/83.1_The_Crown_Herald.txt',
"11.7 KGTW-11" = 'texts/lore_radio/adhomai/11.7_KGTW-11.txt'
)

lobby_tracks = list(
'sound/music/lobby/adhomai/adhomai-1.ogg',
'sound/music/lobby/adhomai/adhomai-2.ogg',
'sound/music/lobby/adhomai/adhomai-3.ogg',
'sound/music/lobby/adhomai/adhomai-4.ogg'
)


/datum/space_sector/nrrahrahul
name = SECTOR_NRRAHRAHUL
description = "Hro'zamal is the second planet in the Nrrahrahul system. Formerly named Nrrahrahul Two, it was given the name Hro'zamal after the establishment of a permanent civilian \
Expand Down
23 changes: 22 additions & 1 deletion code/modules/cooking/recipes/cultural/recipes_human.dm
Original file line number Diff line number Diff line change
Expand Up @@ -171,11 +171,20 @@
)
result = /obj/item/reagent_containers/food/snacks/hash_browns

/singleton/recipe/alfajores
appliance = OVEN
reagents = list(/singleton/reagent/sugar = 15, /singleton/reagent/nutriment/flour = 10, /singleton/reagent/drink/milk = 10)
items = list(
/obj/item/reagent_containers/food/snacks/spreads/butter
)
reagent_mix = RECIPE_REAGENT_REPLACE //Simplify end product
result = /obj/item/reagent_containers/food/snacks/bowl/alfajores

// Konyang

/singleton/recipe/mossbowl
appliance = SAUCEPAN | POT
reagents = list(/singleton/reagent/water = 5, /singleton/reagent/nutriment/protein/egg = 3)
reagents = list(/singleton/reagent/water = 5, /singleton/reagent/nutriment/flour = 10)
fruit = list("moss" = 2)
result = /obj/item/reagent_containers/food/snacks/mossbowl

Expand Down Expand Up @@ -460,3 +469,15 @@
)
result = /obj/item/reagent_containers/food/snacks/steelworkersandwich
reagent_mix = RECIPE_REAGENT_REPLACE

//Gadpathur
/singleton/recipe/paneer_gadpathur
appliance = SAUCEPAN | POT
result = /obj/item/reagent_containers/food/snacks/paneer_gadpathur
fruit = list ("tomato" = 1, "chili" = 1)
reagents = list(/singleton/reagent/drink/milk/cream = 5, /singleton/reagent/nutriment/rice = 5)
items = list(
/obj/item/reagent_containers/food/snacks/cheesewedge
)
reagent_mix = RECIPE_REAGENT_REPLACE
result = /obj/item/reagent_containers/food/snacks/paneer_gadpathur
11 changes: 11 additions & 0 deletions code/modules/cooking/recipes/cultural/recipes_skrell.dm
Original file line number Diff line number Diff line change
Expand Up @@ -100,3 +100,14 @@
result = /obj/item/reagent_containers/food/snacks/qlguabi
reagent_mix = RECIPE_REAGENT_REPLACE //Simplify end product
result = /obj/item/reagent_containers/food/snacks/qlguabi

/singleton/recipe/konaqu
appliance = FRYER
fruit = list("q'lort" = 1, "ylpha" = 1)
reagents = list(/singleton/reagent/sugar = 10)
items = list(
/obj/item/reagent_containers/food/snacks/dough
)
reagent_mix = RECIPE_REAGENT_REPLACE
result = /obj/item/reagent_containers/food/snacks/konaqu
result_quantity = 2
18 changes: 18 additions & 0 deletions code/modules/cooking/recipes/cultural/recipes_vaurca.dm
Original file line number Diff line number Diff line change
Expand Up @@ -74,3 +74,21 @@
/obj/item/reagent_containers/food/snacks/phoroncandy
)
result = /obj/item/reagent_containers/food/snacks/phoron_river_loaf

/singleton/recipe/koicomb
appliance = OVEN
items = list(
/obj/item/reagent_containers/food/snacks/friedkois,
/obj/item/reagent_containers/food/snacks/friedkois
)
reagents = list(/singleton/reagent/drink/milk/nemiik = 5)
result = /obj/item/reagent_containers/food/snacks/koicomb
reagent_mix = RECIPE_REAGENT_REPLACE

/singleton/recipe/nakarka_burger
appliance = MIX
items = list(
/obj/item/reagent_containers/food/snacks/koisburger,
/obj/item/reagent_containers/food/snacks/nakarka_wedge
)
result = /obj/item/reagent_containers/food/snacks/nakarka_burger
29 changes: 29 additions & 0 deletions code/modules/cooking/recipes/recipes_baked.dm
Original file line number Diff line number Diff line change
Expand Up @@ -96,3 +96,32 @@
)
result = /obj/item/reagent_containers/food/snacks/sliceable/veggie_lasagna_tray
reagent_mix = RECIPE_REAGENT_REPLACE //Replacing the ingredients and filling in a bit extra for simplicity's sake

/singleton/recipe/pigs_in_a_blanket
appliance = OVEN
items = list(
/obj/item/reagent_containers/food/snacks/sausage,
/obj/item/reagent_containers/food/snacks/doughslice,
/obj/item/reagent_containers/food/snacks/doughslice
)
result = /obj/item/reagent_containers/food/snacks/pig_in_a_blanket
result_quantity = 3

/singleton/recipe/stuffed_peppers_meat
appliance = OVEN
fruit = list("bellpepper" = 1, "tomato" = 1)
items = list(
/obj/item/reagent_containers/food/snacks/cheesewedge,
/obj/item/reagent_containers/food/snacks/meat
)
result = /obj/item/reagent_containers/food/snacks/stuffed_pepper_meat
result_quantity = 2

/singleton/recipe/stuffed_peppers_rice
appliance = OVEN
fruit = list("bellpepper" = 1, "corn" = 1)
items = list(
/obj/item/reagent_containers/food/snacks/boiledrice
)
result = /obj/item/reagent_containers/food/snacks/stuffed_pepper_rice
result_quantity = 2
Loading

0 comments on commit 6d0cb7e

Please sign in to comment.