mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-02-06 06:19:24 +00:00
250 lines
9.2 KiB
Plaintext
250 lines
9.2 KiB
Plaintext
///Has no special properties.
|
|
/datum/material/iron
|
|
name = "iron"
|
|
id = "iron"
|
|
desc = "Common iron ore often found in sedimentary and igneous layers of the crust."
|
|
color = "#878687"
|
|
categories = list(MAT_CATEGORY_ORE = TRUE, MAT_CATEGORY_RIGID = TRUE)
|
|
sheet_type = /obj/item/stack/sheet/metal
|
|
value_per_unit = 0.0025
|
|
|
|
///Breaks extremely easily but is transparent.
|
|
/datum/material/glass
|
|
name = "glass"
|
|
id = "glass"
|
|
desc = "Glass forged by melting sand."
|
|
color = "#88cdf1"
|
|
alpha = 150
|
|
categories = list(MAT_CATEGORY_RIGID = TRUE)
|
|
integrity_modifier = 0.1
|
|
sheet_type = /obj/item/stack/sheet/glass
|
|
value_per_unit = 0.0025
|
|
beauty_modifier = 0.05
|
|
armor_modifiers = list("melee" = 0.2, "bullet" = 0.2, "laser" = 0, "energy" = 1, "bomb" = 0, "bio" = 0.2, "rad" = 0.2, "fire" = 1, "acid" = 0.2) // yeah ok retard
|
|
|
|
/*
|
|
Color matrices are like regular colors but unlike with normal colors, you can go over 255 on a channel.
|
|
Unless you know what you're doing, only use the first three numbers. They're in RGB order.
|
|
*/
|
|
|
|
///Has no special properties. Could be good against vampires in the future perhaps.
|
|
/datum/material/silver
|
|
name = "silver"
|
|
id = "silver"
|
|
desc = "Silver"
|
|
color = list(255/255, 284/255, 302/255,0, 0,0,0,0, 0,0,0,0, 0,0,0,1, 0,0,0,0)
|
|
categories = list(MAT_CATEGORY_ORE = TRUE, MAT_CATEGORY_RIGID = TRUE)
|
|
sheet_type = /obj/item/stack/sheet/mineral/silver
|
|
value_per_unit = 0.025
|
|
beauty_modifier = 0.075
|
|
|
|
///Slight force increase
|
|
/datum/material/gold
|
|
name = "gold"
|
|
id = "gold"
|
|
desc = "Gold"
|
|
color = list(340/255, 240/255, 50/255,0, 0,0,0,0, 0,0,0,0, 0,0,0,1, 0,0,0,0) //gold is shiny, but not as bright as bananium
|
|
strength_modifier = 1.2
|
|
categories = list(MAT_CATEGORY_ORE = TRUE, MAT_CATEGORY_RIGID = TRUE)
|
|
sheet_type = /obj/item/stack/sheet/mineral/gold
|
|
value_per_unit = 0.0625
|
|
beauty_modifier = 0.15
|
|
armor_modifiers = list("melee" = 1.1, "bullet" = 1.1, "laser" = 1.15, "energy" = 1.15, "bomb" = 1, "bio" = 1, "rad" = 1, "fire" = 0.7, "acid" = 1.1)
|
|
|
|
///Has no special properties
|
|
/datum/material/diamond
|
|
name = "diamond"
|
|
id = "diamond"
|
|
desc = "Highly pressurized carbon"
|
|
color = list(48/255, 272/255, 301/255,0, 0,0,0,0, 0,0,0,0, 0,0,0,1, 0,0,0,0)
|
|
categories = list(MAT_CATEGORY_ORE = TRUE, MAT_CATEGORY_RIGID = TRUE)
|
|
sheet_type = /obj/item/stack/sheet/mineral/diamond
|
|
alpha = 132
|
|
value_per_unit = 0.25
|
|
beauty_modifier = 0.3
|
|
armor_modifiers = list("melee" = 1.3, "bullet" = 1.3, "laser" = 0.6, "energy" = 1, "bomb" = 1.2, "bio" = 1, "rad" = 1, "fire" = 1, "acid" = 1)
|
|
|
|
///Is slightly radioactive
|
|
/datum/material/uranium
|
|
name = "uranium"
|
|
id = "uranium"
|
|
desc = "Uranium"
|
|
color = rgb(48, 237, 26)
|
|
categories = list(MAT_CATEGORY_ORE = TRUE, MAT_CATEGORY_RIGID = TRUE)
|
|
sheet_type = /obj/item/stack/sheet/mineral/uranium
|
|
value_per_unit = 0.05
|
|
beauty_modifier = 0.3 //It shines so beautiful
|
|
armor_modifiers = list("melee" = 1.5, "bullet" = 1.4, "laser" = 0.5, "energy" = 0.5, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 1, "acid" = 1)
|
|
|
|
/datum/material/uranium/on_applied(atom/source, amount, material_flags)
|
|
. = ..()
|
|
source.AddComponent(/datum/component/radioactive, amount / 20, source, 0) //half-life of 0 because we keep on going.
|
|
|
|
/datum/material/uranium/on_removed(atom/source, material_flags)
|
|
. = ..()
|
|
qdel(source.GetComponent(/datum/component/radioactive))
|
|
|
|
///Adds firestacks on hit (Still needs support to turn into gas on destruction)
|
|
/datum/material/plasma
|
|
name = "plasma"
|
|
id = "plasma"
|
|
desc = "Isn't plasma a state of matter? Oh whatever."
|
|
color = list(298/255, 46/255, 352/255,0, 0,0,0,0, 0,0,0,0, 0,0,0,1, 0,0,0,0)
|
|
categories = list(MAT_CATEGORY_ORE = TRUE, MAT_CATEGORY_RIGID = TRUE)
|
|
sheet_type = /obj/item/stack/sheet/mineral/plasma
|
|
value_per_unit = 0.1
|
|
beauty_modifier = 0.15
|
|
armor_modifiers = list("melee" = 1.4, "bullet" = 0.7, "laser" = 0, "energy" = 1.2, "bomb" = 0, "bio" = 1.2, "rad" = 1, "fire" = 0, "acid" = 0.5)
|
|
|
|
/datum/material/plasma/on_applied(atom/source, amount, material_flags)
|
|
. = ..()
|
|
if(ismovable(source))
|
|
source.AddElement(/datum/element/firestacker, amount=1)
|
|
source.AddComponent(/datum/component/explodable, 0, 0, amount / 2500, amount / 1250)
|
|
|
|
/datum/material/plasma/on_removed(atom/source, material_flags)
|
|
. = ..()
|
|
source.RemoveElement(/datum/element/firestacker, amount=1)
|
|
qdel(source.GetComponent(/datum/component/explodable))
|
|
|
|
///Can cause bluespace effects on use. (Teleportation) (Not yet implemented)
|
|
/datum/material/bluespace
|
|
name = "bluespace crystal"
|
|
id = "bluespace_crystal"
|
|
desc = "Crystals with bluespace properties"
|
|
color = list(119/255, 217/255, 396/255,0, 0,0,0,0, 0,0,0,0, 0,0,0,1, 0,0,0,0)
|
|
alpha = 200
|
|
categories = list(MAT_CATEGORY_ORE = TRUE)
|
|
beauty_modifier = 0.5
|
|
sheet_type = /obj/item/stack/sheet/bluespace_crystal
|
|
value_per_unit = 0.15
|
|
|
|
///Honks and slips
|
|
/datum/material/bananium
|
|
name = "bananium"
|
|
id = "bananium"
|
|
desc = "Material with hilarious properties"
|
|
color = list(460/255, 464/255, 0, 0, 0,0,0,0, 0,0,0,0, 0,0,0,1, 0,0,0,0) //obnoxiously bright yellow
|
|
categories = list(MAT_CATEGORY_ORE = TRUE, MAT_CATEGORY_RIGID = TRUE)
|
|
sheet_type = /obj/item/stack/sheet/mineral/bananium
|
|
value_per_unit = 0.5
|
|
beauty_modifier = 0.5
|
|
armor_modifiers = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 100, "bio" = 0, "rad" = 0, "fire" = 10, "acid" = 0) //Clowns cant be blown away.
|
|
|
|
/datum/material/bananium/on_applied(atom/source, amount, material_flags)
|
|
. = ..()
|
|
source.AddComponent(/datum/component/squeak, list('sound/items/bikehorn.ogg'=1), 50)
|
|
source.AddComponent(/datum/component/slippery, min(amount / 10, 80))
|
|
|
|
|
|
/datum/material/bananium/on_removed(atom/source, amount, material_flags)
|
|
. = ..()
|
|
qdel(source.GetComponent(/datum/component/slippery))
|
|
qdel(source.GetComponent(/datum/component/squeak))
|
|
|
|
|
|
///Mediocre force increase
|
|
/datum/material/titanium
|
|
name = "titanium"
|
|
id = "titanium"
|
|
desc = "Titanium"
|
|
color = "#b3c0c7"
|
|
strength_modifier = 1.3
|
|
categories = list(MAT_CATEGORY_ORE = TRUE, MAT_CATEGORY_RIGID = TRUE)
|
|
sheet_type = /obj/item/stack/sheet/mineral/titanium
|
|
value_per_unit = 0.0625
|
|
beauty_modifier = 0.05
|
|
armor_modifiers = list("melee" = 1.35, "bullet" = 1.3, "laser" = 1.3, "energy" = 1.25, "bomb" = 1.25, "bio" = 1, "rad" = 1, "fire" = 0.7, "acid" = 1)
|
|
|
|
/datum/material/runite
|
|
name = "runite"
|
|
id = "runite"
|
|
desc = "Runite"
|
|
color = "#3F9995"
|
|
strength_modifier = 1.3
|
|
categories = list(MAT_CATEGORY_RIGID = TRUE)
|
|
sheet_type = /obj/item/stack/sheet/mineral/runite
|
|
value_per_unit = 0.3
|
|
beauty_modifier = 0.5
|
|
armor_modifiers = list("melee" = 1.35, "bullet" = 2, "laser" = 0.5, "energy" = 1.25, "bomb" = 1.25, "bio" = 1, "rad" = 1, "fire" = 1.4, "acid" = 1) //rune is weak against magic lasers but strong against bullets. This is the combat triangle.
|
|
|
|
///Force decrease
|
|
/datum/material/plastic
|
|
name = "plastic"
|
|
id = "plastic"
|
|
desc = "Plastic"
|
|
color = "#caccd9"
|
|
strength_modifier = 0.85
|
|
sheet_type = /obj/item/stack/sheet/plastic
|
|
value_per_unit = 0.0125
|
|
beauty_modifier = -0.01
|
|
armor_modifiers = list("melee" = 1.5, "bullet" = 1.1, "laser" = 0.3, "energy" = 0.5, "bomb" = 1, "bio" = 1, "rad" = 1, "fire" = 1.1, "acid" = 1)
|
|
|
|
///Force decrease and mushy sound effect. (Not yet implemented)
|
|
/datum/material/biomass
|
|
name = "biomass"
|
|
id = "biomass"
|
|
desc = "Organic matter"
|
|
color = "#735b4d"
|
|
strength_modifier = 0.8
|
|
value_per_unit = 0.025
|
|
|
|
/datum/material/wood
|
|
name = "wood"
|
|
id = "wood"
|
|
desc = "Flexible, durable, but flamable. Hard to come across in space."
|
|
color = "#bb8e53"
|
|
strength_modifier = 0.5
|
|
categories = list(MAT_CATEGORY_RIGID = TRUE)
|
|
value_per_unit = 0.06
|
|
beauty_modifier = 0.1
|
|
armor_modifiers = list("melee" = 1.1, "bullet" = 1.1, "laser" = 0.4, "energy" = 0.4, "bomb" = 1, "bio" = 0.2, "rad" = 0, "fire" = 0, "acid" = 0.3)
|
|
|
|
/datum/material/wood/on_applied_obj(obj/source, amount, material_flags)
|
|
. = ..()
|
|
if(material_flags & MATERIAL_AFFECT_STATISTICS)
|
|
var/obj/wooden = source
|
|
wooden.resistance_flags |= FLAMMABLE
|
|
|
|
/datum/material/wood/on_removed_obj(obj/source, material_flags)
|
|
. = ..()
|
|
if(material_flags & MATERIAL_AFFECT_STATISTICS)
|
|
var/obj/wooden = source
|
|
wooden.resistance_flags &= ~FLAMMABLE
|
|
|
|
///Stronk force increase
|
|
/datum/material/adamantine
|
|
name = "adamantine"
|
|
id = "adamantine"
|
|
desc = "A powerful material made out of magic, I mean science!"
|
|
color = "#6d7e8e"
|
|
strength_modifier = 1.5
|
|
categories = list(MAT_CATEGORY_RIGID = TRUE)
|
|
sheet_type = /obj/item/stack/sheet/mineral/adamantine
|
|
value_per_unit = 0.25
|
|
beauty_modifier = 0.4
|
|
armor_modifiers = list("melee" = 1.5, "bullet" = 1.5, "laser" = 1.3, "energy" = 1.3, "bomb" = 1, "bio" = 1, "rad" = 1, "fire" = 2.5, "acid" = 1)
|
|
|
|
///RPG Magic.
|
|
/datum/material/mythril
|
|
name = "mythril"
|
|
id = "mythril"
|
|
desc = "How this even exists is byond me"
|
|
color = "#f2d5d7"
|
|
categories = list(MAT_CATEGORY_RIGID = TRUE)
|
|
sheet_type = /obj/item/stack/sheet/mineral/mythril
|
|
value_per_unit = 0.75
|
|
strength_modifier = 1.2
|
|
armor_modifiers = list("melee" = 1.5, "bullet" = 1.5, "laser" = 1.5, "energy" = 1.5, "bomb" = 1.5, "bio" = 1.5, "rad" = 1.5, "fire" = 1.5, "acid" = 1.5)
|
|
beauty_modifier = 0.5
|
|
|
|
/datum/material/mythril/on_applied_obj(atom/source, amount, material_flags)
|
|
. = ..()
|
|
if(istype(source, /obj/item))
|
|
source.AddComponent(/datum/component/fantasy)
|
|
|
|
/datum/material/mythril/on_removed_obj(atom/source, material_flags)
|
|
. = ..()
|
|
if(istype(source, /obj/item))
|
|
qdel(source.GetComponent(/datum/component/fantasy))
|