Merge remote-tracking branch 'tgstation/master' into upstream-2025-11-29

# Conflicts:
#	_maps/RandomRuins/SpaceRuins/derelict_sulaco.dmm
#	_maps/RandomRuins/SpaceRuins/garbagetruck2.dmm
#	_maps/map_files/CatwalkStation/CatwalkStation_2023.dmm
#	_maps/map_files/tramstation/tramstation.dmm
#	code/_onclick/hud/new_player.dm
#	code/datums/components/squashable.dm
#	code/datums/diseases/advance/symptoms/heal.dm
#	code/datums/diseases/chronic_illness.dm
#	code/datums/status_effects/buffs.dm
#	code/datums/status_effects/debuffs/drunk.dm
#	code/datums/status_effects/debuffs/stamcrit.dm
#	code/game/machinery/computer/crew.dm
#	code/game/objects/items/devices/scanners/health_analyzer.dm
#	code/game/objects/items/wall_mounted.dm
#	code/game/turfs/closed/indestructible.dm
#	code/modules/admin/view_variables/filterrific.dm
#	code/modules/antagonists/heretic/influences.dm
#	code/modules/cargo/orderconsole.dm
#	code/modules/client/preferences.dm
#	code/modules/events/space_vines/vine_mutations.dm
#	code/modules/mob/dead/new_player/new_player.dm
#	code/modules/mob/living/carbon/human/death.dm
#	code/modules/mob/living/carbon/human/species_types/jellypeople.dm
#	code/modules/mob/living/damage_procs.dm
#	code/modules/mob/living/living.dm
#	code/modules/mob_spawn/ghost_roles/mining_roles.dm
#	code/modules/mob_spawn/mob_spawn.dm
#	code/modules/projectiles/ammunition/energy/laser.dm
#	code/modules/projectiles/guns/ballistic/launchers.dm
#	code/modules/projectiles/guns/energy/laser.dm
#	code/modules/reagents/chemistry/machinery/chem_dispenser.dm
#	code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm
#	code/modules/reagents/chemistry/reagents/drinks/alcohol_reagents.dm
#	code/modules/reagents/chemistry/reagents/medicine_reagents.dm
#	code/modules/surgery/healing.dm
#	code/modules/unit_tests/designs.dm
#	icons/mob/inhands/items_lefthand.dmi
#	icons/mob/inhands/items_righthand.dmi
#	tgui/packages/tgui/interfaces/ChemDispenser.tsx
This commit is contained in:
nevimer
2025-11-29 22:49:21 -05:00
1185 changed files with 39068 additions and 32028 deletions
+20 -5
View File
@@ -28,17 +28,18 @@
damage = 25
exposed_wound_bonus = 40
/obj/projectile/beam/laser/carbine
/obj/projectile/beam/laser/rapid
name = "rapid fire laser"
icon_state = "carbine_laser"
impact_effect_type = /obj/effect/temp_visual/impact_effect/yellow_laser
damage = 10
damage = 20
/obj/projectile/beam/laser/carbine/practice
name = "practice laser"
/obj/projectile/beam/laser/rapid/practice
name = "practice rapid fire laser"
impact_effect_type = /obj/effect/temp_visual/impact_effect/yellow_laser
damage = 0
/obj/projectile/beam/laser/carbine/cybersun
/obj/projectile/beam/laser/cybersun
name = "red plasma beam"
icon_state = "lava"
light_color = COLOR_DARK_RED
@@ -47,6 +48,20 @@
wound_bonus = -40
speed = 0.9
/obj/projectile/beam/laser/accelerator
name = "accelerator laser"
icon_state = "scatterlaser"
range = 255
damage = 6
var/size_per_tile = 0.1
var/max_scale = 4
/obj/projectile/beam/laser/accelerator/reduce_range()
..()
damage += 7
transform = matrix()
transform *= min(1 + (maximum_range - range) * size_per_tile, max_scale)
//overclocked laser, does a bit more damage but has much higher wound power (-0 vs -20)
/obj/projectile/beam/laser/hellfire
name = "hellfire laser"
@@ -178,7 +178,7 @@
/obj/projectile/bullet/pea/on_hit(mob/living/carbon/target, blocked = 0, pierce_hit)
if(istype(target) && blocked != 100)
if(iszombie(target)) // https://www.youtube.com/watch?v=ssZoq1eUK-s
target.adjustBruteLoss(15)
target.adjust_brute_loss(15)
if(target.can_inject(target_zone = def_zone)) // Pass the hit zone to see if it can inject by whether it hit the head or the body.
..()
reagents.trans_to(target, reagents.total_volume, methods = INJECT)
+1 -1
View File
@@ -354,7 +354,7 @@
. = ..()
if(iscarbon(target))
if(istype(get_area(target), /area/deathmatch))
target.adjustOrganLoss(ORGAN_SLOT_BRAIN, 25) // Roughly 8 hits to kill
target.adjust_organ_loss(ORGAN_SLOT_BRAIN, 25) // Roughly 8 hits to kill
target.visible_message(span_warning("[target] grips their head in pain!"))
return BULLET_ACT_HIT
for(var/x in target.get_traumas())//checks to see if the victim is already going through possession
@@ -28,11 +28,11 @@
/obj/projectile/energy/flora/mut/on_hit_plant_effect(mob/living/hit_plant)
if(prob(85))
hit_plant.adjustFireLoss(rand(5, 15))
hit_plant.adjust_fire_loss(rand(5, 15))
hit_plant.show_message(span_userdanger("The radiation beam singes you!"))
return
hit_plant.adjustToxLoss(rand(3, 6))
hit_plant.adjust_tox_loss(rand(3, 6))
hit_plant.Paralyze(10 SECONDS)
hit_plant.visible_message(
span_warning("[hit_plant] writhes in pain as [hit_plant.p_their()] vacuoles boil."),
@@ -5,5 +5,5 @@
. = ..()
if(ishuman(target))
var/mob/living/carbon/human/human_hit = target
human_hit.adjustOrganLoss(ORGAN_SLOT_BRAIN, 20)
human_hit.adjust_organ_loss(ORGAN_SLOT_BRAIN, 20)
human_hit.adjust_hallucinations(60 SECONDS)