Skip to content

Commit

Permalink
Merge branch 'master' into helmet-accessories
Browse files Browse the repository at this point in the history
  • Loading branch information
Staykeu committed Feb 2, 2024
2 parents 34dfa52 + 55f0768 commit f3dd89c
Show file tree
Hide file tree
Showing 171 changed files with 1,975 additions and 1,722 deletions.
7 changes: 6 additions & 1 deletion .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,13 @@
/tools/docker/ @Fira
/Dockerfile @Fira

# Nanu

/maps @Nanu308

# Zonespace

/code/modules/gear_presets/survivors.dm @zonespace27
/code/datums/tutorial/ @Zonespace27
/maps/tutorial/ @Zonespace27

# MULTIPLE OWNERS
3 changes: 3 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ Remember: something that is self-evident to you might not be to others. Explain

# Testing Photographs and Procedure
<!-- Include any screenshots/videos/debugging steps of the modified code functioning successfully, ideally including edge cases. -->

<!-- !! If you are modifying sprites, you **must** include one or more in-game screenshots or videos of the new sprites. !! -->

<details>
<summary>Screenshots & Videos</summary>

Expand Down
4 changes: 2 additions & 2 deletions code/__DEFINES/conflict.dm
Original file line number Diff line number Diff line change
Expand Up @@ -141,8 +141,8 @@
#define WIELD_DELAY_VERY_SLOW 10
#define WIELD_DELAY_HORRIBLE 12

///This is how long you must wait after throwing something to throw again
#define THROW_DELAY (0.4 SECONDS)
///This is how long you must wait to throw again after throwing two things
#define THROW_DELAY (1.5 SECONDS)

//Explosion level thresholds. Upper bounds
#define EXPLOSION_THRESHOLD_VLOW 50
Expand Down
1 change: 1 addition & 0 deletions code/__DEFINES/dcs/signals/atom/signals_item.dm
Original file line number Diff line number Diff line change
Expand Up @@ -77,3 +77,4 @@
#define COMSIG_CAMERA_SET_TARGET "camera_manager_set_target"
#define COMSIG_CAMERA_SET_AREA "camera_manager_set_area"
#define COMSIG_CAMERA_CLEAR "camera_manager_clear_target"
#define COMSIG_CAMERA_REFRESH "camera_manager_refresh"
5 changes: 4 additions & 1 deletion code/__DEFINES/mobs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,8 @@
#define DAZE "daze"
#define SLOW "slow"
#define SUPERSLOW "superslow"
#define ROOT "root"

//=================================================

//I hate adding defines like this but I'd much rather deal with bitflags than lists and string searches
Expand All @@ -100,14 +102,15 @@

//Bitflags defining which status effects could be or are inflicted on a mob

#define STATUS_FLAGS_DEBILITATE (CANSTUN|CANKNOCKOUT|CANDAZE|CANSLOW)
#define STATUS_FLAGS_DEBILITATE (CANSTUN|CANKNOCKOUT|CANDAZE|CANSLOW|CANROOT)

#define CANSTUN (1<<0)
#define CANKNOCKDOWN (1<<1)
#define CANKNOCKOUT (1<<2)
#define CANPUSH (1<<3)
#define LEAPING (1<<4)
#define PASSEMOTES (1<<5) //holders inside of mob that need to see emotes.
#define CANROOT (1<<6)
#define GODMODE (1<<12)
#define FAKEDEATH (1<<13) //Replaces stuff like changeling.changeling_fakedeath
#define DISFIGURED (1<<14) //I'll probably move this elsewhere if I ever get wround to writing a bitflag mob-damage system
Expand Down
2 changes: 1 addition & 1 deletion code/__HELPERS/#maths.dm
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ GLOBAL_LIST_INIT(sqrtTable, list(1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 4,
#define Lcm(a, b) (abs(a) / Gcd(a, b) * abs(b))

// Returns the nth root of x.
#define Root(n, x) (x ** (1 / n))
#define NRoot(n, x) (x ** (1 / n))

// secant
#define Sec(x) (1 / cos(x))
Expand Down
8 changes: 4 additions & 4 deletions code/__HELPERS/icons.dm
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ icon/MinColors(icon)
icon/MaxColors(icon)
The icon is blended with a second icon where the maximum of each RGB pixel is the result.
Opacity may increase, as if the icons were blended with ICON_OR. You may supply a color in place of an icon.
icon/Opaque(background = "#000000")
icon/Opaque(background = COLOR_BLACK)
All alpha values are set to 255 throughout the icon. Transparent pixels become black, or whatever background color you specify.
icon/BecomeAlphaMask()
You can convert a simple grayscale icon into an alpha mask to use with other icons very easily with this proc.
Expand Down Expand Up @@ -246,7 +246,7 @@ world

/icon/proc/AddAlphaMask(mask)
var/icon/M = new(mask)
M.Blend("#ffffff", ICON_SUBTRACT)
M.Blend(COLOR_WHITE, ICON_SUBTRACT)
// apply mask
Blend(M, ICON_ADD)

Expand Down Expand Up @@ -544,7 +544,7 @@ world
return flat_icon

/proc/adjust_brightness(color, value)
if (!color) return "#FFFFFF"
if (!color) return COLOR_WHITE
if (!value) return color

var/list/RGB = ReadRGB(color)
Expand Down Expand Up @@ -581,7 +581,7 @@ world
if(A)
A.overlays.Remove(src)

/mob/proc/flick_heal_overlay(time, color = "#00FF00") //used for warden and queen healing
/mob/proc/flick_heal_overlay(time, color = COLOR_GREEN) //used for warden and queen healing
var/image/I = image('icons/mob/mob.dmi', src, "heal_overlay")
switch(icon_size)
if(48)
Expand Down
4 changes: 2 additions & 2 deletions code/_onclick/hud/fullscreen.dm
Original file line number Diff line number Diff line change
Expand Up @@ -212,13 +212,13 @@
/atom/movable/screen/fullscreen/lighting_backdrop/lit_secondary
invisibility = INVISIBILITY_LIGHTING
layer = BACKGROUND_LAYER + LIGHTING_PRIMARY_DIMMER_LAYER
color = "#000"
color = COLOR_BLACK
alpha = 60

/atom/movable/screen/fullscreen/lighting_backdrop/backplane
invisibility = INVISIBILITY_LIGHTING
layer = LIGHTING_BACKPLANE_LAYER
color = "#000"
color = COLOR_BLACK
blend_mode = BLEND_ADD

/atom/movable/screen/fullscreen/see_through_darkness
Expand Down
2 changes: 1 addition & 1 deletion code/_onclick/hud/human.dm
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/datum/hud/human
var/list/gear = list()

/datum/hud/human/New(mob/living/carbon/human/owner, datum/custom_hud/hud_type, ui_color = "#ffffff", ui_alpha = 255)
/datum/hud/human/New(mob/living/carbon/human/owner, datum/custom_hud/hud_type, ui_color = COLOR_WHITE, ui_alpha = 255)
..()
ui_datum = hud_type
if(!istype(ui_datum))
Expand Down
8 changes: 8 additions & 0 deletions code/datums/ASRS.dm
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,14 @@
reference_package = /datum/supply_packs/ammo_shell_box_flechette
cost = ASRS_VERY_LOW_WEIGHT

/datum/supply_packs_asrs/ammo_shell_box_breaching
reference_package = /datum/supply_packs/ammo_shell_box_breaching
cost = ASRS_VERY_LOW_WEIGHT

/datum/supply_packs_asrs/ammo_xm51
reference_package = /datum/supply_packs/ammo_xm51
cost = ASRS_VERY_LOW_WEIGHT

/datum/supply_packs_asrs/ammo_smartgun
reference_package = /datum/supply_packs/ammo_smartgun

Expand Down
10 changes: 5 additions & 5 deletions code/datums/_atmos_setup.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,11 @@
// atmospherics devices.
//--------------------------------------------

#define PIPE_COLOR_GREY "#ffffff" //yes white is grey
#define PIPE_COLOR_RED "#ff0000"
#define PIPE_COLOR_BLUE "#0000ff"
#define PIPE_COLOR_CYAN "#00ffff"
#define PIPE_COLOR_GREEN "#00ff00"
#define PIPE_COLOR_GREY COLOR_WHITE //yes white is grey
#define PIPE_COLOR_RED COLOR_RED
#define PIPE_COLOR_BLUE COLOR_BLUE
#define PIPE_COLOR_CYAN COLOR_CYAN
#define PIPE_COLOR_GREEN COLOR_GREEN
#define PIPE_COLOR_YELLOW "#ffcc00"
#define PIPE_COLOR_PURPLE "#5c1ec0"

Expand Down
11 changes: 0 additions & 11 deletions code/datums/agents/tools/stunbaton.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,3 @@
hitcost = 500
stunforce = 40
has_user_lock = FALSE

/obj/item/weapon/baton/antag/check_user_auth(mob/user)
if(!skillcheckexplicit(user, SKILL_ANTAG, SKILL_ANTAG_AGENT))
user.visible_message(SPAN_NOTICE("[src] beeps as [user] picks it up"), SPAN_DANGER("WARNING: Unauthorized user detected. Denying access..."))
user.apply_effect(10, DAZE)
user.visible_message(SPAN_WARNING("[src] beeps and sends a shock through [user]'s body!"))
deductcharge(hitcost)

return FALSE

return TRUE
26 changes: 26 additions & 0 deletions code/datums/ammo/bullet/shotgun.dm
Original file line number Diff line number Diff line change
Expand Up @@ -311,6 +311,32 @@
penetration = ARMOR_PENETRATION_TIER_10
scatter = SCATTER_AMOUNT_TIER_4

/*
16 GAUGE SHOTGUN AMMO
*/

/datum/ammo/bullet/shotgun/light/breaching
name = "light breaching shell"
icon_state = "flechette"
handful_state = "breaching_shell"
multiple_handful_name = TRUE
bonus_projectiles_type = /datum/ammo/bullet/shotgun/light/breaching/spread

accuracy_var_low = PROJECTILE_VARIANCE_TIER_6
accuracy_var_high = PROJECTILE_VARIANCE_TIER_6
damage = 55
max_range = 5
bonus_projectiles_amount = EXTRA_PROJECTILES_TIER_3
penetration = ARMOR_PENETRATION_TIER_1

/datum/ammo/bullet/shotgun/light/breaching/spread
name = "additional light breaching fragments"
bonus_projectiles_amount = 0
accuracy_var_low = PROJECTILE_VARIANCE_TIER_6
accuracy_var_high = PROJECTILE_VARIANCE_TIER_6
scatter = SCATTER_AMOUNT_TIER_3
damage = 10

//Enormous shell for Van Bandolier's superheavy double-barreled hunting gun.
/datum/ammo/bullet/shotgun/twobore
name = "two bore bullet"
Expand Down
13 changes: 7 additions & 6 deletions code/datums/ammo/energy.dm
Original file line number Diff line number Diff line change
Expand Up @@ -28,16 +28,17 @@
icon_state = "stun"
damage_type = OXY
flags_ammo_behavior = AMMO_ENERGY|AMMO_IGNORE_RESIST|AMMO_ALWAYS_FF //Not that ignoring will do much right now.

stamina_damage = 45
damage = 15 //excessive use COULD be lethal
stamina_damage = 40
accuracy = HIT_ACCURACY_TIER_8
shell_speed = AMMO_SPEED_TIER_1 // Slightly faster
hit_effect_color = "#FFFF00"

/datum/ammo/energy/taser/on_hit_mob(mob/M, obj/projectile/P)
if(ishuman(M))
var/mob/living/carbon/human/H = M
H.disable_special_items() // Disables scout cloak
/datum/ammo/energy/taser/on_hit_mob(mob/mobs, obj/projectile/P)
if(ishuman(mobs))
var/mob/living/carbon/human/humanus = mobs
humanus.disable_special_items() // Disables scout cloak
humanus.make_jittery(40)

/datum/ammo/energy/taser/precise
name = "precise taser bolt"
Expand Down
5 changes: 3 additions & 2 deletions code/datums/ammo/xeno.dm
Original file line number Diff line number Diff line change
Expand Up @@ -363,7 +363,7 @@
name = "tail hook"
icon_state = "none"
ping = null
flags_ammo_behavior = AMMO_XENO|AMMO_SKIPS_ALIENS|AMMO_STOPPED_BY_COVER|AMMO_IGNORE_ARMOR
flags_ammo_behavior = AMMO_XENO|AMMO_SKIPS_ALIENS|AMMO_STOPPED_BY_COVER
damage_type = BRUTE

damage = XENO_DAMAGE_TIER_5
Expand All @@ -386,7 +386,8 @@
target.overlays += tail_image

new /datum/effects/xeno_slow(target, fired_proj.firer, ttl = 0.5 SECONDS)
target.apply_effect(0.5, STUN)

target.apply_effect(0.5, ROOT)
INVOKE_ASYNC(target, TYPE_PROC_REF(/atom/movable, throw_atom), fired_proj.firer, get_dist(fired_proj.firer, target)-1, SPEED_VERY_FAST)

qdel(tail_beam)
Expand Down
4 changes: 2 additions & 2 deletions code/datums/custom_hud.dm
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@
var/coords_x = splittext(coords[1], ":")
return "[coords_x[1]]:[text2num(coords_x[2])+A.hud_offset],[coords[2]]"

/datum/custom_hud/proc/special_behaviour(datum/hud/element, ui_alpha = 255, ui_color = "#ffffff")
/datum/custom_hud/proc/special_behaviour(datum/hud/element, ui_alpha = 255, ui_color = COLOR_WHITE)
return

/datum/custom_hud/old
Expand Down Expand Up @@ -131,7 +131,7 @@
var/coord_row_offset = -8
return "EAST[coord_col]:[coord_col_offset],NORTH[coord_row]:[coord_row_offset]"

/datum/custom_hud/dark/special_behaviour(datum/hud/element, ui_alpha = 255, ui_color = "#ffffff")
/datum/custom_hud/dark/special_behaviour(datum/hud/element, ui_alpha = 255, ui_color = COLOR_WHITE)
element.frame_hud = new /atom/movable/screen()
element.frame_hud.icon = ui_frame_icon
element.frame_hud.icon_state = "dark"
Expand Down
2 changes: 2 additions & 0 deletions code/datums/elements/bullet_trait/damage_boost.dm
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
GLOBAL_LIST_INIT(damage_boost_turfs, typecacheof(/turf))

GLOBAL_LIST_INIT(damage_boost_turfs_xeno, typecacheof(/turf/closed/wall/resin))

GLOBAL_LIST_INIT(damage_boost_breaching, typecacheof(list(
/obj/structure/machinery/door,
/obj/structure/mineral_door,
Expand Down
2 changes: 1 addition & 1 deletion code/datums/emergency_calls/feral_xenos.dm
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@

else if(medics < max_medics)
medics++
var/picked = pick(/mob/living/carbon/xenomorph/drone, /mob/living/carbon/xenomorph/hivelord, /mob/living/carbon/xenomorph/burrower)
var/picked = pick(/mob/living/carbon/xenomorph/drone, /mob/living/carbon/xenomorph/hivelord)
new_xeno = new picked(spawn_loc)

else if(engineers < max_engineers)
Expand Down
9 changes: 6 additions & 3 deletions code/datums/emergency_calls/upp.dm
Original file line number Diff line number Diff line change
Expand Up @@ -35,13 +35,16 @@
else
to_chat(M, SPAN_BOLD("You were brought online in a UPP engineering facility, knowing only your engineers for the first few weeks for your pseudo-life."))
to_chat(M, SPAN_BOLD("You were programmed with all of the medical and combat experience a military fighting force support asset required."))
to_chat(M, SPAN_BOLD("Throughout your career, your engineers, and later, your UPP compatriots, treated you like a tool, and only that."))
to_chat(M, SPAN_BOLD("Throughout your career, your engineers, and later, your UPP compatriots, treated you like [pick(75;"a tool, and only that.", 25;"a person, despite your purpose.")]"))
to_chat(M, SPAN_BOLD("Some weeks after your unit integration, you were assigned to the 17th 'Smoldering Sons' battalion (six hundred strong) under the command of Colonel Ganbaatar."))
to_chat(M, SPAN_BOLD("You were shipped off with the battalion to one of the UPP's most remote territories, a gas giant designated MV-35 in the Anglo-Japanese Arm, in the Neroid Sector."))
to_chat(M, SPAN_BOLD("For the past 14 months, you and the rest of the Smoldering Sons have been stationed at MV-35's only facility, the helium refinery, Altai Station."))
to_chat(M, SPAN_BOLD("As MV-35 and Altai Station are the only UPP-held zones in the Neroid Sector for many lightyears, you have spent most of your military career holed up in crammed quarters in near darkness, waiting for supply shipments and transport escort deployments."))
to_chat(M, SPAN_BOLD("With the recent arrival of the enemy USCM battalion the 'Falling Falcons' and their flagship, the [MAIN_SHIP_NAME], the UPP has felt threatened in the sector."))
to_chat(M, SPAN_BOLD("In an effort to protect the vulnerable MV-35 from the encroaching UA/USCM imperialists, the leadership of your battalion has opted this to be the best opportunity to strike at the Falling Falcons to catch them off guard."))
to_chat(M, SPAN_BOLD("With the recent arrival of the USCM battalion the 'Falling Falcons' and their flagship, the [MAIN_SHIP_NAME], the UPP has felt threatened in the sector."))
if(hostility)
to_chat(M, SPAN_BOLD("In an effort to protect the vulnerable MV-35 from the encroaching UA/USCM imperialists, the leadership of your battalion has opted this to be the best opportunity to strike at the Falling Falcons to catch them off guard."))
else
to_chat(M, SPAN_BOLD("Despite this, the leadership of your battalion questions what may have prompted the distress signal from their rivals. Your squad is to find out why and to render aid to the beleaguered UA forces."))
to_chat(M, SPAN_WARNING(FONT_SIZE_BIG("Glory to Colonel Ganbaatar.")))
to_chat(M, SPAN_WARNING(FONT_SIZE_BIG("Glory to the Smoldering Sons.")))
to_chat(M, SPAN_WARNING(FONT_SIZE_BIG("Glory to the UPP.")))
Expand Down
2 changes: 1 addition & 1 deletion code/datums/entities/clans.dm
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ BSQL_PROTECT_DATUM(/datum/entity/clan)
)

/datum/entity_meta/clan/on_insert(datum/entity/clan/player_clan)
player_clan.color = "#FFFFFF"
player_clan.color = COLOR_WHITE

player_clan.save()

Expand Down
8 changes: 4 additions & 4 deletions code/datums/entities/player_times.dm
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

// Untracked vars
var/bgcolor = "#4a4a4a"
var/textcolor = "#ffffff"
var/textcolor = COLOR_WHITE

BSQL_PROTECT_DATUM(/datum/entity/player_time)

Expand Down Expand Up @@ -62,7 +62,7 @@ BSQL_PROTECT_DATUM(/datum/entity/player_time)
"job" = role_id,
"playtime" = round(total_minutes MINUTES_TO_HOURS, 0.1),
"bgcolor" = "rgb(0, [Floor(128 * playtime_percentage)], [Floor(255 * playtime_percentage)])",
"textcolor" = "#FFFFFF",
"textcolor" = COLOR_WHITE,
"icondisplay" = icon_display
)

Expand Down Expand Up @@ -103,14 +103,14 @@ BSQL_PROTECT_DATUM(/datum/entity/player_time)
"job" = "Xenomorph",
"playtime" = round(owning_client.get_total_xeno_playtime() DECISECONDS_TO_HOURS, 0.1),
"bgcolor" = "#3a3a3a",
"textcolor" = "#FFFFFF"
"textcolor" = COLOR_WHITE
)

var/list/marine_playtime = list(
"job" = "Human",
"playtime" = round(owning_client.get_total_human_playtime() DECISECONDS_TO_HOURS, 0.1),
"bgcolor" = "#3a3a3a",
"textcolor" = "#FFFFFF"
"textcolor" = COLOR_WHITE
)

LAZYADD(xeno_playtimes, list(xeno_playtime))
Expand Down
2 changes: 1 addition & 1 deletion code/datums/langchat/langchat.dm
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/atom/var/langchat_height = 32 // abovetile usually
/atom/var/langchat_color = "#FFFFFF"
/atom/var/langchat_color = COLOR_WHITE
/atom/var/langchat_styles = ""

/mob/living/carbon/xenomorph/langchat_color = "#b491c8"
Expand Down
2 changes: 1 addition & 1 deletion code/datums/statistics/entities/medal_stats.dm
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@
return

var/datum/entity/statistic/medal/new_medal = DB_ENTITY(/datum/entity/statistic/medal)
var/datum/entity/player/player_entity = get_player_from_key(new_recipient.ckey)
var/datum/entity/player/player_entity = get_player_from_key(new_recipient.persistent_ckey)
if(player_entity)
new_medal.player_id = player_entity.id

Expand Down
Loading

0 comments on commit f3dd89c

Please sign in to comment.