Gadgets & Gizmos (#7786)

* Adds various objects for explorers / antagonists.

* T A G S

* Mend
This commit is contained in:
Mechoid
2021-01-14 22:53:39 -08:00
committed by GitHub
parent 816cb06f75
commit bd9f63a97a
25 changed files with 872 additions and 110 deletions

View File

@@ -28,6 +28,7 @@
recipes += new/datum/stack_recipe("[display_name] fork", /obj/item/weapon/material/kitchen/utensil/fork/plastic, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE)
recipes += new/datum/stack_recipe("[display_name] knife", /obj/item/weapon/material/knife/plastic, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE)
recipes += new/datum/stack_recipe("[display_name] blade", /obj/item/weapon/material/butterflyblade, 6, time = 20, one_per_turf = 0, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE)
recipes += new/datum/stack_recipe("[display_name] defense wire", /obj/item/weapon/material/barbedwire, 10, time = 1 MINUTE, one_per_turf = 0, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE)
/datum/material/steel/generate_recipes()
..()
@@ -235,6 +236,7 @@
recipes += new/datum/stack_recipe("baggy pants", /obj/item/clothing/under/pants/baggy/white, 8, time = 10 SECONDS, pass_stack_color = TRUE, recycle_material = "[name]")
recipes += new/datum/stack_recipe("belt pouch", /obj/item/weapon/storage/belt/fannypack/white, 25, time = 1 MINUTE, pass_stack_color = TRUE, recycle_material = "[name]")
recipes += new/datum/stack_recipe("crude bandage", /obj/item/stack/medical/crude_pack, 1, time = 2 SECONDS, pass_stack_color = TRUE, recycle_material = "[name]")
recipes += new/datum/stack_recipe("empty sandbag", /obj/item/stack/emptysandbag, 2, time = 2 SECONDS, pass_stack_color = TRUE, supplied_material = "[name]")
/datum/material/resin/generate_recipes()
recipes = list()
@@ -267,4 +269,5 @@
recipes += new/datum/stack_recipe("[display_name] ring", /obj/item/clothing/gloves/ring/material, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE)
recipes += new/datum/stack_recipe("[display_name] bracelet", /obj/item/clothing/accessory/bracelet/material, 1, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE)
recipes += new/datum/stack_recipe("[display_name] armor plate", /obj/item/weapon/material/armor_plating, 1, time = 20, on_floor = 1, supplied_material = "[name]", pass_stack_color = TRUE)
recipes += new/datum/stack_recipe("empty sandbag", /obj/item/stack/emptysandbag, 2, time = 2 SECONDS, pass_stack_color = TRUE, supplied_material = "[name]")
recipes += new/datum/stack_recipe("whip", /obj/item/weapon/material/whip, 5, time = 15 SECONDS, pass_stack_color = TRUE, supplied_material = "[name]")

View File

@@ -1010,6 +1010,19 @@ var/list/name_to_material
pass_stack_colors = TRUE
supply_conversion_value = 2
/datum/material/cloth/syncloth
name = "syncloth"
stack_origin_tech = list(TECH_MATERIAL = 3, TECH_BIO = 2)
door_icon_base = "wood"
ignition_point = T0C+532
melting_point = T0C+600
integrity = 200
protectiveness = 15 // 4%
flags = MATERIAL_PADDING
conductive = 0
pass_stack_colors = TRUE
supply_conversion_value = 3
/datum/material/cult
name = "cult"
display_name = "disturbing stone"

View File

@@ -426,4 +426,14 @@ the artifact triggers the rage.
heat_protection = -0.5
cold_protection = -0.5
siemens_coefficient = 1.5
siemens_coefficient = 1.5
/datum/modifier/entangled
name = "entangled"
desc = "Its hard to move."
on_created_text = "<span class='danger'>You're caught in something! It's hard to move.</span>"
on_expired_text = "<span class='warning'>Your movement is freed.</span>"
stacks = MODIFIER_STACK_EXTEND
slowdown = 2

View File

@@ -37,6 +37,12 @@
src.modules += new /obj/item/weapon/pinpointer/shuttle/merc(src)
src.modules += new /obj/item/weapon/melee/energy/sword(src)
var/datum/matter_synth/cloth = new /datum/matter_synth/cloth(40000)
synths += cloth
var/obj/item/stack/sandbags/cyborg/SB = new /obj/item/stack/sandbags/cyborg(src)
SB.synths += list(cloth)
var/jetpack = new/obj/item/weapon/tank/jetpack/carbondioxide(src)
src.modules += jetpack
R.internals = jetpack

View File

@@ -0,0 +1,74 @@
/obj/item/weapon/cell/spike
name = "modified power cell"
desc = "A modified power cell sitting in a highly conductive chassis."
origin_tech = list(TECH_POWER = 2)
icon_state = "spikecell"
maxcharge = 10000
matter = list(DEFAULT_WALL_MATERIAL = 1000, MAT_GLASS = 80, MAT_SILVER = 100)
self_recharge = TRUE
charge_amount = 150
/obj/item/weapon/cell/spike/process()
..()
var/turf/Center = get_turf(src)
var/shock_count = 0
for(var/turf/T in range(Center, 1))
if(prob(round(charge / 250)) && charge >= (maxcharge / 4))
if(locate(/obj/effect/temporary_effect/pulse/staticshock) in T)
continue
var/conductive = FALSE
if(istype(T, /turf/simulated/wall))
var/turf/simulated/wall/WT = T
if(WT.material.conductive)
conductive = TRUE
else if(WT.girder_material.conductive)
conductive = TRUE
else if(WT.reinf_material && WT.reinf_material.conductive)
conductive = TRUE
if(istype(T, /turf/simulated/floor))
var/turf/simulated/floor/F = T
if(istype(F.flooring, /decl/flooring/reinforced))
conductive = TRUE
if(conductive)
shock_count += 1
new /obj/effect/temporary_effect/pulse/staticshock(T)
if(shock_count)
while(shock_count)
use(200)
shock_count--
/obj/effect/temporary_effect/pulse/staticshock
name = "electric field"
desc = "Caution: Do not touch."
pulses_remaining = 10
pulse_delay = 2 SECONDS
icon_state = "blue_static"
/obj/effect/temporary_effect/pulse/staticshock/on_pulse()
..()
for(var/mob/living/L in view(1, src))
if(!issilicon(L) && prob(L.mob_size))
var/obj/item/projectile/beam/shock/weak/P = new (get_turf(src))
P.launch_projectile_from_turf(L, BP_TORSO)
var/obj/item/weapon/plastique/C4 = locate() in get_turf(src)
if(C4)
C4.visible_message("<span class='danger'>The current fries \the [C4]!</span>")
if(prob(10))
C4.explode(get_turf(src))
else
qdel(C4)

View File

@@ -275,3 +275,7 @@
agony = 15
eyeblur = 2
hitsound = 'sound/weapons/zapbang.ogg'
/obj/item/projectile/beam/shock/weak
damage = 5
agony = 10