//If you're looking for spawners like ash walker eggs, check ghost_role_spawners.dm /obj/structure/fans/tiny/invisible //For blocking air in ruin doorways invisibility = INVISIBILITY_ABSTRACT //lavaland_surface_seed_vault.dmm //Seed Vault /obj/effect/spawner/lootdrop/seed_vault name = "seed vault seeds" lootcount = 1 loot = list(/obj/item/seeds/gatfruit = 10, /obj/item/seeds/cherry/bomb = 10, /obj/item/seeds/berry/glow = 10, /obj/item/seeds/sunflower/moonflower = 8 ) //Free Golems /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") /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/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/mineral/adamantine = /datum/species/golem/adamantine, /obj/item/stack/sheet/plastic = /datum/species/golem/plastic, /obj/item/stack/tile/brass = /datum/species/golem/clockwork) 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.") //made with xenobiology, the golem obeys its creator /obj/item/golem_shell/servant name = "incomplete servant golem shell" shell_type = /obj/effect/mob_spawn/human/golem/servant ///Syndicate Listening Post /obj/effect/mob_spawn/human/lavaland_syndicate name = "Syndicate Bioweapon Scientist" roundstart = FALSE death = FALSE job_description = "Off-station Syndicate Scientist" icon = 'icons/obj/machines/sleeper.dmi' icon_state = "sleeper_s" flavour_text = "You are a syndicate agent, employed in a top secret research facility developing biological weapons. Unfortunately, your hated enemy, Nanotrasen, has begun mining in this sector. Continue your research as best you can, and try to keep a low profile. DON'T abandon the base without good cause. The base is rigged with explosives should the worst happen, do not let the base fall into enemy hands!" outfit = /datum/outfit/lavaland_syndicate assignedrole = "Lavaland Syndicate" /obj/effect/mob_spawn/human/lavaland_syndicate/special(mob/living/new_spawn) new_spawn.grant_language(/datum/language/codespeak) /datum/outfit/lavaland_syndicate name = "Lavaland Syndicate Agent" name = "Off-station Syndicate Agent" r_hand = /obj/item/gun/ballistic/automatic/sniper_rifle uniform = /obj/item/clothing/under/syndicate suit = /obj/item/clothing/suit/toggle/labcoat shoes = /obj/item/clothing/shoes/combat gloves = /obj/item/clothing/gloves/combat ears = /obj/item/radio/headset/syndicate/alt back = /obj/item/storage/backpack r_pocket = /obj/item/gun/ballistic/automatic/pistol id = /obj/item/card/id/syndicate/anyone implants = list(/obj/item/implant/weapons_auth) /datum/outfit/lavaland_syndicate/post_equip(mob/living/carbon/human/H) H.faction |= ROLE_SYNDICATE /obj/effect/mob_spawn/human/lavaland_syndicate/comms name = "Syndicate Comms Agent" job_description = "Off-station Syndicate Comms Agent" flavour_text = "You are a syndicate agent, employed in a top secret research facility developing biological weapons. Unfortunately, your hated enemy, Nanotrasen, has begun mining in this sector. Monitor enemy activity as best you can, and try to keep a low profile. DON'T abandon the base without good cause. Use the communication equipment to provide support to any field agents, and sow disinformation to throw Nanotrasen off your trail. Do not let the base fall into enemy hands!" outfit = /datum/outfit/lavaland_syndicate/comms /obj/effect/mob_spawn/human/lavaland_syndicate/comms/space/Initialize() . = ..() if(prob(90)) //only has a 10% chance of existing, otherwise it'll just be a NPC syndie. new /mob/living/simple_animal/hostile/syndicate/ranged(get_turf(src)) return INITIALIZE_HINT_QDEL /datum/outfit/lavaland_syndicate/comms name = "Lavaland Syndicate Comms Agent" r_hand = /obj/item/melee/transforming/energy/sword/saber mask = /obj/item/clothing/mask/chameleon/gps suit = /obj/item/clothing/suit/armor/vest /obj/item/clothing/mask/chameleon/gps/Initialize() . = ..() new /obj/item/gps/internal/lavaland_syndicate_base(src) /obj/item/gps/internal/lavaland_syndicate_base gpstag = "Encrypted Signal"