mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 05:00:55 +01:00
Pepper spray module for sec modsuits, Atmos resin module and nukie pyro bundle flamethrower made into module (#64934)
Pyro bundle was broken as when you brought it you would get modsuit and pyro backpack forcing you to either use armor or use backpack without fire protection(which modsuit has). Thanks to Fikou work it became a module Anti-Tider on the other hand is rarely used(i have never seen it used when i was playing sec or observing) and needed a little buff so now it will also became a module while i will make normal Anti-Tider stream wider(still working on it).
This commit is contained in:
@@ -153,7 +153,6 @@
|
||||
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
|
||||
slowdown_inactive = 1.5
|
||||
slowdown_active = 1
|
||||
allowed_suit_storage = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/watertank/atmos)
|
||||
skins = list(
|
||||
"atmospheric" = list(
|
||||
HELMET_LAYER = NECK_LAYER,
|
||||
|
||||
@@ -110,6 +110,7 @@
|
||||
/obj/item/mod/module/storage,
|
||||
/obj/item/mod/module/flashlight,
|
||||
/obj/item/mod/module/holster,
|
||||
/obj/item/mod/module/mister/security,
|
||||
)
|
||||
|
||||
/obj/item/mod/control/pre_equipped/safeguard
|
||||
@@ -120,6 +121,7 @@
|
||||
/obj/item/mod/module/flashlight,
|
||||
/obj/item/mod/module/jetpack,
|
||||
/obj/item/mod/module/holster,
|
||||
/obj/item/mod/module/mister/security,
|
||||
)
|
||||
|
||||
/obj/item/mod/control/pre_equipped/magnate
|
||||
@@ -175,6 +177,17 @@
|
||||
/obj/item/mod/module/injector,
|
||||
)
|
||||
|
||||
/obj/item/mod/control/pre_equipped/elite/flamethrower
|
||||
initial_modules = list(
|
||||
/obj/item/mod/module/storage/syndicate,
|
||||
/obj/item/mod/module/emp_shield,
|
||||
/obj/item/mod/module/thermal_regulator,
|
||||
/obj/item/mod/module/jetpack/advanced,
|
||||
/obj/item/mod/module/flashlight,
|
||||
/obj/item/mod/module/holster,
|
||||
/obj/item/mod/module/flamethrower,
|
||||
)
|
||||
|
||||
/obj/item/mod/control/pre_equipped/enchanted
|
||||
theme = /datum/mod_theme/enchanted
|
||||
applied_core = /obj/item/mod/core/infinite
|
||||
|
||||
@@ -119,7 +119,7 @@
|
||||
return FALSE
|
||||
if(module_type == MODULE_ACTIVE)
|
||||
if(mod.selected_module && !mod.selected_module.on_deactivation(display_message = FALSE))
|
||||
return
|
||||
return FALSE
|
||||
mod.selected_module = src
|
||||
if(device)
|
||||
if(mod.wearer.put_in_hands(device))
|
||||
@@ -129,7 +129,7 @@
|
||||
else
|
||||
balloon_alert(mod.wearer, "can't extend [device]!")
|
||||
mod.wearer.transferItemToLoc(device, src, force = TRUE)
|
||||
return
|
||||
return FALSE
|
||||
else
|
||||
var/used_button = mod.wearer.client?.prefs.read_preference(/datum/preference/choiced/mod_select) || MIDDLE_CLICK
|
||||
update_signal(used_button)
|
||||
@@ -301,6 +301,7 @@
|
||||
if(user.get_active_held_item() != device)
|
||||
return
|
||||
on_deactivation()
|
||||
return COMSIG_KB_ACTIVATED
|
||||
|
||||
///Anomaly Locked - Causes the module to not function without an anomaly.
|
||||
/obj/item/mod/module/anomaly_locked
|
||||
|
||||
@@ -258,3 +258,30 @@
|
||||
part.add_atom_colour("#b17f00", FIXED_COLOUR_PRIORITY)
|
||||
mod.wearer.remove_atom_colour(WASHABLE_COLOUR_PRIORITY) // turns purple guy purple
|
||||
mod.wearer.add_atom_colour("#704b96", FIXED_COLOUR_PRIORITY)
|
||||
|
||||
///Flamethrower - Launches fire across the area.
|
||||
/obj/item/mod/module/flamethrower
|
||||
name = "MOD flamethrower module"
|
||||
desc = "A custom-manufactured flamethrower, used to burn through your path. Burn well."
|
||||
icon_state = "flamethrower"
|
||||
module_type = MODULE_ACTIVE
|
||||
complexity = 3
|
||||
use_power_cost = DEFAULT_CHARGE_DRAIN * 3
|
||||
incompatible_modules = list(/obj/item/mod/module/flamethrower)
|
||||
cooldown_time = 2.5 SECONDS
|
||||
overlay_state_inactive = "module_flamethrower"
|
||||
overlay_state_active = "module_flamethrower_on"
|
||||
|
||||
/obj/item/mod/module/flamethrower/on_select_use(atom/target)
|
||||
. = ..()
|
||||
if(!.)
|
||||
return
|
||||
var/obj/projectile/flame = new /obj/projectile/bullet/incendiary/backblast/flamethrower(mod.wearer.loc)
|
||||
flame.preparePixelProjectile(target, mod.wearer)
|
||||
flame.firer = mod.wearer
|
||||
playsound(src, 'sound/items/modsuit/flamethrower.ogg', 75, TRUE)
|
||||
INVOKE_ASYNC(flame, /obj/projectile.proc/fire)
|
||||
drain_power(use_power_cost)
|
||||
|
||||
/obj/projectile/bullet/incendiary/backblast/flamethrower
|
||||
range = 6
|
||||
|
||||
@@ -203,3 +203,35 @@
|
||||
return
|
||||
rcd_scan(src, fade_time = 10 SECONDS)
|
||||
drain_power(use_power_cost)
|
||||
|
||||
///Mister - Sprays water over an area.
|
||||
/obj/item/mod/module/mister
|
||||
name = "MOD water mister module"
|
||||
desc = "A module containing a mister, able to spray it over areas."
|
||||
icon_state = "mister"
|
||||
module_type = MODULE_ACTIVE
|
||||
complexity = 2
|
||||
active_power_cost = DEFAULT_CHARGE_DRAIN * 0.3
|
||||
device = /obj/item/reagent_containers/spray/mister
|
||||
incompatible_modules = list(/obj/item/mod/module/mister)
|
||||
cooldown_time = 0.5 SECONDS
|
||||
var/volume = 500
|
||||
|
||||
/obj/item/mod/module/mister/Initialize(mapload)
|
||||
create_reagents(volume, OPENCONTAINER)
|
||||
return ..()
|
||||
|
||||
///Resin Mister - Sprays resin over an area.
|
||||
/obj/item/mod/module/mister/atmos
|
||||
name = "MOD resin mister module"
|
||||
desc = "An atmospheric resin mister, able to fix up areas quickly."
|
||||
device = /obj/item/extinguisher/mini/nozzle/mod
|
||||
volume = 250
|
||||
|
||||
/obj/item/mod/module/mister/atmos/Initialize(mapload)
|
||||
. = ..()
|
||||
reagents.add_reagent(/datum/reagent/water, volume)
|
||||
|
||||
/obj/item/extinguisher/mini/nozzle/mod
|
||||
name = "MOD atmospheric mister"
|
||||
desc = "An atmospheric resin mister with three modes, mounted as a module."
|
||||
|
||||
@@ -124,3 +124,18 @@
|
||||
/obj/item/mod/module/holster/Destroy()
|
||||
QDEL_NULL(holstered)
|
||||
return ..()
|
||||
|
||||
///Pepper Spray Mister - Sprays pepper spray over criminals.
|
||||
/obj/item/mod/module/mister/security
|
||||
name = "MOD pepper spray mister module"
|
||||
desc = "A module containing a container of pepper spray to spray over areas."
|
||||
device = /obj/item/reagent_containers/spray/mister/pepperspray/mod
|
||||
complexity = 1
|
||||
|
||||
/obj/item/mod/module/mister/security/Initialize(mapload)
|
||||
. = ..()
|
||||
reagents.add_reagent(/datum/reagent/consumable/condensedcapsaicin, volume)
|
||||
|
||||
/obj/item/reagent_containers/spray/mister/pepperspray/mod
|
||||
name = "MOD pepper spray mister"
|
||||
desc = "A mister full of pepper spray, perfect for riots."
|
||||
|
||||
Reference in New Issue
Block a user