Adds: The C-Foam launcher (#25738)

* The start

* Getting a bit further

* Slight ammo casing update

* Istype helper and foam blockage

* Adds status effect

* Foam blockage and status effect fixes

* Autolathe ammo + stun

* aaaaaaaa

* Adds uplink item

* Actual slowdown

* Makes attacking a bit faster again

* Ammo increase to 12

* Sirryan review

* Adds sprites - almost working

* Lots of fixes + mineral doors

* Mineral doors don't open with foam
This commit is contained in:
DGamerL
2024-08-01 08:24:09 +02:00
committed by GitHub
parent ca79f65c8d
commit 44671e31e8
28 changed files with 240 additions and 14 deletions
@@ -76,3 +76,7 @@
if(!affecting) //bruh where's your chest
return FALSE
apply_damage(damage, BRUTE, affecting)
// Adds the foam status effect to the carbon, which will slow it's movement speed and attack speed
/mob/living/carbon/proc/foam_up(amount)
apply_status_effect(STATUS_EFFECT_C_FOAMED)
@@ -508,3 +508,12 @@
muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL
muzzle_flash_color = LIGHT_COLOR_DARKRED
icon_state = "lasercasing"
/obj/item/ammo_casing/caseless/c_foam
name = "\improper C-Foam blob"
desc = "You shouldn't see this! Make an issue report on Github!"
caliber = "c_foam"
projectile_type = /obj/item/projectile/c_foam
muzzle_flash_strength = MUZZLE_FLASH_RANGE_WEAK
muzzle_flash_range = MUZZLE_FLASH_RANGE_WEAK
muzzle_flash_color = LIGHT_COLOR_DARKRED
@@ -624,3 +624,13 @@
/obj/item/ammo_box/magazine/detective/speedcharger/attackby()
return
/obj/item/ammo_box/magazine/c_foam
name = "\improper C-Foam canister"
desc = "A canister containing inert foam for the C-Foam launcher."
icon_state = "foam_canister"
ammo_type = /obj/item/ammo_casing/caseless/c_foam
max_ammo = 12
/obj/item/ammo_box/magazine/c_foam/attack_self(mob/user)
return
@@ -149,7 +149,7 @@
else if(isturf(T) && T.density)
if(!(istype(T, /turf/simulated/wall/indestructible)))
CreateDoor(T)
else if(istype(target, /obj/machinery/door))
else if(isairlock(target))
OpenDoor(target)
else if(istype(target, /obj/structure/closet))
OpenCloset(target)
@@ -729,7 +729,6 @@
build_path = /obj/item/flamethrower/full
category = list("hacked", "Security")
/datum/design/electropack
name = "Electropack"
id = "electropack"
@@ -842,6 +841,14 @@
build_path = /obj/item/ammo_box/c9mm
category = list("hacked", "Security")
/datum/design/c_foam_ammo
name = "C-Foam cartridge"
id = "c_foam"
build_type = AUTOLATHE
materials = list(MAT_METAL = 5000, MAT_GLASS = 2000)
build_path = /obj/item/ammo_box/magazine/c_foam
category = list("hacked", "Security")
/datum/design/cleaver
name = "Butcher's Cleaver"
id = "cleaver"
+1 -1
View File
@@ -209,7 +209,7 @@
return FALSE
. = ..()
if(auto_door_open)
if(istype(M, /obj/machinery/door) && has_buckled_mobs())
if(isairlock(M) && has_buckled_mobs())
for(var/m in buckled_mobs)
M.Bumped(m)