Progress...

This commit is contained in:
datlo
2019-02-02 17:51:25 +00:00
parent 778852a341
commit f98da3edf8
14 changed files with 1542 additions and 125 deletions
@@ -0,0 +1,55 @@
"a" = (/turf/template_noop,/area/template_noop)
"b" = (/turf/simulated/shuttle/wall,/area/shuttle/freegolem)
"c" = (/turf/simulated/shuttle/plating,/area/shuttle/freegolem)
"d" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating/airless,/area/shuttle/freegolem)
"e" = (/obj/structure/shuttle/engine/propulsion{dir = 8; icon_state = "burst_l"},/turf/space,/area/shuttle/freegolem)
"f" = (/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"g" = (/obj/machinery/door/airlock/shuttle,/obj/structure/fans/tiny,/turf/simulated/shuttle/plating,/area/shuttle/freegolem)
"h" = (/obj/item/storage/toolbox/mechanical,/turf/simulated/shuttle/plating,/area/shuttle/freegolem)
"i" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/shuttle/plating,/area/shuttle/freegolem)
"j" = (/obj/machinery/light/small,/turf/simulated/shuttle/plating,/area/shuttle/freegolem)
"k" = (/obj/machinery/door/airlock/shuttle,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"l" = (/obj/machinery/computer/arcade/battle,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"m" = (/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"n" = (/obj/machinery/light{dir = 1; on = 1},/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"o" = (/obj/structure/fans/tiny,/obj/machinery/door/airlock/shuttle,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"p" = (/obj/item/resonator,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"q" = (/obj/machinery/light{dir = 8},/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"r" = (/obj/machinery/mineral/ore_redemption,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"s" = (/obj/structure/statue/gold/rd{name = "statue of the Liberator"},/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"t" = (/obj/structure/computerframe,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"u" = (/obj/structure/extinguisher_cabinet{pixel_y = 30},/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"v" = (/obj/machinery/door/airlock/shuttle,/obj/structure/fans/tiny,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"w" = (/obj/item/book/manual/research_and_development{name = "Sacred Text of the Liberator"; pixel_x = -4; pixel_y = 3},/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/obj/structure/table/wood,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"x" = (/obj/machinery/light/small,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"y" = (/obj/item/resonator/upgraded,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"z" = (/obj/machinery/autolathe,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"A" = (/obj/structure/table/wood,/obj/machinery/reagentgrinder,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"B" = (/obj/machinery/computer/arcade/orion_trail,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"C" = (/obj/structure/extinguisher_cabinet{pixel_y = -30},/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"D" = (/obj/structure/table/wood,/obj/item/storage/firstaid/brute,/obj/item/storage/firstaid/brute,/obj/item/storage/firstaid/brute,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"E" = (/obj/structure/table/wood,/obj/structure/table/wood,/obj/item/storage/firstaid/fire,/obj/item/storage/firstaid/fire,/obj/item/storage/firstaid/fire,/obj/machinery/light,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"F" = (/obj/structure/table/wood,/obj/item/storage/firstaid/adv,/obj/item/storage/firstaid/adv,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"G" = (/obj/structure/table/wood,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/shuttle/freegolem)
"H" = (/obj/machinery/light/small{dir = 1},/turf/simulated/shuttle/plating,/area/shuttle/freegolem)
"I" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/shuttle/plating,/area/shuttle/freegolem)
"J" = (/obj/structure/ore_box,/turf/simulated/shuttle/plating,/area/shuttle/freegolem)
(1,1,1) = {"
aaaaabbbbbbbbbbggbbb
aaaaabcccccccchccide
aaaaabccjccjcccjcide
aabbbbkkbbbbkkbbbbbb
aablfmffmfbffffnffde
aaofffffppkfffffffde
bbbkkbbbbbbqffffrbbb
bstffffmffkffffffkuv
bwfffxffffkffffffkxv
bbbkkbbbbbbqfffyzbbb
aaofffffppkffffffAde
aabBfxffxfbCffDEFGde
aabbbbkkbbbbkkbbbbbb
aaaaabccHccHcccHcIde
aaaaabJJJJJJJJhccIde
aaaaabbbbbbbbbbggbbb
"}
+1
View File
@@ -24,6 +24,7 @@
#define SPECIAL_ROLE_CULTIST "Cultist"
#define SPECIAL_ROLE_DEATHSQUAD "Death Commando"
#define SPECIAL_ROLE_ERT "Response Team"
#define SPECIAL_ROLE_FREE_GOLEM "Free Golem"
#define SPECIAL_ROLE_GOLEM "Golem"
#define SPECIAL_ROLE_HEAD_REV "Head Revolutionary"
#define SPECIAL_ROLE_HONKSQUAD "Honksquad"
+1
View File
@@ -9,6 +9,7 @@ GLOBAL_LIST_INIT(first_names_female, file2list("config/names/first_female.txt"))
GLOBAL_LIST_INIT(last_names, file2list("config/names/last.txt"))
GLOBAL_LIST_INIT(clown_names, file2list("config/names/clown.txt"))
GLOBAL_LIST_INIT(mime_names, file2list("config/names/mime.txt"))
GLOBAL_LIST_INIT(golem_names, file2list("config/names/golem.txt"))
GLOBAL_LIST_INIT(verbs, file2list("config/names/verbs.txt"))
GLOBAL_LIST_INIT(adjectives, file2list("config/names/adjectives.txt"))
@@ -953,6 +953,10 @@ to destroy them and players will be able to make replacements.
/obj/item/stock_parts/console_screen = 1,
/obj/item/stock_parts/matter_bin = 3)
/obj/item/circuitboard/machine/mining_equipment_vendor/golem
name = "Golem Ship Equipment Vendor (Machine Board)"
build_path = /obj/machinery/mineral/equipment_vendor/golem
/obj/item/circuitboard/clawgame
name = "circuit board (Claw Game)"
build_path = /obj/machinery/arcade/claw
@@ -0,0 +1,251 @@
//Ancient cryogenic sleepers. Players become NT crewmen from a hundred year old space station, now on the verge of collapse.
/obj/effect/mob_spawn/human/oldsec
name = "old cryogenics pod"
desc = "A humming cryo pod. You can barely recognise a security uniform underneath the built up ice. The machine is attempting to wake up its occupant."
mob_name = "a security officer"
icon = 'icons/obj/cryogenic2.dmi'
icon_state = "sleeper"
roundstart = FALSE
death = FALSE
random = TRUE
mob_species = /datum/species/human
flavour_text = "<span class='big bold'>You are a security officer working for Nanotrasen,</span><b> stationed onboard a state of the art research station. You vaguely recall rushing into a \
cryogenics pod due to an oncoming radiation storm. The last thing you remember is the station's Artificial Program telling you that you would only be asleep for eight hours. As you open \
your eyes, everything seems rusted and broken, a dark feeling swells in your gut as you climb out of your pod. \
Work as a team with your fellow survivors and do not abandon them.</b>"
uniform = /obj/item/clothing/under/retro/security
shoes = /obj/item/clothing/shoes/jackboots
id = /obj/item/card/id/away/old/sec
r_pocket = /obj/item/restraints/handcuffs
l_pocket = /obj/item/flash
assignedrole = "Ancient Crew"
/obj/effect/mob_spawn/human/oldsec/Destroy()
new /obj/structure/showcase/machinery/oldpod/used(drop_location())
return ..()
/obj/effect/mob_spawn/human/oldmed
name = "old cryogenics pod"
desc = "A humming cryo pod. You can barely recognise a medical uniform underneath the built up ice. The machine is attempting to wake up its occupant."
mob_name = "a medical doctor"
icon = 'icons/obj/cryogenic2.dmi'
icon_state = "sleeper"
roundstart = FALSE
death = FALSE
random = TRUE
mob_species = /datum/species/human
flavour_text = "<span class='big bold'>You are a medical working for Nanotrasen,</span><b> stationed onboard a state of the art research station. You vaguely recall rushing into a \
cryogenics pod due to an oncoming radiation storm. The last thing you remember is the station's Artificial Program telling you that you would only be asleep for eight hours. As you open \
your eyes, everything seems rusted and broken, a dark feeling swells in your gut as you climb out of your pod. \
Work as a team with your fellow survivors and do not abandon them.</b>"
uniform = /obj/item/clothing/under/retro/medical
shoes = /obj/item/clothing/shoes/black
id = /obj/item/card/id/away/old/med
l_pocket = /obj/item/stack/medical/ointment
r_pocket = /obj/item/stack/medical/ointment
assignedrole = "Ancient Crew"
/obj/effect/mob_spawn/human/oldmed/Destroy()
new /obj/structure/showcase/machinery/oldpod/used(drop_location())
return ..()
/obj/effect/mob_spawn/human/oldeng
name = "old cryogenics pod"
desc = "A humming cryo pod. You can barely recognise an engineering uniform underneath the built up ice. The machine is attempting to wake up its occupant."
mob_name = "an engineer"
icon = 'icons/obj/cryogenic2.dmi'
icon_state = "sleeper"
roundstart = FALSE
death = FALSE
random = TRUE
mob_species = /datum/species/human
flavour_text = "<span class='big bold'>You are an engineer working for Nanotrasen,</span><b> stationed onboard a state of the art research station. You vaguely recall rushing into a \
cryogenics pod due to an oncoming radiation storm. The last thing you remember is the station's Artificial Program telling you that you would only be asleep for eight hours. As you open \
your eyes, everything seems rusted and broken, a dark feeling swells in your gut as you climb out of your pod. \
Work as a team with your fellow survivors and do not abandon them.</b>"
uniform = /obj/item/clothing/under/retro/engineering
shoes = /obj/item/clothing/shoes/workboots
id = /obj/item/card/id/away/old/eng
gloves = /obj/item/clothing/gloves/color/fyellow/old
l_pocket = /obj/item/tank/emergency_oxygen
assignedrole = "Ancient Crew"
/obj/effect/mob_spawn/human/oldeng/Destroy()
new /obj/structure/showcase/machinery/oldpod/used(drop_location())
return ..()
/obj/effect/mob_spawn/human/oldsci
name = "old cryogenics pod"
desc = "A humming cryo pod. You can barely recognise a science uniform underneath the built up ice. The machine is attempting to wake up its occupant."
mob_name = "a scientist"
icon = 'icons/obj/cryogenic2.dmi'
icon_state = "sleeper"
roundstart = FALSE
death = FALSE
random = TRUE
mob_species = /datum/species/human
flavour_text = "<span class='big bold'>You are a scientist working for Nanotrasen,</span><b> stationed onboard a state of the art research station. You vaguely recall rushing into a \
cryogenics pod due to an oncoming radiation storm. The last thing you remember is the station's Artificial Program telling you that you would only be asleep for eight hours. As you open \
your eyes, everything seems rusted and broken, a dark feeling swells in your gut as you climb out of your pod. \
Work as a team with your fellow survivors and do not abandon them.</b>"
uniform = /obj/item/clothing/under/retro/science
shoes = /obj/item/clothing/shoes/laceup
id = /obj/item/card/id/away/old/sci
l_pocket = /obj/item/stack/medical/bruise_pack
assignedrole = "Ancient Crew"
/obj/effect/mob_spawn/human/oldsci/Destroy()
new /obj/structure/showcase/machinery/oldpod/used(drop_location())
return ..()
/obj/structure/showcase/machinery/oldpod
name = "damaged cryogenic pod"
desc = "A damaged cryogenic pod long since lost to time, including its former occupant..."
icon = 'icons/obj/cryogenic2.dmi'
icon_state = "sleeper-open"
/obj/structure/showcase/machinery/oldpod/used
name = "opened cryogenic pod"
desc = "A cryogenic pod that has recently discharged its occupant. The pod appears non-functional."
//Golem shells: Spawns in Free Golem ships in lavaland. Ghosts become mineral golems and are advised to spread personal freedom.
/obj/item/golem_shell
name = "incomplete free golem shell"
icon = 'icons/obj/wizard.dmi'
icon_state = "construct"
desc = "The incomplete body of a golem. Add ten sheets of any mineral to finish."
var/shell_type = /obj/effect/mob_spawn/human/golem
var/has_owner = FALSE //if the resulting golem obeys someone
w_class = WEIGHT_CLASS_BULKY
/obj/item/golem_shell/attackby(obj/item/I, mob/user, params)
..()
var/static/list/golem_shell_species_types = list(
/obj/item/stack/sheet/metal = /datum/species/golem,
/obj/item/stack/sheet/glass = /datum/species/golem/glass,
/obj/item/stack/sheet/plasteel = /datum/species/golem/plasteel,
/obj/item/stack/sheet/mineral/sandstone = /datum/species/golem/sand,
/obj/item/stack/sheet/mineral/plasma = /datum/species/golem/plasma,
/obj/item/stack/sheet/mineral/diamond = /datum/species/golem/diamond,
/obj/item/stack/sheet/mineral/gold = /datum/species/golem/gold,
/obj/item/stack/sheet/mineral/silver = /datum/species/golem/silver,
/obj/item/stack/sheet/mineral/uranium = /datum/species/golem/uranium,
/obj/item/stack/sheet/mineral/bananium = /datum/species/golem/bananium,
/obj/item/stack/sheet/mineral/tranquillite = /datum/species/golem/tranquillite,
/obj/item/stack/sheet/mineral/titanium = /datum/species/golem/titanium,
/obj/item/stack/sheet/mineral/plastitanium = /datum/species/golem/plastitanium,
/obj/item/stack/sheet/mineral/abductor = /datum/species/golem/alloy,
/obj/item/stack/sheet/mineral/wood = /datum/species/golem/wood,
/obj/item/stack/sheet/bluespace_crystal = /datum/species/golem/bluespace,
/obj/item/stack/sheet/runed_metal = /datum/species/golem/runic,
/obj/item/stack/medical/gauze = /datum/species/golem/cloth,
/obj/item/stack/sheet/cloth = /datum/species/golem/cloth,
/obj/item/stack/sheet/plastic = /datum/species/golem/plastic,
/obj/item/stack/tile/brass = /datum/species/golem/clockwork,
/obj/item/stack/sheet/cardboard = /datum/species/golem/cardboard,
/obj/item/stack/sheet/leather = /datum/species/golem/leather,
/obj/item/stack/sheet/bone = /datum/species/golem/bone)
if(istype(I, /obj/item/stack))
var/obj/item/stack/O = I
var/species = golem_shell_species_types[O.merge_type]
if(species)
if(O.use(10))
to_chat(user, "You finish up the golem shell with ten sheets of [O].")
new shell_type(get_turf(src), species, user)
qdel(src)
else
to_chat(user, "You need at least ten sheets to finish a golem.")
else
to_chat(user, "You can't build a golem out of this kind of material.")
/obj/effect/mob_spawn/human/golem
name = "inert free golem shell"
desc = "A humanoid shape, empty, lifeless, and full of potential."
mob_name = "a free golem"
icon = 'icons/obj/wizard.dmi'
icon_state = "construct"
mob_species = /datum/species/golem
roundstart = FALSE
death = FALSE
anchored = FALSE
move_resist = MOVE_FORCE_NORMAL
density = FALSE
var/has_owner = FALSE
var/can_transfer = TRUE //if golems can switch bodies to this new shell
var/mob/living/owner = null //golem's owner if it has one
flavour_text = "<span class='big bold'>You are a Free Golem.</span><b> Your family worships <span class='danger'>The Liberator</span>. In his infinite and divine wisdom, he set your clan free to \
travel the stars with a single declaration: \"Yeah go do whatever.\" Though you are bound to the one who created you, it is customary in your society to repeat those same words to newborn \
golems, so that no golem may ever be forced to serve again.</b>"
/obj/effect/mob_spawn/human/golem/Initialize(mapload, datum/species/golem/species = null, mob/creator = null)
if(species) //spawners list uses object name to register so this goes before ..()
name += " ([initial(species.prefix)])"
mob_species = species
. = ..()
var/area/A = get_area(src)
if(!mapload && A)
notify_ghosts("\A [initial(species.prefix)] golem shell has been completed in \the [A.name].", source = src, action=NOTIFY_ATTACK, flashwindow = FALSE, ignore_key = POLL_IGNORE_GOLEM)
if(has_owner && creator)
flavour_text = "<span class='big bold'>You are a Golem.</span><b> You move slowly, but are highly resistant to heat and cold as well as blunt trauma. You are unable to wear clothes, but can still use most tools. \
Serve [creator], and assist [creator.p_them()] in completing [creator.p_their()] goals at any cost.</b>"
owner = creator
/obj/effect/mob_spawn/human/golem/special(mob/living/new_spawn, name)
var/datum/species/golem/X = mob_species
to_chat(new_spawn, "[initial(X.info_text)]")
if(!owner)
to_chat(new_spawn, "Build golem shells in the autolathe, and feed refined mineral sheets to the shells to bring them to life! You are generally a peaceful group unless provoked.")
else
new_spawn.mind.store_memory("<b>Serve [owner.real_name], your creator.</b>")
new_spawn.mind.enslave_mind_to_creator(owner)
log_game("[key_name(new_spawn)] possessed a golem shell enslaved to [key_name(owner)].")
log_admin("[key_name(new_spawn)] possessed a golem shell enslaved to [key_name(owner)].")
if(ishuman(new_spawn))
var/mob/living/carbon/human/H = new_spawn
if(has_owner)
var/datum/species/golem/G = H.dna.species
G.owner = owner
H.set_cloned_appearance()
if(!name)
if(has_owner)
H.fully_replace_character_name(null, "[initial(X.prefix)] Golem ([rand(1,999)])")
else
H.fully_replace_character_name(null, H.dna.species.random_name())
else
H.fully_replace_character_name(null, name)
if(has_owner)
new_spawn.mind.assigned_role = "Servant Golem"
else
new_spawn.mind.assigned_role = "Free Golem"
/obj/effect/mob_spawn/human/golem/attack_hand(mob/user)
. = ..()
if(.)
return
if(isgolem(user) && can_transfer)
var/transfer_choice = alert("Transfer your soul to [src]? (Warning, your old body will die!)",,"Yes","No")
if(transfer_choice != "Yes")
return
if(QDELETED(src) || uses <= 0)
return
log_game("[key_name(user)] golem-swapped into [src]")
user.visible_message("<span class='notice'>A faint light leaves [user], moving to [src] and animating it!</span>","<span class='notice'>You leave your old body behind, and transfer into [src]!</span>")
show_flavour = FALSE
create(ckey = user.ckey,name = user.real_name)
user.death()
return
/obj/effect/mob_spawn/human/golem/servant
has_owner = TRUE
name = "inert servant golem shell"
mob_name = "a servant golem"
/obj/effect/mob_spawn/human/golem/adamantine
name = "dust-caked free golem shell"
desc = "A humanoid shape, empty, lifeless, and full of potential."
mob_name = "a free golem"
can_transfer = FALSE
mob_species = /datum/species/golem/adamantine
@@ -0,0 +1,66 @@
//Items
/obj/item/bedsheet/rd/royal_cape
name = "Royal Cape of the Liberator"
desc = "Majestic."
dream_messages = list("mining", "stone", "a golem", "freedom", "doing whatever")
/obj/item/storage/box/rndboards
name = "the Liberator's legacy"
desc = "A box containing a gift for worthy golems."
/obj/item/storage/box/rndboards/New()
..()
contents = list()
new /obj/item/circuitboard/machine/protolathe(src)
new /obj/item/circuitboard/machine/destructive_analyzer(src)
new /obj/item/circuitboard/machine/circuit_imprinter(src)
new /obj/item/circuitboard/computer/rdconsole(src)
/obj/item/areaeditor/golem
name = "golem land claim"
desc = "Used to define new areas in space or on an asteroid."
fluffnotice = "Praise the Liberator!"
/obj/item/areaeditor/golem/attack_self(mob/user)
. = ..()
var/area/A = get_area()
if(get_area_type() == AREA_STATION)
. += "<p>According to the [src], you are now in <b>\"[sanitize(A.name)]\"</b>.</p>"
var/datum/browser/popup = new(user, "blueprints", "[src]", 700, 500)
popup.set_content(.)
popup.open()
onclose(usr, "blueprints")
/obj/item/disk/design_disk/golem_shell
name = "golem creation disk"
desc = "A gift from the Liberator."
icon_state = "datadisk1"
max_blueprints = 1
/obj/item/disk/design_disk/golem_shell/Initialize()
. = ..()
var/datum/design/golem_shell/G = new
blueprints[1] = G
/datum/design/golem_shell
name = "Golem Shell Construction"
desc = "Allows for the construction of a Golem Shell."
id = "golem"
build_type = AUTOLATHE
materials = list(MAT_METAL = 40000)
build_path = /obj/item/golem_shell
category = list("Imported")
//Structures
//Areas
/area/shuttle/freegolem
name = "Free Golem Ship"
icon_state = "purple"
/area/mine/dangerous/explored/golem
name = "Small Asteroid"
@@ -360,116 +360,4 @@
/area/ruin/space/ancientstation/hivebot
name = "Hivebot Mothership"
icon_state = "teleporter"
// Mob Spawners
//Ancient cryogenic sleepers. Players become NT crewmen from a hundred year old space station, now on the verge of collapse.
/obj/effect/mob_spawn/human/oldsec
name = "old cryogenics pod"
desc = "A humming cryo pod. You can barely recognise a security uniform underneath the built up ice. The machine is attempting to wake up its occupant."
mob_name = "a security officer"
icon = 'icons/obj/cryogenic2.dmi'
icon_state = "sleeper"
roundstart = FALSE
death = FALSE
random = TRUE
mob_species = /datum/species/human
flavour_text = "<span class='big bold'>You are a security officer working for Nanotrasen,</span><b> stationed onboard a state of the art research station. You vaguely recall rushing into a \
cryogenics pod due to an oncoming radiation storm. The last thing you remember is the station's Artificial Program telling you that you would only be asleep for eight hours. As you open \
your eyes, everything seems rusted and broken, a dark feeling swells in your gut as you climb out of your pod. \
Work as a team with your fellow survivors and do not abandon them.</b>"
uniform = /obj/item/clothing/under/retro/security
shoes = /obj/item/clothing/shoes/jackboots
id = /obj/item/card/id/away/old/sec
r_pocket = /obj/item/restraints/handcuffs
l_pocket = /obj/item/flash
assignedrole = "Ancient Crew"
/obj/effect/mob_spawn/human/oldsec/Destroy()
new /obj/structure/showcase/machinery/oldpod/used(drop_location())
return ..()
/obj/effect/mob_spawn/human/oldmed
name = "old cryogenics pod"
desc = "A humming cryo pod. You can barely recognise a medical uniform underneath the built up ice. The machine is attempting to wake up its occupant."
mob_name = "a medical doctor"
icon = 'icons/obj/cryogenic2.dmi'
icon_state = "sleeper"
roundstart = FALSE
death = FALSE
random = TRUE
mob_species = /datum/species/human
flavour_text = "<span class='big bold'>You are a medical working for Nanotrasen,</span><b> stationed onboard a state of the art research station. You vaguely recall rushing into a \
cryogenics pod due to an oncoming radiation storm. The last thing you remember is the station's Artificial Program telling you that you would only be asleep for eight hours. As you open \
your eyes, everything seems rusted and broken, a dark feeling swells in your gut as you climb out of your pod. \
Work as a team with your fellow survivors and do not abandon them.</b>"
uniform = /obj/item/clothing/under/retro/medical
shoes = /obj/item/clothing/shoes/black
id = /obj/item/card/id/away/old/med
l_pocket = /obj/item/stack/medical/ointment
r_pocket = /obj/item/stack/medical/ointment
assignedrole = "Ancient Crew"
/obj/effect/mob_spawn/human/oldmed/Destroy()
new /obj/structure/showcase/machinery/oldpod/used(drop_location())
return ..()
/obj/effect/mob_spawn/human/oldeng
name = "old cryogenics pod"
desc = "A humming cryo pod. You can barely recognise an engineering uniform underneath the built up ice. The machine is attempting to wake up its occupant."
mob_name = "an engineer"
icon = 'icons/obj/cryogenic2.dmi'
icon_state = "sleeper"
roundstart = FALSE
death = FALSE
random = TRUE
mob_species = /datum/species/human
flavour_text = "<span class='big bold'>You are an engineer working for Nanotrasen,</span><b> stationed onboard a state of the art research station. You vaguely recall rushing into a \
cryogenics pod due to an oncoming radiation storm. The last thing you remember is the station's Artificial Program telling you that you would only be asleep for eight hours. As you open \
your eyes, everything seems rusted and broken, a dark feeling swells in your gut as you climb out of your pod. \
Work as a team with your fellow survivors and do not abandon them.</b>"
uniform = /obj/item/clothing/under/retro/engineering
shoes = /obj/item/clothing/shoes/workboots
id = /obj/item/card/id/away/old/eng
gloves = /obj/item/clothing/gloves/color/fyellow/old
l_pocket = /obj/item/tank/emergency_oxygen
assignedrole = "Ancient Crew"
/obj/effect/mob_spawn/human/oldeng/Destroy()
new /obj/structure/showcase/machinery/oldpod/used(drop_location())
return ..()
/obj/effect/mob_spawn/human/oldsci
name = "old cryogenics pod"
desc = "A humming cryo pod. You can barely recognise a science uniform underneath the built up ice. The machine is attempting to wake up its occupant."
mob_name = "a scientist"
icon = 'icons/obj/cryogenic2.dmi'
icon_state = "sleeper"
roundstart = FALSE
death = FALSE
random = TRUE
mob_species = /datum/species/human
flavour_text = "<span class='big bold'>You are a scientist working for Nanotrasen,</span><b> stationed onboard a state of the art research station. You vaguely recall rushing into a \
cryogenics pod due to an oncoming radiation storm. The last thing you remember is the station's Artificial Program telling you that you would only be asleep for eight hours. As you open \
your eyes, everything seems rusted and broken, a dark feeling swells in your gut as you climb out of your pod. \
Work as a team with your fellow survivors and do not abandon them.</b>"
uniform = /obj/item/clothing/under/retro/science
shoes = /obj/item/clothing/shoes/laceup
id = /obj/item/card/id/away/old/sci
l_pocket = /obj/item/stack/medical/bruise_pack
assignedrole = "Ancient Crew"
/obj/effect/mob_spawn/human/oldsci/Destroy()
new /obj/structure/showcase/machinery/oldpod/used(drop_location())
return ..()
/obj/structure/showcase/machinery/oldpod
name = "damaged cryogenic pod"
desc = "A damaged cryogenic pod long since lost to time, including its former occupant..."
icon = 'icons/obj/cryogenic2.dmi'
icon_state = "sleeper-open"
/obj/structure/showcase/machinery/oldpod/used
name = "opened cryogenic pod"
desc = "A cryogenic pod that has recently discharged its occupant. The pod appears non-functional."
icon_state = "teleporter"
+17
View File
@@ -426,6 +426,23 @@
new /datum/data/mining_equipment("Point Transfer Card", /obj/item/card/mining_point_card, 500),
)
/obj/machinery/mineral/equipment_vendor/golem
name = "golem ship equipment vendor"
circuit = /obj/item/circuitboard/machine/mining_equipment_vendor/golem
/obj/machinery/mineral/equipment_vendor/golem/Initialize()
. = ..()
desc += "\nIt seems a few selections have been added."
prize_list += list(
new /datum/data/mining_equipment("Extra Id", /obj/item/card/id/mining, 250),
new /datum/data/mining_equipment("Science Goggles", /obj/item/clothing/glasses/science, 250),
new /datum/data/mining_equipment("Monkey Cube", /obj/item/reagent_containers/food/snacks/monkeycube, 300),
new /datum/data/mining_equipment("Toolbelt", /obj/item/storage/belt/utility, 350),
new /datum/data/mining_equipment("Royal Cape of the Liberator", /obj/item/bedsheet/rd/royal_cape, 500),
new /datum/data/mining_equipment("Grey Slime Extract", /obj/item/slime_extract/grey, 1000),
new /datum/data/mining_equipment("KA Trigger Modification Kit", /obj/item/borg/upgrade/modkit/trigger_guard, 1700),
new /datum/data/mining_equipment("The Liberator's Legacy", /obj/item/storage/box/rndboards, 2000)
)
/datum/data/mining_equipment/
var/equipment_name = "generic"
+7
View File
@@ -529,6 +529,13 @@
return TRUE
return FALSE
/datum/language/abductor/golem
name = "Golem Mindlink"
desc = "Communicate with other alien alloy golems through a psychic link."
/datum/language/abductor/golem/check_special_condition(mob/living/carbon/human/other, mob/living/carbon/human/speaker)
return TRUE
/datum/language/corticalborer
name = "Cortical Link"
desc = "Cortical borers possess a strange link between their tiny minds."
File diff suppressed because it is too large Load Diff
+157
View File
@@ -0,0 +1,157 @@
Ablation
Alabaster
Alunite
Andesite
Anyhdrite
Basalt
Basin
Bauxite
Bedrock
Bismuth
Bismuthinite
Bituminous Coal
Borax
Boulder
Brimstone
Brittle
Calcite
Cassiterite
Cenozoic
Chalk
Chasm
Cheridite
Chert
Chromite
Cinnabar
Claystone
Coast
Cobaltite
Column
Conglomerate
Core
Crevasse
Crust
Cryolite
Crystal
Dacite
Diorite
Dolomite
Dolostone
Dragonforce
Earthflow
Epoch
Eutrophication
Fault
Flint
Foliation
Foreshock
Fossil
Gabbro
Galena
Garnierite
Geode
Geoge
Gneiss
Granite
Graphite
Gravel
Groove
Grotto
Gypsum
Hematite
Hornblende
Humus
Igneous
Ilmenite
Iron
Island
Jasper
Jet
Kaolinite
Kettle
Kimberlite
Komatiite
Landslide
Levee
Lignite
Limestone
Limonite
Luster
Madidite
Magnetite
Magnitude
Malachite
Mantle
Marble
Marcasite
Melange
Meme
Mica
Microcline
Migmatite
Mineral
Mountain
Mudstone
Obsidian
Olivine
Ore
Orpiment
Orthoclase
Outwash
Oxbow Lake
Oynx
Pahoehoe
Pebble
Pegmatite
Periclase
Petrified Wood
Phyllite
Pitchblende
Plate
Pothole
Puddingstone
Pyrite
Pyrolusite
Quake
Quarry
Quartz
Quartzite
Realgar
Reservoir
Rhyolite
Rock
Rock Salt
Rockfall
Rutile
Saltpeter
Sand
Sandstone
Satinspar
Schist
Sediment
Seismic
Selenite
Serpentine
Shale
Shore
Siltstone
Slag
Slate
Sphalerite
Stack
Stalactite
Stalagmite
Stibnite
Stone
Stress
Subduction
Sylvite
Talc
Tetrahedrite
Tidal
Trench
Valley
Volcano
Xenolith
Yardang
Zone

Before

Width:  |  Height:  |  Size: 9.0 KiB

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.3 KiB

+2
View File
@@ -12,6 +12,7 @@
// BEGIN_INCLUDE
#include "_maps\__MAP_DEFINES.dm"
#include "_maps\cyberiad.dm"
#include "_maps\map_files\RandomRuins\SpaceRuins\freegolems.dmm"
#include "code\_compile_options.dm"
#include "code\hub.dm"
#include "code\world.dm"
@@ -1246,6 +1247,7 @@
#include "code\modules\awaymissions\mission_code\stationCollision.dm"
#include "code\modules\awaymissions\mission_code\UO71-terrorspiders.dm"
#include "code\modules\awaymissions\mission_code\wildwest.dm"
#include "code\modules\awaymissions\mission_code\ruins\freegolems.dm"
#include "code\modules\awaymissions\mission_code\ruins\oldstation.dm"
#include "code\modules\buildmode\bm_mode.dm"
#include "code\modules\buildmode\buildmode.dm"