mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-23 03:57:48 +01:00
Base features for Precursotech and Anomalotech Expansion
This commit is contained in:
@@ -190,3 +190,7 @@
|
||||
recipes += new/datum/stack_recipe("alien wood floor tile", /obj/item/stack/tile/wood/sif, 1, 4, 20)
|
||||
recipes -= new/datum/stack_recipe("wood floor tile", /obj/item/stack/tile/wood, 1, 4, 20)
|
||||
recipes -= new/datum/stack_recipe("wooden chair", /obj/structure/bed/chair/wood, 3, time = 10, one_per_turf = 1, on_floor = 1)
|
||||
|
||||
/material/supermatter/generate_recipes()
|
||||
recipes = list()
|
||||
recipes += new/datum/stack_recipe("supermatter shard", /obj/machinery/power/supermatter/shard, 30 , one_per_turf = 1, time = 600, on_floor = 1)
|
||||
|
||||
@@ -214,7 +214,101 @@
|
||||
no_variants = FALSE
|
||||
|
||||
/obj/item/stack/material/durasteel/hull
|
||||
name = "MAT_DURASTEELHULL"
|
||||
name = MAT_DURASTEELHULL
|
||||
|
||||
/obj/item/stack/material/titanium
|
||||
name = MAT_TITANIUM
|
||||
icon_state = "sheet-silver"
|
||||
item_state = "sheet-silver"
|
||||
default_type = MAT_TITANIUM
|
||||
no_variants = FALSE
|
||||
|
||||
/obj/item/stack/material/titanium/hull
|
||||
name = MAT_TITANIUMHULL
|
||||
default_type = MAT_TITANIUMHULL
|
||||
|
||||
// Particle Smasher and Exotic material.
|
||||
/obj/item/stack/material/verdantium
|
||||
name = MAT_VERDANTIUM
|
||||
icon_state = "sheet-wavy"
|
||||
item_state = "mhydrogen"
|
||||
default_type = MAT_VERDANTIUM
|
||||
no_variants = FALSE
|
||||
apply_colour = TRUE
|
||||
|
||||
/obj/item/stack/material/morphium
|
||||
name = MAT_MORPHIUM
|
||||
icon_state = "sheet-wavy"
|
||||
item_state = "mhydrogen"
|
||||
default_type = MAT_MORPHIUM
|
||||
no_variants = FALSE
|
||||
apply_colour = TRUE
|
||||
|
||||
/obj/item/stack/material/morphium/hull
|
||||
name = MAT_MORPHIUMHULL
|
||||
default_type = MAT_MORPHIUMHULL
|
||||
|
||||
/obj/item/stack/material/valhollide
|
||||
name = MAT_VALHOLLIDE
|
||||
icon_state = "sheet-gem"
|
||||
item_state = "diamond"
|
||||
default_type = MAT_VALHOLLIDE
|
||||
no_variants = FALSE
|
||||
apply_colour = TRUE
|
||||
|
||||
// Forged in the equivalent of Hell, one piece at a time.
|
||||
/obj/item/stack/material/supermatter
|
||||
name = MAT_SUPERMATTER
|
||||
icon_state = "sheet-super"
|
||||
item_state = "diamond"
|
||||
default_type = MAT_SUPERMATTER
|
||||
apply_colour = TRUE
|
||||
|
||||
/obj/item/stack/material/supermatter/proc/update_mass() // Due to how dangerous they can be, the item will get heavier and larger the more are in the stack.
|
||||
slowdown = amount / 10
|
||||
w_class = min(5, round(amount / 10) + 1)
|
||||
throw_range = round(amount / 7) + 1
|
||||
|
||||
/obj/item/stack/material/supermatter/use(var/used)
|
||||
. = ..()
|
||||
update_mass()
|
||||
return
|
||||
|
||||
/obj/item/stack/material/supermatter/attack_hand(mob/user)
|
||||
update_mass()
|
||||
radiation_repository.radiate(src, 5 + amount)
|
||||
var/mob/living/M = user
|
||||
if(!istype(M))
|
||||
return
|
||||
|
||||
var/burn_user = TRUE
|
||||
if(istype(M, /mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = user
|
||||
var/obj/item/clothing/gloves/G = H.gloves
|
||||
if(istype(G) && ((G.flags & THICKMATERIAL && prob(70)) || istype(G, /obj/item/clothing/gloves/gauntlets)))
|
||||
burn_user = FALSE
|
||||
|
||||
if(burn_user)
|
||||
H.visible_message("<span class='danger'>\The [src] flashes as it scorches [H]'s hands!</span>")
|
||||
H.apply_damage(amount / 2 + 5, BURN, "r_hand", used_weapon="Supermatter Chunk")
|
||||
H.apply_damage(amount / 2 + 5, BURN, "l_hand", used_weapon="Supermatter Chunk")
|
||||
H.drop_from_inventory(src, get_turf(H))
|
||||
return
|
||||
|
||||
if(istype(user, /mob/living/silicon/robot))
|
||||
burn_user = FALSE
|
||||
|
||||
if(burn_user)
|
||||
M.apply_damage(amount, BURN, null, used_weapon="Supermatter Chunk")
|
||||
|
||||
/obj/item/stack/material/supermatter/ex_act(severity) // An incredibly hard to manufacture material, SM chunks are unstable by their 'stabilized' nature.
|
||||
if(prob((4 / severity) * 20))
|
||||
radiation_repository.radiate(get_turf(src), amount * 4)
|
||||
explosion(get_turf(src),round(amount / 12) , round(amount / 6), round(amount / 3), round(amount / 25))
|
||||
qdel(src)
|
||||
return
|
||||
radiation_repository.radiate(get_turf(src), amount * 2)
|
||||
..()
|
||||
|
||||
/obj/item/stack/material/wood
|
||||
name = "wooden plank"
|
||||
|
||||
@@ -105,6 +105,8 @@ var/list/name_to_material
|
||||
var/opacity = 1 // Is the material transparent? 0.5< makes transparent walls/doors.
|
||||
var/reflectivity = 0 // How reflective to light is the material? Currently used for laser reflection and defense.
|
||||
var/explosion_resistance = 5 // Only used by walls currently.
|
||||
var/negation = 0 // Objects that respect this will randomly absorb impacts with this var as the percent chance.
|
||||
var/spatial_instability = 0 // Objects that have trouble staying in the same physical space by sheer laws of nature have this. Percent for respecting items to cause teleportation.
|
||||
var/conductive = 1 // Objects with this var add CONDUCTS to flags on spawn.
|
||||
var/conductivity = null // How conductive the material is. Iron acts as the baseline, at 10.
|
||||
var/list/composite_material // If set, object matter var will be a list containing these values.
|
||||
@@ -293,6 +295,8 @@ var/list/name_to_material
|
||||
/material/supermatter
|
||||
name = "supermatter"
|
||||
icon_colour = "#FFFF00"
|
||||
stack_type = /obj/item/stack/material/supermatter
|
||||
shard_type = SHARD_SHARD
|
||||
radioactivity = 20
|
||||
stack_type = null
|
||||
luminescence = 3
|
||||
@@ -304,6 +308,7 @@ var/list/name_to_material
|
||||
sheet_singular_name = "crystal"
|
||||
sheet_plural_name = "crystals"
|
||||
is_fusion_fuel = 1
|
||||
stack_origin_tech = list(TECH_MATERIAL = 8, TECH_PHORON = 5, TECH_BLUESPACE = 4)
|
||||
|
||||
/material/phoron
|
||||
name = "phoron"
|
||||
@@ -354,11 +359,14 @@ var/list/name_to_material
|
||||
name = "marble"
|
||||
icon_colour = "#AAAAAA"
|
||||
weight = 26
|
||||
<<<<<<< HEAD
|
||||
hardness = 30 //VOREStation Edit - Please.
|
||||
=======
|
||||
hardness = 70
|
||||
>>>>>>> 4ff3ee1... Merge pull request #6023 from Mechoid/Precursotech_Baseline
|
||||
integrity = 201 //hack to stop kitchen benches being flippable, todo: refactor into weight system
|
||||
stack_type = /obj/item/stack/material/marble
|
||||
|
||||
|
||||
/material/steel
|
||||
name = DEFAULT_WALL_MATERIAL
|
||||
stack_type = /obj/item/stack/material/steel
|
||||
@@ -455,8 +463,8 @@ var/list/name_to_material
|
||||
reflectivity = 0.9
|
||||
|
||||
/material/plasteel/titanium
|
||||
name = "titanium"
|
||||
stack_type = null
|
||||
name = MAT_TITANIUM
|
||||
stack_type = /obj/item/stack/material/titanium
|
||||
conductivity = 2.38
|
||||
icon_base = "metal"
|
||||
door_icon_base = "metal"
|
||||
@@ -465,7 +473,7 @@ var/list/name_to_material
|
||||
|
||||
/material/plasteel/titanium/hull
|
||||
name = MAT_TITANIUMHULL
|
||||
stack_type = null
|
||||
stack_type = /obj/item/stack/material/titanium/hull
|
||||
icon_base = "hull"
|
||||
icon_reinf = "reinf_mesh"
|
||||
|
||||
@@ -686,7 +694,7 @@ var/list/name_to_material
|
||||
sheet_plural_name = "ingots"
|
||||
|
||||
/material/lead
|
||||
name = "lead"
|
||||
name = MAT_LEAD
|
||||
stack_type = /obj/item/stack/material/lead
|
||||
icon_colour = "#273956"
|
||||
weight = 23 // Lead is a bit more dense than silver IRL, and silver has 22 ingame.
|
||||
@@ -695,6 +703,74 @@ var/list/name_to_material
|
||||
sheet_plural_name = "ingots"
|
||||
radiation_resistance = 25 // Lead is Special and so gets to block more radiation than it normally would with just weight, totalling in 48 protection.
|
||||
|
||||
// Particle Smasher and other exotic materials.
|
||||
|
||||
/material/verdantium
|
||||
name = MAT_VERDANTIUM
|
||||
stack_type = /obj/item/stack/material/verdantium
|
||||
icon_base = "metal"
|
||||
door_icon_base = "metal"
|
||||
icon_reinf = "reinf_metal"
|
||||
icon_colour = "#4FE95A"
|
||||
integrity = 80
|
||||
protectiveness = 15
|
||||
weight = 15
|
||||
hardness = 30
|
||||
shard_type = SHARD_SHARD
|
||||
negation = 15
|
||||
conductivity = 60
|
||||
reflectivity = 0.3
|
||||
radiation_resistance = 5
|
||||
stack_origin_tech = list(TECH_MATERIAL = 6, TECH_POWER = 5, TECH_BIO = 4)
|
||||
sheet_singular_name = "sheet"
|
||||
sheet_plural_name = "sheets"
|
||||
|
||||
/material/morphium
|
||||
name = MAT_MORPHIUM
|
||||
stack_type = /obj/item/stack/material/morphium
|
||||
icon_base = "metal"
|
||||
door_icon_base = "metal"
|
||||
icon_colour = "#37115A"
|
||||
icon_reinf = "reinf_metal"
|
||||
protectiveness = 60
|
||||
integrity = 300
|
||||
conductivity = 1.5
|
||||
hardness = 90
|
||||
shard_type = SHARD_SHARD
|
||||
weight = 30
|
||||
negation = 25
|
||||
explosion_resistance = 85
|
||||
reflectivity = 0.2
|
||||
radiation_resistance = 10
|
||||
stack_origin_tech = list(TECH_MATERIAL = 8, TECH_ILLEGAL = 1, TECH_PHORON = 4, TECH_BLUESPACE = 4, TECH_ARCANE = 1)
|
||||
|
||||
/material/morphium/hull
|
||||
name = MAT_MORPHIUMHULL
|
||||
stack_type = /obj/item/stack/material/morphium/hull
|
||||
icon_base = "hull"
|
||||
icon_reinf = "reinf_mesh"
|
||||
|
||||
/material/valhollide
|
||||
name = MAT_VALHOLLIDE
|
||||
stack_type = /obj/item/stack/material/valhollide
|
||||
icon_base = "stone"
|
||||
door_icon_base = "stone"
|
||||
icon_reinf = "reinf_mesh"
|
||||
icon_colour = "##FFF3B2"
|
||||
protectiveness = 30
|
||||
integrity = 240
|
||||
weight = 30
|
||||
hardness = 45
|
||||
negation = 2
|
||||
conductivity = 5
|
||||
reflectivity = 0.5
|
||||
radiation_resistance = 20
|
||||
spatial_instability = 30
|
||||
stack_origin_tech = list(TECH_MATERIAL = 7, TECH_PHORON = 5, TECH_BLUESPACE = 5)
|
||||
sheet_singular_name = "gem"
|
||||
sheet_plural_name = "gems"
|
||||
|
||||
|
||||
// Adminspawn only, do not let anyone get this.
|
||||
/material/alienalloy
|
||||
name = "alienalloy"
|
||||
|
||||
Reference in New Issue
Block a user