implementing calorit (new mineral)

Just setting the scene for the item, basically. It doesn't have a single sprite yet, nor does it have any 'special' code
This commit is contained in:
Sonoida
2023-01-04 18:06:04 +01:00
parent 1efb0fdcfc
commit 60af4e60c5
12 changed files with 360 additions and 7 deletions
+2 -1
View File
@@ -69,9 +69,10 @@
#define MAT_PLASMA "$plasma"
#define MAT_BLUESPACE "$bluespace"
#define MAT_BANANIUM "$bananium"
#define MAT_CALORIT "$calorit" //GS13
#define MAT_TITANIUM "$titanium"
#define MAT_BIOMASS "$biomass"
#define MAT_PLASTIC "$plastic"
#define MAT_PLASTIC "$plastic"
//The amount of materials you get from a sheet of mineral like iron/diamond/glass etc
#define MINERAL_MATERIAL_AMOUNT 2000
//The maximum size of a stack object.
@@ -381,6 +381,12 @@
sheet_type = /obj/item/stack/sheet/mineral/bananium
coin_type = /obj/item/coin/bananium
/datum/material/calorit //GS13
name = "Calorit"
id = MAT_CALORIT
sheet_type = /obj/item/stack/sheet/mineral/calorit
coin_type = /obj/item/coin/calorit
/datum/material/titanium
name = "Titanium"
id = MAT_TITANIUM
+1 -1
View File
@@ -54,7 +54,7 @@ handles linking back and forth.
/datum/component/remote_materials/proc/_MakeLocal()
silo = null
mat_container = parent.AddComponent(/datum/component/material_container,
list(MAT_METAL, MAT_GLASS, MAT_SILVER, MAT_GOLD, MAT_DIAMOND, MAT_PLASMA, MAT_URANIUM, MAT_BANANIUM, MAT_TITANIUM, MAT_BLUESPACE, MAT_PLASTIC),
list(MAT_METAL, MAT_GLASS, MAT_SILVER, MAT_GOLD, MAT_DIAMOND, MAT_PLASMA, MAT_URANIUM, MAT_BANANIUM, MAT_CALORIT, MAT_TITANIUM, MAT_BLUESPACE, MAT_PLASTIC),
local_size,
FALSE,
/obj/item/stack)
+1 -1
View File
@@ -18,7 +18,7 @@
var/item_recycle_sound = 'sound/items/welder.ogg'
/obj/machinery/recycler/Initialize()
AddComponent(/datum/component/material_container, list(MAT_METAL, MAT_GLASS, MAT_PLASMA, MAT_SILVER, MAT_GOLD, MAT_DIAMOND, MAT_URANIUM, MAT_BANANIUM, MAT_TITANIUM, MAT_BLUESPACE, MAT_PLASTIC), INFINITY, FALSE, null, null, null, TRUE)
AddComponent(/datum/component/material_container, list(MAT_METAL, MAT_GLASS, MAT_PLASMA, MAT_SILVER, MAT_GOLD, MAT_DIAMOND, MAT_URANIUM, MAT_BANANIUM, MAT_CALORIT MAT_TITANIUM, MAT_BLUESPACE, MAT_PLASTIC), INFINITY, FALSE, null, null, null, TRUE)
AddComponent(/datum/component/butchering, 1, amount_produced,amount_produced/5)
. = ..()
update_icon()
@@ -278,6 +278,32 @@ GLOBAL_LIST_INIT(bananium_recipes, list ( \
recipes = GLOB.bananium_recipes
. = ..()
/*
* Calorit - GS13
*/
/obj/item/stack/sheet/mineral/calorit
name = "calorit"
icon_state = "sheet-calorit"
item_state = "sheet-calorit"
singular_name = "calorit sheet"
sheettype = "calorit"
materials = list(MAT_CALORIT=MINERAL_MATERIAL_AMOUNT)
novariants = TRUE
grind_results = list(/datum/reagent/consumable/lipoifier = 10)
point_value = 40
merge_type = /obj/item/stack/sheet/mineral/calorit
GLOBAL_LIST_INIT(calorit_recipes, list ( \
new/datum/stack_recipe("calorit tile", /obj/item/stack/tile/mineral/calorit, 1, 4, 20), \
// new/datum/stack_recipe("Fatty Statue", /obj/structure/statue/calorit/fatty, 5, one_per_turf = 1, on_floor = 1), \
))
/obj/item/stack/sheet/mineral/calorit/Initialize(mapload, new_amount, merge = TRUE)
recipes = GLOB.calorit_recipes
. = ..()
/*
* Titanium
*/
@@ -447,4 +473,4 @@ GLOBAL_LIST_INIT(abductor_recipes, list ( \
amount = 5
/obj/item/stack/sheet/mineral/coal/ten
amount = 10
amount = 10
@@ -52,6 +52,15 @@
mineralType = "bananium"
materials = list(MAT_BANANIUM=500)
/obj/item/stack/tile/mineral/calorit //GS13
name = "calorit tile"
singular_name = "calorit floor tile"
desc = "A tile made out of calorit. Bwwooomphf."
icon_state = "tile_calorit"
turf_type = /turf/open/floor/mineral/calorit
mineralType = "calorit"
materials = list(MAT_CALORIT=500)
/obj/item/stack/tile/mineral/abductor
name = "alien floor tile"
singular_name = "alien floor tile"
@@ -104,4 +113,4 @@
icon_state = "tile_basaltstone"
turf_type = /turf/open/floor/mineral/basaltstone_floor
mineralType = "sandstone"
materials = list(MAT_SANDSTONE=500)
materials = list(MAT_SANDSTONE=500)
@@ -104,6 +104,7 @@
/obj/item/stack/sheet/mineral/uranium,
/obj/item/stack/sheet/mineral/diamond,
/obj/item/stack/sheet/mineral/bananium,
/obj/item/stack/sheet/mineral/calorit,
/obj/item/stack/sheet/plasteel,
/obj/item/stack/sheet/mineral/titanium,
/obj/item/stack/sheet/mineral/plastitanium,
@@ -216,6 +216,15 @@
mineral = "bananium"
glass_type = /obj/machinery/door/airlock/bananium/glass
/obj/structure/door_assembly/door_assembly_calorit //GS13
name = "calorit airlock assembly"
desc = "Very inviting."
icon = 'icons/obj/doors/airlocks/station/calorit.dmi'
base_name = "calorit airlock"
airlock_type = /obj/machinery/door/airlock/calorit
mineral = "calorit"
glass_type = /obj/machinery/door/airlock/calorit/glass
/obj/structure/door_assembly/door_assembly_sandstone
name = "sandstone airlock assembly"
icon = 'icons/obj/doors/airlocks/station/sandstone.dmi'
@@ -263,6 +263,15 @@
walltype = /turf/closed/wall/mineral/bananium
canSmoothWith = list(/obj/structure/falsewall/bananium, /turf/closed/wall/mineral/bananium)
/obj/structure/falsewall/calorit //GS13
name = "calorit wall"
desc = "A wall with calorit plating. Burp."
icon = 'icons/turf/walls/calorit_wall.dmi'
icon_state = "calorit"
mineral = /obj/item/stack/sheet/mineral/calorit
walltype = /turf/closed/wall/mineral/calorit
canSmoothWith = list(/obj/structure/falsewall/calorit, /turf/closed/wall/mineral/calorit)
/obj/structure/falsewall/sandstone
name = "sandstone wall"
@@ -203,6 +203,51 @@
/turf/open/floor/mineral/bananium/airless
initial_gas_mix = AIRLESS_ATMOS
//CALORIT - GS13
/turf/open/floor/mineral/calorit
article = "a"
name = "calorit floor"
icon_state = "calorit"
floor_tile = /obj/item/stack/tile/mineral/calorit
icons = list("calorit","calorit_dam")
var/last_event = 0
var/active = null
/turf/open/floor/mineral/calorit/Entered(var/mob/AM)
.=..()
if(!.)
if(istype(AM))
fatten()
/turf/open/floor/mineral/calorit/attackby(obj/item/W, mob/user, params)
.=..()
if(!.)
fatten()
/turf/open/floor/mineral/calorit/attack_hand(mob/user)
.=..()
if(!.)
fatten()
/turf/open/floor/mineral/calorit/attack_paw(mob/user)
.=..()
if(!.)
fatten()
/turf/open/floor/mineral/calorit/proc/fatten()
if(!active)
if(world.time > last_event+15)
active = 1
radiation_pulse(src, 10)
for(var/turf/open/floor/mineral/calorit/T in orange(1,src))
T.radiate()
last_event = world.time
active = 0
return
//DIAMOND
/turf/open/floor/mineral/diamond
@@ -290,4 +335,4 @@
name = "basalt floor"
icon_state = "basaltstone"
floor_tile = /obj/item/stack/tile/mineral/basaltstone
icons = list("basaltstone","basaltstone_dam")
icons = list("basaltstone","basaltstone_dam")
+6
View File
@@ -355,6 +355,12 @@
spread = 0
scan_state = "rock_Bananium"
/turf/closed/mineral/calorit //GS13
mineralType = /obj/item/stack/ore/calorit
mineralAmt = 3
spreadChance = 1
spread = 0
scan_state = "rock_Calorit"
/turf/closed/mineral/bscrystal
mineralType = /obj/item/stack/ore/bluespace_crystal