Skip to content

Commit

Permalink
Merge branch 'master' of https://github.com/goonstation/goonstation i…
Browse files Browse the repository at this point in the history
…nto bonemeal
  • Loading branch information
klushy225 committed Jan 15, 2025
2 parents 0f92a4b + f5083ed commit 3367b56
Show file tree
Hide file tree
Showing 392 changed files with 43,936 additions and 19,857 deletions.
2 changes: 1 addition & 1 deletion +secret
6 changes: 3 additions & 3 deletions .github/workflows/automaton.yml
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ jobs:
sudo apt-get update
- name: Install Dependencies
uses: awalsh128/cache-apt-pkgs-action@latest
uses: ZeWaka/cache-apt-pkgs-action@latest
with:
packages: libssl-dev:i386 libgcc-s1:i386
version: 1.0
Expand Down Expand Up @@ -143,7 +143,7 @@ jobs:
sudo apt-get update
- name: Install Dependencies
uses: awalsh128/cache-apt-pkgs-action@latest
uses: ZeWaka/cache-apt-pkgs-action@latest
with:
packages: libssl-dev:i386 libgcc-s1:i386
version: 1.0
Expand Down Expand Up @@ -212,7 +212,7 @@ jobs:
sudo apt-get update
- name: Install Dependencies
uses: awalsh128/cache-apt-pkgs-action@latest
uses: ZeWaka/cache-apt-pkgs-action@latest
with:
packages: libssl-dev:i386 libgcc-s1:i386
version: 1.0
Expand Down
4 changes: 4 additions & 0 deletions .github/workflows/beepsky.yml
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,10 @@ jobs:
name: Lint with OpenDream
runs-on: ubuntu-22.04
steps:
- name: Setup .NET SDK
uses: actions/[email protected]
with:
dotnet-version: 9.0.100
- uses: actions/checkout@v4
- uses: robinraju/[email protected]
with:
Expand Down
29 changes: 26 additions & 3 deletions _std/color.dm
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,29 @@
0.00, 0.48, 0.53, 0.00,\
0.00, 0.00, 0.00, 1.00,\
0.00, 0.00, 0.00, 0.00)

// note: for colorblind accessibility matrices, these are arbitrary values that were found to work well per https://github.com/ParadiseSS13/Paradise/pull/17933
#define COLOR_MATRIX_PROTANOPIA_ACCESSIBILITY \
list(1, 0.475, 0.594, 0, \
0, 0.482, -0.68, 0,\
0, 0.044, 1.087, 0,\
0, 0, 0, 1,\
0, 0, 0, 0)

#define COLOR_MATRIX_DEUTERANOPIA_ACCESSIBILITY \
list(1.8, 0, -0.14, 0,\
-1.05, 1, 0.1, 0,\
0.3, 0, 1, 0,\
0, 0, 0, 1,\
0, 0, 0, 0)

#define COLOR_MATRIX_TRITANOPIA_ACCESSIBILITY \
list(0.74, 0.07, 0, 0,\
-0.405, 0.593, 0, 0,\
0.665, 0.335, 1, 0,\
0, 0, 0, 1,\
0, 0, 0, 0)

#define COLOR_MATRIX_FLOCKMIND_LABEL "flockmind"
#define COLOR_MATRIX_FLOCKMIND list(1.00, 0.00, 0.00, 0.00,\
0.00, 1.00, 0.00, 0.00,\
Expand Down Expand Up @@ -425,16 +448,16 @@ proc/get_average_color(icon/I, xPixelInterval = 4, yPixelInterval = 4)

/client/proc/set_saturation(s=1)
src.saturation_matrix = hsv_transform_color_matrix(0, s, 1)
src.color = mult_color_matrix(src.color_matrix, src.saturation_matrix)
src.color = mult_color_matrix(mult_color_matrix(src.color_matrix, src.saturation_matrix), src.colorblind_matrix)

/client/proc/set_color(matrix=COLOR_MATRIX_IDENTITY, respect_view_tint_settings = FALSE)
if (!respect_view_tint_settings)
src.color_matrix = matrix
else
src.color_matrix = src.view_tint ? matrix : null
src.color = mult_color_matrix(src.color_matrix, src.saturation_matrix)
src.color = mult_color_matrix(mult_color_matrix(src.color_matrix, src.saturation_matrix), src.colorblind_matrix)

/client/proc/animate_color(matrix=COLOR_MATRIX_IDENTITY, time=5, easing=SINE_EASING)
src.color_matrix = matrix
matrix = mult_color_matrix(src.color_matrix, src.saturation_matrix)
matrix = mult_color_matrix(mult_color_matrix(src.color_matrix, src.saturation_matrix), src.colorblind_matrix)
animate(src, color=matrix, time=time, easing=easing)
2 changes: 1 addition & 1 deletion _std/defines/access.dm
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
#define access_medical_lockers 10
#define access_research_director 11
#define access_maint_tunnels 12
#define access_external_airlocks 13 // Unused
#define access_ticket 13 // issuing tickets
#define access_emergency_storage 14 // Unused
#define access_change_ids 15
#define access_ai_upload 16
Expand Down
1 change: 1 addition & 0 deletions _std/defines/atom.dm
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@
#define THROW_SLIP (1 << 3)
#define THROW_PEEL_SLIP (1 << 4)
#define THROW_BASEBALL (1 << 5) // throw that doesn't stun into walls.
#define THROW_THROUGH_WALL (1 << 6) //throw that will blow through one wall/other dense object before becoming a normal throw again

//For serialization purposes
#define DESERIALIZE_ERROR (0 << 0)
Expand Down
19 changes: 19 additions & 0 deletions _std/defines/component_defines/component_defines_special.dm
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,25 @@
/// The diner trading area
#define COMSIG_DOCK_TRADER_DINER "trader_diner"

// ---- Mining Shuttle docks ----
#define COMSIG_DOCK_MINING_STATION "mining_station"
#define COMSIG_DOCK_MINING_DINER "mining_diner"
#define COMSIG_DOCK_MINING_OUTPOST "mining_outpost"

// ---- John's Bus docks ----
#define COMSIG_DOCK_JOHN_OWLERY "john_owlery"
#define COMSIG_DOCK_JOHN_DINER "john_diner"
#define COMSIG_DOCK_JOHN_OUTPOST "john_outpost"
#define COMSIG_DOCK_JOHN_GRILLNASIUM "john_grillnasium"

// ---- Research Shuttle docks (donut2/cogmap2) ----
#define COMSIG_DOCK_RESEARCH_STATION "research_station"
#define COMSIG_DOCK_RESEARCH_OUTPOST "research_outpost"

// ---- Medical Shuttle Docks (donut3) ----
#define COMSIG_DOCK_MEDICAL_ASYLUM "medical_asylum"
#define COMSIG_DOCK_MEDICAL_MEDBAY "medical_medbay"
#define COMSIG_DOCK_MEDICAL_PATHOLOGY "medical_pathology"


// ---- Light stuff, used by /datum/component/loctargeting/simple_light, .../sm_light, and .../medium_light ----
Expand Down
26 changes: 18 additions & 8 deletions _std/defines/gang.dm
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,17 @@
#define GANG_STARTING_POINTS 1500

/// number of spray bottles gangs start with in their locker, excluding the 2 in the recruitment briefcase
#define GANG_STARTING_SPRAYPAINT 0
#define GANG_STARTING_SPRAYPAINT 10
/// time in seconds between gangs gaining spray bottles
#define GANG_SPRAYPAINT_REGEN 7.5 MINUTES
#define GANG_SPRAYPAINT_REGEN 30 MINUTES
/// number of spray paints that are granted in this interval
#define GANG_SPRAYPAINT_REGEN_QUANTITY 3

#define GANG_SPRAYPAINT_REGEN_QUANTITY 5
/// time to tag on an unclaimed tile
#define GANG_SPRAYPAINT_TAG_TIME 3 SECONDS
/// time to spray over an existing gang member's tag
#define GANG_SPRAYPAINT_TAG_REPLACE_TIME 15 SECONDS
/// score granted immediately on finishing a tag
#define GANG_SPRAYPAINT_INSTANT_SCORE 50

/// Drug points:

Expand Down Expand Up @@ -84,11 +89,11 @@


#ifdef RP_MODE
#define GANG_LOOT_INITIAL_DROP 10 MINUTES //! when the first gang duffel bag spawns on RP
#define GANG_LOOT_DROP_FREQUENCY 15 MINUTES //! how often gang duffel bags are dropped on RP
#define GANG_LOOT_INITIAL_DROP 15 MINUTES //! when the first vandalism objectives are assigned on RP
#define GANG_LOOT_DROP_FREQUENCY 30 MINUTES //! how often vandalism objectives are assigned on RP
#else
#define GANG_LOOT_INITIAL_DROP 5 MINUTES //! when the first gang duffel bag spawns on classic
#define GANG_LOOT_DROP_FREQUENCY 15 MINUTES //! how often gang duffel bags are dropped on classic
#define GANG_LOOT_INITIAL_DROP 8 MINUTES //! when the first vandalism objectives are assigned on classic
#define GANG_LOOT_DROP_FREQUENCY 20 MINUTES //! how often vandalism objectives are assigned on classic
#endif
#define GANG_LOOT_DROP_VOLUME_PER_GANG 2 //! how many duffel bags spawn, per gang

Expand Down Expand Up @@ -186,6 +191,11 @@
#define GANG_TAG_SIGHT_RANGE 6
#endif


// code-related stuff
#define GANG_CLAIM_INVALID 0
#define GANG_CLAIM_VALID 1 /// spraying in a valid zone
#define GANG_CLAIM_TAKEOVER 2 /// spraying over another tag
// shorthands for range calcs
#define GANG_TAG_INFLUENCE_SQUARED GANG_TAG_INFLUENCE*GANG_TAG_INFLUENCE
#define GANG_TAG_SIGHT_RANGE_SQUARED GANG_TAG_SIGHT_RANGE*GANG_TAG_SIGHT_RANGE
Expand Down
3 changes: 2 additions & 1 deletion _std/defines/minimap.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@
#define MAP_POD_WARS_NANOTRASEN (1<<2)
#define MAP_POD_WARS_SYNDICATE (1<<3)
#define MAP_INFO (1<<4) //! Map that just shows station rooms
#define MAP_HTR_TEAM (1<<20)
#define MAP_ALERTS (1<<5) //! Station General Alerts
#define MAP_HTR_TEAM (1<<20)

// Area groups, which will be treated as one atom/movable by the renderer, allowing for efficient recolouring across minimaps.
#define GROUP_NSV_RELIANT "nsv_reliant"
Expand Down
1 change: 1 addition & 0 deletions _std/defines/roles.dm
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
#define ROLE_SALVAGER "salvager"
#define ROLE_ANTAGONIST_CRITTER "antagonist_critter"
#define ROLE_MISC "misc"
#define ROLE_BASKETBALL_WIZARD "bball_wizard"

// special antagonist roles
#define ROLE_MACHO_MAN "macho_man"
Expand Down
1 change: 1 addition & 0 deletions _std/defines/sight.dm
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,4 @@
#define CLIENT_IMAGE_GROUP_GANG_OBJECTIVES "client_image_group_gang_objective" // covers crate spawns
#define CLIENT_IMAGE_GROUP_MECHCOMP "mechcomp"
#define CLIENT_IMAGE_GROUP_SALVAGER_VALUES "salvage_value_icons"
#define CLIENT_IMAGE_GROUP_ART_CURSER_NIGHTMARE "art_curser_hidden_nightmares"
2 changes: 1 addition & 1 deletion _std/machinery.dm
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@
#define PROCESSING_MAX_IN_USE PROCESSING_32TH

#define MACHINES_CONVEYORS 1 // Conveyor belts
#define MACHINES_ATMOSALERTS 2 // /obj/machinery/computer/atmosphere/alerts
#define MACHINES_GENERAL_ALERT 2 // /obj/machinery/computer/general_alert
#define MACHINES_COMMSCONSOLES 3 // /obj/machinery/computer/communications
#define MACHINES_POWER 4 // /obj/machinery/power, perhaps worth splitting further
#define MACHINES_PIPES 5 // /obj/machinery/pipes
Expand Down
1 change: 1 addition & 0 deletions _std/macros/atom_properties.dm
Original file line number Diff line number Diff line change
Expand Up @@ -320,6 +320,7 @@ To remove:
#define PROP_ATOM_DO_LIQUID_CLICKS(x) x("do_liquid_clicks", APPLY_ATOM_PROPERTY_SIMPLE, REMOVE_ATOM_PROPERTY_SIMPLE)
///for tracking if a borg/cyborg frame was a roundstart one, for stats purposes
#define PROP_ATOM_ROUNDSTART_BORG(x) x("rounstart_borg", APPLY_ATOM_PROPERTY_SIMPLE, REMOVE_ATOM_PROPERTY_SIMPLE)
#define PROP_ATOM_ART_FISSURE_CORROSION_COUNT(x) x("art_fissure_corrosion_count", APPLY_ATOM_PROPERTY_SUM, REMOVE_ATOM_PROPERTY_SUM)

#define PROP_ATOM_LUCK(x) x("luck", APPLY_ATOM_PROPERTY_SUM, REMOVE_ATOM_PROPERTY_SUM)

Expand Down
5 changes: 4 additions & 1 deletion _std/macros/items.dm
Original file line number Diff line number Diff line change
Expand Up @@ -23,4 +23,7 @@
/// Returns TRUE if item is worn by a human other than `user`, FALSE otherwise
#define IS_WORN_BY_SOMEONE_OTHER_THAN(item, user) (istype(item.loc, /mob/living/carbon/human) && user != item.loc)


/// Returns TRUE if the item is something that NPCs should not be able to pick up
#define IS_NPC_ILLEGAL_ITEM(x) ( \
istype(x, /obj/item/body_bag) && x.w_class >= W_CLASS_BULKY \
)
6 changes: 6 additions & 0 deletions _std/plane.dm
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
#define PLANE_OVERLAY_EFFECTS 25
#define PLANE_MUL_OVERLAY_EFFECTS 26 //! Multiplicative blend mode
#define PLANE_HUD 30
#define PLANE_ANTAG_ICONS 32
#define PLANE_SCREEN_OVERLAYS 40

/atom/movable/screen/plane_parent
Expand Down Expand Up @@ -113,6 +114,7 @@ client
add_plane(new /atom/movable/screen/plane_parent(PLANE_OVERLAY_EFFECTS, mouse_opacity = 0, name = "overlay_effects_plane", is_screen = 1, distort = FALSE))
add_plane(new /atom/movable/screen/plane_parent(PLANE_MUL_OVERLAY_EFFECTS, mouse_opacity = 0, name = "mul_overlay_effects_plane", is_screen = 1, distort = FALSE, blend_mode = BLEND_MULTIPLY))
add_plane(new /atom/movable/screen/plane_parent(PLANE_HUD, appearance_flags = NO_CLIENT_COLOR, name = "hud_plane", is_screen = 1, distort = FALSE))
add_plane(new /atom/movable/screen/plane_parent(PLANE_ANTAG_ICONS, appearance_flags = NO_CLIENT_COLOR, name = "antag_icons_plane", is_screen = 1, distort = FALSE))
add_plane(new /atom/movable/screen/plane_parent(PLANE_SCREEN_OVERLAYS, appearance_flags = NO_CLIENT_COLOR, mouse_opacity = 0, name = "screen_overlays_plane", is_screen = 1, distort = FALSE))

var/atom/movable/screen/plane_parent/occlusion_plane = src.get_plane(PLANE_FOREGROUND_PARALLAX_OCCLUSION)
Expand Down Expand Up @@ -160,6 +162,10 @@ client

proc/add_plane(var/atom/movable/screen/plane_parent/plane)
RETURN_TYPE(/atom/movable/screen/plane_parent)
#ifdef CHECK_MORE_RUNTIMES
if (src.plane_parents["[plane.plane]"])
CRASH("Attempting to add plane parent with id [plane.plane] that is already taken by another plane!")
#endif
src.plane_parents["[plane.plane]"] = plane
return plane

Expand Down
2 changes: 2 additions & 0 deletions _std/types.dm
Original file line number Diff line number Diff line change
Expand Up @@ -205,6 +205,8 @@ var/list/list/by_cat = list()
#define TR_CAT_STAMINA_MOBS "stamina_mobs"
#define TR_CAT_BUGS "bugs"
#define TR_CAT_POSSIBLE_DEAD_DROP "dead_drops"
#define TR_CAT_SINGULO_MAGNETS "singulo_magnets"
#define TR_CAT_PORTABLE_MACHINERY "portable_machinery"
// powernets? processing_items?
// mobs? ai-mobs?

Expand Down
Loading

0 comments on commit 3367b56

Please sign in to comment.