Files
Bubberstation/code/game/asteroid.dm
ExcessiveUseOfCobblestone 6813956bd5 modified: _maps/RandomRuins/LavaRuins/lavaland_surface_hermit.dmm
modified:   _maps/RandomRuins/LavaRuins/lavaland_surface_pizzaparty.dmm
 	modified:   _maps/RandomRuins/SpaceRuins/bigderelict1.dmm
 	modified:   _maps/RandomRuins/SpaceRuins/spacebar.dmm
 	modified:   _maps/RandomZLevels/Academy.dmm
 	modified:   _maps/RandomZLevels/caves.dmm
 	modified:   _maps/RandomZLevels/moonoutpost19.dmm
 	modified:   _maps/RandomZLevels/snowdin.dmm
 	modified:   _maps/RandomZLevels/undergroundoutpost45.dmm
 	modified:   _maps/map_files/BirdStation/BirdStation.dmm
 	modified:   _maps/map_files/DreamStation/dreamstation04.dmm
 	modified:   _maps/map_files/EfficiencyStation/EfficiencyStation.dmm
 	modified:   _maps/map_files/MetaStation/MetaStation.dmm
 	deleted:    _maps/map_files/MiniStation/uplink_item.dm
 	modified:   _maps/map_files/TgStation/tgstation.2.1.3.dmm
 	modified:   _maps/map_files/generic/z2.dmm
 	modified:   _maps/ministation.dm
 	modified:   code/__DEFINES/misc.dm
 	modified:   code/__HELPERS/game.dm
 	modified:   code/__HELPERS/lists.dm
 	new file:   code/__HELPERS/pronouns.dm
 	modified:   code/__HELPERS/unsorted.dm
 	modified:   code/_globalvars/lists/objects.dm
 	modified:   code/_onclick/hud/screen_objects.dm
 	modified:   code/controllers/subsystem/persistence.dm
 	modified:   code/controllers/subsystem/processing/objects.dm
 	new file:   code/datums/antagonists/antag_datum.dm
 	new file:   code/datums/antagonists/datum_clockcult.dm
 	new file:   code/datums/antagonists/datum_cult.dm
 	modified:   code/datums/diseases/_MobProcs.dm
 	modified:   code/datums/diseases/advance/symptoms/beard.dm
 	modified:   code/datums/diseases/advance/symptoms/damage_converter.dm
 	modified:   code/datums/diseases/advance/symptoms/shedding.dm
 	modified:   code/datums/diseases/advance/symptoms/skin.dm
 	modified:   code/datums/diseases/advance/symptoms/youth.dm
 	modified:   code/datums/diseases/wizarditis.dm
 	modified:   code/datums/helper_datums/getrev.dm
 	modified:   code/datums/helper_datums/teleport.dm
 	modified:   code/datums/martial/krav_maga.dm
 	modified:   code/datums/mind.dm
 	modified:   code/datums/status_effects/buffs.dm
 	modified:   code/game/area/areas.dm
 	modified:   code/game/asteroid.dm
 	modified:   code/game/atoms.dm
 	modified:   code/game/atoms_movable.dm
 	modified:   code/game/gamemodes/antag_spawner.dm
 	modified:   code/game/gamemodes/blob/blobs/blob_mobs.dm
 	modified:   code/game/gamemodes/blob/blobs/core.dm
 	modified:   code/game/gamemodes/blob/blobs/factory.dm
 	modified:   code/game/gamemodes/blob/blobs/node.dm
 	modified:   code/game/gamemodes/blob/blobs/resource.dm
 	modified:   code/game/gamemodes/blob/blobs/shield.dm
 	modified:   code/game/gamemodes/blob/overmind.dm
 	modified:   code/game/gamemodes/blob/powers.dm
 	modified:   code/game/gamemodes/blob/theblob.dm
 	modified:   code/game/gamemodes/changeling/powers/mutations.dm
 	modified:   code/game/gamemodes/changeling/powers/spiders.dm
 	modified:   code/game/gamemodes/clock_cult/clock_cult.dm
 	modified:   code/game/gamemodes/clock_cult/clock_items.dm
 	modified:   code/game/gamemodes/clock_cult/clock_mobs.dm
 	modified:   code/game/gamemodes/clock_cult/clock_ratvar.dm
 	modified:   code/game/gamemodes/clock_cult/clock_scripture.dm
 	modified:   code/game/gamemodes/clock_cult/clock_structures.dm
 	modified:   code/game/gamemodes/cult/cult.dm
 	modified:   code/game/gamemodes/cult/cult_items.dm
 	modified:   code/game/gamemodes/cult/cult_structures.dm
 	modified:   code/game/gamemodes/cult/runes.dm
 	modified:   code/game/gamemodes/devil/devil.dm
 	modified:   code/game/gamemodes/devil/devilinfo.dm
 	modified:   code/game/gamemodes/devil/game_mode.dm
 	modified:   code/game/gamemodes/game_mode.dm
 	modified:   code/game/gamemodes/gang/dominator.dm
 	modified:   code/game/gamemodes/gang/gang.dm
 	modified:   code/game/gamemodes/gang/gang_datum.dm
 	modified:   code/game/gamemodes/meteor/meteors.dm
 	modified:   code/game/gamemodes/miniantags/abduction/abduction_gear.dm
 	modified:   code/game/gamemodes/miniantags/abduction/gland.dm
 	modified:   code/game/gamemodes/miniantags/bot_swarm/swarmer.dm
 	modified:   code/game/gamemodes/miniantags/revenant/revenant.dm
 	modified:   code/game/gamemodes/miniantags/revenant/revenant_abilities.dm
 	modified:   code/game/gamemodes/nuclear/nuclear.dm
 	modified:   code/game/gamemodes/nuclear/nuclearbomb.dm
 	modified:   code/game/gamemodes/objective.dm
 	modified:   code/game/gamemodes/revolution/revolution.dm
 	modified:   code/game/gamemodes/wizard/artefact.dm
 	modified:   code/game/gamemodes/wizard/soulstone.dm
 	modified:   code/game/gamemodes/wizard/spellbook.dm
 	modified:   code/game/machinery/autolathe.dm
 	modified:   code/game/machinery/camera/camera.dm
 	modified:   code/game/machinery/camera/tracking.dm
 	modified:   code/game/machinery/computer/computer.dm
 	modified:   code/game/machinery/computer/medical.dm
 	modified:   code/game/machinery/computer/prisoner.dm
 	modified:   code/game/machinery/computer/security.dm
 	modified:   code/game/machinery/constructable_frame.dm
 	modified:   code/game/machinery/deployable.dm
 	modified:   code/game/machinery/doors/door.dm
 	modified:   code/game/machinery/doors/windowdoor.dm
 	modified:   code/game/machinery/firealarm.dm
 	modified:   code/game/machinery/flasher.dm
 	modified:   code/game/machinery/iv_drip.dm
 	modified:   code/game/machinery/limbgrower.dm
 	modified:   code/game/machinery/machinery.dm
 	modified:   code/game/machinery/newscaster.dm
 	modified:   code/game/machinery/overview.dm
 	modified:   code/game/machinery/pipe/construction.dm
 	modified:   code/game/machinery/porta_turret/portable_turret.dm
 	modified:   code/game/machinery/shieldgen.dm
 	modified:   code/game/machinery/spaceheater.dm
 	modified:   code/game/machinery/syndicatebeacon.dm
 	modified:   code/game/machinery/syndicatebomb.dm
 	modified:   code/game/machinery/vending.dm
 	modified:   code/game/mecha/combat/combat.dm
 	modified:   code/game/mecha/combat/durand.dm
 	modified:   code/game/mecha/combat/gygax.dm
 	modified:   code/game/mecha/combat/marauder.dm
 	modified:   code/game/mecha/combat/phazon.dm
 	modified:   code/game/mecha/combat/reticence.dm
 	modified:   code/game/mecha/equipment/tools/mining_tools.dm
 	modified:   code/game/mecha/equipment/tools/other_tools.dm
 	modified:   code/game/mecha/equipment/tools/work_tools.dm
 	modified:   code/game/mecha/equipment/weapons/weapons.dm
 	modified:   code/game/mecha/mech_fabricator.dm
 	modified:   code/game/mecha/mecha.dm
 	modified:   code/game/mecha/mecha_defense.dm
 	modified:   code/game/mecha/working/ripley.dm
 	modified:   code/game/objects/buckling.dm
 	modified:   code/game/objects/effects/alien_acid.dm
 	modified:   code/game/objects/effects/anomalies.dm
 	modified:   code/game/objects/effects/contraband.dm
 	modified:   code/game/objects/effects/decals/Cleanable/aliens.dm
 	modified:   code/game/objects/effects/decals/Cleanable/humans.dm
 	modified:   code/game/objects/effects/decals/Cleanable/misc.dm
 	modified:   code/game/objects/effects/decals/Cleanable/robots.dm
 	modified:   code/game/objects/effects/decals/cleanable.dm
 	modified:   code/game/objects/effects/effect_system/effect_system.dm
 	modified:   code/game/objects/effects/effect_system/effects_foam.dm
 	modified:   code/game/objects/effects/effect_system/effects_smoke.dm
 	new file:   code/game/objects/effects/effects.dm
 	modified:   code/game/objects/effects/forcefields.dm
 	modified:   code/game/objects/effects/glowshroom.dm
 	modified:   code/game/objects/effects/landmarks.dm
 	modified:   code/game/objects/effects/manifest.dm
 	modified:   code/game/objects/effects/misc.dm
 	modified:   code/game/objects/effects/overlays.dm
 	modified:   code/game/objects/effects/portals.dm
 	modified:   code/game/objects/effects/spiders.dm
 	modified:   code/game/objects/explosion.dm
 	modified:   code/game/objects/items.dm
 	modified:   code/game/objects/items/cardboard_cutouts.dm
 	modified:   code/game/objects/items/dehy_carp.dm
 	modified:   code/game/objects/items/devices/PDA/PDA.dm
 	modified:   code/game/objects/items/devices/camera_bug.dm
 	modified:   code/game/objects/items/devices/flashlight.dm
 	modified:   code/game/objects/items/devices/instruments.dm
 	modified:   code/game/objects/items/devices/radio/electropack.dm
 	modified:   code/game/objects/items/latexballoon.dm
 	modified:   code/game/objects/items/robot/robot_parts.dm
 	modified:   code/game/objects/items/robot/robot_upgrades.dm
 	modified:   code/game/objects/items/stacks/cash.dm
 	modified:   code/game/objects/items/stacks/medical.dm
 	modified:   code/game/objects/items/stacks/sheets/mineral.dm
 	modified:   code/game/objects/items/stacks/sheets/sheet_types.dm
 	modified:   code/game/objects/items/stacks/tiles/tile_types.dm
 	modified:   code/game/objects/items/stacks/wrap.dm
 	modified:   code/game/objects/items/toys.dm
 	modified:   code/game/objects/items/trash.dm
 	modified:   code/game/objects/items/weapons/cards_ids.dm
 	modified:   code/game/objects/items/weapons/chrono_eraser.dm
 	modified:   code/game/objects/items/weapons/cigs_lighters.dm
 	modified:   code/game/objects/items/weapons/clown_items.dm
 	modified:   code/game/objects/items/weapons/courtroom.dm
 	modified:   code/game/objects/items/weapons/gift.dm
 	modified:   code/game/objects/items/weapons/grenades/flashbang.dm
 	modified:   code/game/objects/items/weapons/grenades/grenade.dm
 	modified:   code/game/objects/items/weapons/grenades/smokebomb.dm
 	modified:   code/game/objects/items/weapons/holosign_creator.dm
 	modified:   code/game/objects/items/weapons/implants/implant.dm
 	modified:   code/game/objects/items/weapons/implants/implant_chem.dm
 	modified:   code/game/objects/items/weapons/mop.dm
 	modified:   code/game/objects/items/weapons/paint.dm
 	modified:   code/game/objects/items/weapons/scrolls.dm
 	modified:   code/game/objects/items/weapons/shields.dm
 	modified:   code/game/objects/items/weapons/signs.dm
 	modified:   code/game/objects/items/weapons/singularityhammer.dm
 	modified:   code/game/objects/items/weapons/storage/backpack.dm
 	modified:   code/game/objects/items/weapons/storage/bags.dm
 	modified:   code/game/objects/items/weapons/storage/belt.dm
 	modified:   code/game/objects/items/weapons/storage/book.dm
 	modified:   code/game/objects/items/weapons/storage/boxes.dm
 	modified:   code/game/objects/items/weapons/storage/briefcase.dm
 	modified:   code/game/objects/items/weapons/storage/fancy.dm
 	modified:   code/game/objects/items/weapons/storage/secure.dm
 	modified:   code/game/objects/items/weapons/storage/storage.dm
 	modified:   code/game/objects/items/weapons/storage/wallets.dm
 	modified:   code/game/objects/items/weapons/tanks/tanks.dm
 	modified:   code/game/objects/items/weapons/tanks/watertank.dm
 	modified:   code/game/objects/items/weapons/twohanded.dm
 	modified:   code/game/objects/items/weapons/weaponry.dm
 	modified:   code/game/objects/objs.dm
 	modified:   code/game/objects/structures.dm
 	modified:   code/game/objects/structures/ai_core.dm
 	modified:   code/game/objects/structures/aliens.dm
 	modified:   code/game/objects/structures/artstuff.dm
 	modified:   code/game/objects/structures/beds_chairs/bed.dm
 	modified:   code/game/objects/structures/beds_chairs/chair.dm
 	modified:   code/game/objects/structures/bedsheet_bin.dm
 	modified:   code/game/objects/structures/crates_lockers/closets/cardboardbox.dm
 	modified:   code/game/objects/structures/crates_lockers/closets/gimmick.dm
 	modified:   code/game/objects/structures/crates_lockers/closets/job_closets.dm
 	modified:   code/game/objects/structures/crates_lockers/closets/secure/bar.dm
 	modified:   code/game/objects/structures/crates_lockers/closets/secure/personal.dm
 	modified:   code/game/objects/structures/crates_lockers/closets/secure/security.dm
 	modified:   code/game/objects/structures/crates_lockers/closets/statue.dm
 	modified:   code/game/objects/structures/displaycase.dm
 	modified:   code/game/objects/structures/fireaxe.dm
 	modified:   code/game/objects/structures/fireplace.dm
 	modified:   code/game/objects/structures/flora.dm
 	modified:   code/game/objects/structures/girders.dm
 	modified:   code/game/objects/structures/grille.dm
 	modified:   code/game/objects/structures/guncase.dm
 	modified:   code/game/objects/structures/lattice.dm
 	modified:   code/game/objects/structures/mineral_doors.dm
 	modified:   code/game/objects/structures/noticeboard.dm
 	modified:   code/game/objects/structures/plasticflaps.dm
 	modified:   code/game/objects/structures/safe.dm
 	modified:   code/game/objects/structures/signs.dm
 	modified:   code/game/objects/structures/table_frames.dm
 	modified:   code/game/objects/structures/tables_racks.dm
 	modified:   code/game/objects/structures/watercloset.dm
 	modified:   code/game/objects/structures/window.dm
 	modified:   code/game/turfs/simulated/floor.dm
 	modified:   code/game/turfs/simulated/floor/plating.dm
 	modified:   code/game/turfs/simulated/floor/warning.dm
 	modified:   code/game/turfs/simulated/walls.dm
 	modified:   code/modules/admin/topic.dm
 	modified:   code/modules/admin/verbs/debug.dm
 	modified:   code/modules/admin/verbs/randomverbs.dm
 	modified:   code/modules/assembly/flash.dm
 	modified:   code/modules/assembly/proximity.dm
 	modified:   code/modules/atmospherics/environmental/LINDA_fire.dm
 	modified:   code/modules/atmospherics/machinery/atmosmachinery.dm
 	modified:   code/modules/atmospherics/machinery/components/components_base.dm
 	modified:   code/modules/atmospherics/machinery/components/unary_devices/cryo.dm
 	modified:   code/modules/atmospherics/machinery/components/unary_devices/thermomachine.dm
 	modified:   code/modules/atmospherics/machinery/pipes/heat_exchange/he_pipes.dm
 	modified:   code/modules/atmospherics/machinery/portable/canister.dm
 	modified:   code/modules/awaymissions/gateway.dm
 	modified:   code/modules/awaymissions/mission_code/snowdin.dm
 	modified:   code/modules/awaymissions/mission_code/stationCollision.dm
 	modified:   code/modules/awaymissions/mission_code/wildwest.dm
 	modified:   code/modules/client/preferences.dm
 	modified:   code/modules/clothing/chameleon.dm
 	modified:   code/modules/clothing/clothing.dm
 	modified:   code/modules/clothing/glasses/engine_goggles.dm
 	modified:   code/modules/clothing/glasses/glasses.dm
 	modified:   code/modules/clothing/gloves/color.dm
 	modified:   code/modules/clothing/gloves/miscellaneous.dm
 	modified:   code/modules/clothing/head/collectable.dm
 	modified:   code/modules/clothing/head/hardhat.dm
 	modified:   code/modules/clothing/head/helmet.dm
 	modified:   code/modules/clothing/head/jobs.dm
 	modified:   code/modules/clothing/head/misc.dm
 	modified:   code/modules/clothing/head/misc_special.dm
 	modified:   code/modules/clothing/head/soft_caps.dm
 	modified:   code/modules/clothing/masks/breath.dm
 	modified:   code/modules/clothing/masks/gasmask.dm
 	modified:   code/modules/clothing/masks/hailer.dm
 	modified:   code/modules/clothing/shoes/magboots.dm
 	modified:   code/modules/clothing/shoes/miscellaneous.dm
 	modified:   code/modules/clothing/spacesuits/chronosuit.dm
 	modified:   code/modules/clothing/spacesuits/hardsuit.dm
 	modified:   code/modules/clothing/spacesuits/miscellaneous.dm
 	modified:   code/modules/clothing/spacesuits/plasmamen.dm
 	modified:   code/modules/clothing/spacesuits/syndi.dm
 	modified:   code/modules/clothing/suits/armor.dm
 	modified:   code/modules/clothing/suits/bio.dm
 	modified:   code/modules/clothing/suits/cloaks.dm
 	modified:   code/modules/clothing/suits/jobs.dm
 	modified:   code/modules/clothing/suits/labcoat.dm
 	modified:   code/modules/clothing/suits/miscellaneous.dm
 	modified:   code/modules/clothing/suits/utility.dm
 	modified:   code/modules/clothing/suits/wiz_robe.dm
 	modified:   code/modules/clothing/under/color.dm
 	modified:   code/modules/clothing/under/jobs/civilian.dm
 	modified:   code/modules/clothing/under/jobs/engineering.dm
 	modified:   code/modules/clothing/under/jobs/medsci.dm
 	modified:   code/modules/clothing/under/jobs/security.dm
 	modified:   code/modules/clothing/under/miscellaneous.dm
 	modified:   code/modules/clothing/under/syndicate.dm
 	modified:   code/modules/clothing/under/ties.dm
 	modified:   code/modules/clothing/under/trek.dm
 	modified:   code/modules/events/blob.dm
 	modified:   code/modules/events/holiday/vday.dm
 	modified:   code/modules/events/holiday/xmas.dm
 	modified:   code/modules/events/immovable_rod.dm
 	modified:   code/modules/events/shuttle_loan.dm
 	modified:   code/modules/events/spacevine.dm
 	modified:   code/modules/events/spider_infestation.dm
 	modified:   code/modules/events/wizard/greentext.dm
 	modified:   code/modules/events/wizard/rpgloot.dm
 	modified:   code/modules/flufftext/Hallucination.dm
 	modified:   code/modules/food_and_drinks/drinks/drinks.dm
 	modified:   code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm
 	modified:   code/modules/food_and_drinks/food.dm
 	modified:   code/modules/food_and_drinks/food/snacks/meat.dm
 	modified:   code/modules/food_and_drinks/food/snacks_other.dm
 	modified:   code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm
 	modified:   code/modules/games/cards.dm
 	modified:   code/modules/holodeck/area_copy.dm
 	modified:   code/modules/holodeck/computer.dm
 	modified:   code/modules/hydroponics/grown.dm
 	modified:   code/modules/hydroponics/grown/flowers.dm
 	modified:   code/modules/hydroponics/grown/kudzu.dm
 	modified:   code/modules/hydroponics/grown/mushrooms.dm
 	modified:   code/modules/hydroponics/grown/nettle.dm
 	modified:   code/modules/hydroponics/grown/replicapod.dm
 	modified:   code/modules/hydroponics/grown/towercap.dm
 	modified:   code/modules/hydroponics/growninedible.dm
 	modified:   code/modules/hydroponics/hydroponics.dm
 	modified:   code/modules/hydroponics/seeds.dm
 	modified:   code/modules/jobs/access.dm
 	modified:   code/modules/jobs/job_types/civilian.dm
 	modified:   code/modules/library/lib_codex_gigas.dm
 	modified:   code/modules/library/lib_items.dm
 	modified:   code/modules/library/lib_machines.dm
 	modified:   code/modules/mining/equipment.dm
 	modified:   code/modules/mining/fulton.dm
 	modified:   code/modules/mining/lavaland/ash_flora.dm
 	modified:   code/modules/mining/lavaland/necropolis_chests.dm
 	modified:   code/modules/mining/machine_redemption.dm
 	modified:   code/modules/mining/mine_items.dm
 	modified:   code/modules/mining/mine_turfs.dm
 	modified:   code/modules/mining/money_bag.dm
 	modified:   code/modules/mob/interactive.dm
 	modified:   code/modules/mob/inventory.dm
 	modified:   code/modules/mob/living/bloodcrawl.dm
 	modified:   code/modules/mob/living/brain/brain.dm
 	modified:   code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm
 	modified:   code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm
 	modified:   code/modules/mob/living/carbon/carbon_defense.dm
 	modified:   code/modules/mob/living/carbon/examine.dm
 	modified:   code/modules/mob/living/carbon/human/examine.dm
 	modified:   code/modules/mob/living/carbon/human/human.dm
 	modified:   code/modules/mob/living/carbon/human/human_defense.dm
 	modified:   code/modules/mob/living/carbon/human/inventory.dm
 	modified:   code/modules/mob/living/carbon/human/species_types.dm
 	modified:   code/modules/mob/living/carbon/human/whisper.dm
 	modified:   code/modules/mob/living/carbon/monkey/monkey_defense.dm
 	modified:   code/modules/mob/living/carbon/update_icons.dm
 	modified:   code/modules/mob/living/living.dm
 	modified:   code/modules/mob/living/say.dm
 	modified:   code/modules/mob/living/silicon/ai/ai.dm
 	modified:   code/modules/mob/living/silicon/ai/ai_defense.dm
 	modified:   code/modules/mob/living/silicon/pai/pai_defense.dm
 	modified:   code/modules/mob/living/silicon/pai/software.dm
 	modified:   code/modules/mob/living/silicon/robot/robot.dm
 	modified:   code/modules/mob/living/silicon/robot/robot_defense.dm
 	modified:   code/modules/mob/living/simple_animal/animal_defense.dm
 	modified:   code/modules/mob/living/simple_animal/bot/ed209bot.dm
 	modified:   code/modules/mob/living/simple_animal/bot/secbot.dm
 	modified:   code/modules/mob/living/simple_animal/constructs.dm
 	modified:   code/modules/mob/living/simple_animal/friendly/drone/drones_as_items.dm
 	modified:   code/modules/mob/living/simple_animal/friendly/drone/extra_drone_types.dm
 	modified:   code/modules/mob/living/simple_animal/friendly/drone/interaction.dm
 	modified:   code/modules/mob/living/simple_animal/friendly/farm_animals.dm
 	modified:   code/modules/mob/living/simple_animal/hostile/bear.dm
 	modified:   code/modules/mob/living/simple_animal/hostile/giant_spider.dm
 	modified:   code/modules/mob/living/simple_animal/hostile/illusion.dm
 	modified:   code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm
 	modified:   code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm
 	modified:   code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm
 	modified:   code/modules/mob/living/simple_animal/hostile/statue.dm
 	modified:   code/modules/mob/living/simple_animal/shade.dm
 	modified:   code/modules/mob/living/simple_animal/simple_animal.dm
 	modified:   code/modules/mob/living/simple_animal/slime/life.dm
 	modified:   code/modules/mob/mob.dm
 	modified:   code/modules/mob/mob_transformation_simple.dm
 	modified:   code/modules/modular_computers/computers/item/computer.dm
 	modified:   code/modules/ninja/energy_katana.dm
 	modified:   code/modules/ninja/ninja_event.dm
 	modified:   code/modules/ninja/suit/gloves.dm
 	modified:   code/modules/ninja/suit/head.dm
 	modified:   code/modules/ninja/suit/mask.dm
 	modified:   code/modules/ninja/suit/n_suit_verbs/energy_net_nets.dm
 	modified:   code/modules/ninja/suit/n_suit_verbs/ninja_net.dm
 	modified:   code/modules/ninja/suit/n_suit_verbs/ninja_teleporting.dm
 	modified:   code/modules/ninja/suit/ninjaDrainAct.dm
 	modified:   code/modules/ninja/suit/shoes.dm
 	modified:   code/modules/ninja/suit/suit.dm
 	modified:   code/modules/paperwork/clipboard.dm
 	modified:   code/modules/paperwork/contract.dm
 	modified:   code/modules/paperwork/folders.dm
 	modified:   code/modules/paperwork/paper.dm
 	modified:   code/modules/paperwork/paper_cutter.dm
 	modified:   code/modules/paperwork/paperbin.dm
 	modified:   code/modules/paperwork/paperplane.dm
 	modified:   code/modules/paperwork/photocopier.dm
 	modified:   code/modules/paperwork/photography.dm
 	modified:   code/modules/power/apc.dm
 	modified:   code/modules/power/cable.dm
 	modified:   code/modules/power/cell.dm
 	modified:   code/modules/power/gravitygenerator.dm
 	modified:   code/modules/power/lighting.dm
 	modified:   code/modules/power/power.dm
 	modified:   code/modules/power/rtg.dm
 	modified:   code/modules/power/singularity/containment_field.dm
 	modified:   code/modules/power/singularity/field_generator.dm
 	modified:   code/modules/power/singularity/particle_accelerator/particle_accelerator.dm
 	modified:   code/modules/power/singularity/particle_accelerator/particle_control.dm
 	modified:   code/modules/power/singularity/singularity.dm
 	modified:   code/modules/power/smes.dm
 	modified:   code/modules/power/solar.dm
 	modified:   code/modules/power/supermatter/supermatter.dm
 	modified:   code/modules/power/tesla/energy_ball.dm
 	modified:   code/modules/projectiles/gun.dm
 	modified:   code/modules/projectiles/guns/energy/nuclear.dm
 	modified:   code/modules/projectiles/projectile.dm
 	modified:   code/modules/projectiles/projectile/bullets.dm
 	modified:   code/modules/projectiles/projectile/energy.dm
 	modified:   code/modules/reagents/chemistry/holder.dm
 	modified:   code/modules/reagents/chemistry/machinery/chem_dispenser.dm
 	modified:   code/modules/reagents/chemistry/machinery/chem_heater.dm
 	modified:   code/modules/reagents/chemistry/machinery/chem_master.dm
 	modified:   code/modules/reagents/chemistry/machinery/pandemic.dm
 	modified:   code/modules/reagents/chemistry/reagents/alcohol_reagents.dm
 	modified:   code/modules/reagents/chemistry/reagents/blob_reagents.dm
 	modified:   code/modules/reagents/chemistry/reagents/drink_reagents.dm
 	modified:   code/modules/reagents/chemistry/reagents/food_reagents.dm
 	modified:   code/modules/reagents/chemistry/reagents/medicine_reagents.dm
 	modified:   code/modules/reagents/chemistry/reagents/other_reagents.dm
 	modified:   code/modules/reagents/chemistry/reagents/toxin_reagents.dm
 	modified:   code/modules/reagents/chemistry/recipes/slime_extracts.dm
 	modified:   code/modules/reagents/reagent_containers.dm
 	modified:   code/modules/reagents/reagent_containers/hypospray.dm
 	modified:   code/modules/reagents/reagent_dispenser.dm
 	modified:   code/modules/research/circuitprinter.dm
 	modified:   code/modules/research/designs.dm
 	modified:   code/modules/research/designs/stock_parts_designs.dm
 	modified:   code/modules/research/protolathe.dm
 	modified:   code/modules/research/rdconsole.dm
 	modified:   code/modules/research/rdmachines.dm
 	modified:   code/modules/research/server.dm
 	modified:   code/modules/research/xenobiology/xenobiology.dm
 	modified:   code/modules/ruins/objects_and_mobs/necropolis_gate.dm
 	modified:   code/modules/ruins/objects_and_mobs/sin_ruins.dm
 	modified:   code/modules/shuttle/shuttle.dm
 	modified:   code/modules/shuttle/special.dm
 	modified:   code/modules/shuttle/supply.dm
 	modified:   code/modules/spells/spell.dm
 	modified:   code/modules/spells/spell_types/charge.dm
 	modified:   code/modules/spells/spell_types/ethereal_jaunt.dm
 	modified:   code/modules/spells/spell_types/wizard.dm
 	modified:   code/modules/stock_market/computer.dm
 	modified:   code/modules/surgery/bodyparts/bodyparts.dm
 	modified:   code/modules/surgery/bodyparts/dismemberment.dm
 	modified:   code/modules/surgery/organs/augments_arms.dm
 	modified:   code/modules/surgery/organs/augments_chest.dm
 	modified:   code/modules/surgery/organs/augments_eyes.dm
 	modified:   code/modules/uplink/uplink_item.dm
 	modified:   code/modules/zombie/items.dm
 	modified:   code/modules/zombie/organs.dm
 	modified:   code/world.dm
 	modified:   config/admins.txt
 	modified:   html/changelog.html
 	modified:   html/changelogs/.all_changelog.yml
 	new file:   html/changelogs/AutoChangeLog-pr-20748.yml
 	modified:   icons/mob/hud.dmi
 	modified:   icons/mob/inhands/items_lefthand.dmi
 	modified:   icons/mob/inhands/items_righthand.dmi
 	modified:   icons/mob/talk.dmi
 	modified:   icons/mob/ties.dmi
 	modified:   icons/obj/chemical.dmi
 	modified:   icons/obj/clothing/ties.dmi
 	modified:   icons/obj/objects.dmi
 	modified:   icons/turf/floors.dmi
 	deleted:    icons/turf/floors/warning.dmi
2016-09-30 20:00:39 -04:00

198 lines
8.9 KiB
Plaintext

var/global/list/possiblethemes = list("organharvest","cult","wizden","cavein","xenoden","hitech","speakeasy","plantlab")
var/global/max_secret_rooms = 6
/proc/spawn_room(atom/start_loc, x_size, y_size, list/walltypes, floor, name, oldarea)
var/list/room_turfs = list("walls"=list(),"floors"=list())
var/area/asteroid/artifactroom/A = new
if(name)
A.name = name
else
A.name = "Artifact Room #[start_loc.x]-[start_loc.y]-[start_loc.z]"
for(var/x = 0, x < x_size, x++) //sets the size of the room on the x axis
for(var/y = 0, y < y_size, y++) //sets it on y axis.
var/turf/T
var/cur_loc = locate(start_loc.x + x, start_loc.y + y, start_loc.z)
if(x == 0 || x == x_size-1 || y == 0 || y == y_size-1)
var/wall = pickweight(walltypes)//totally-solid walls are pretty boring.
T = cur_loc
T.ChangeTurf(wall)
room_turfs["walls"] += T
else
T = cur_loc
T.ChangeTurf(floor)
room_turfs["floors"] += T
if(!oldarea)
A.contents += T
return room_turfs
//////////////
/proc/make_mining_asteroid_secrets()
for(var/i in 1 to max_secret_rooms)
make_mining_asteroid_secret()
/proc/make_mining_asteroid_secret()
var/valid = 0
var/turf/T = null
var/sanity = 0
var/list/room = null
var/list/turfs = null
var/x_size = 5
var/y_size = 5
var/areapoints = 0
var/theme = "organharvest"
var/list/walltypes = list(/turf/closed/wall=3, /turf/closed/mineral/random=1)
var/list/floortypes = list(/turf/open/floor/plasteel)
var/list/treasureitems = list()//good stuff. only 1 is created per room.
var/list/fluffitems = list()//lesser items, to help fill out the room and enhance the theme.
x_size = rand(3,7)
y_size = rand(3,7)
areapoints = x_size * y_size
switch(pick(possiblethemes))//what kind of room is this gonna be?
if("organharvest")
walltypes = list(/turf/closed/wall/r_wall=2,/turf/closed/wall=2,/turf/closed/mineral/random/high_chance=1)
floortypes = list(/turf/open/floor/plasteel,/turf/open/floor/engine)
treasureitems = list(/mob/living/simple_animal/bot/medbot/mysterious=1, /obj/item/weapon/circular_saw=1, /obj/structure/closet/crate/critter=2, /mob/living/simple_animal/pet/cat/space=1)
fluffitems = list(/obj/effect/decal/cleanable/blood=5,/obj/item/organ/appendix=2,/obj/structure/closet/crate/freezer=2,
/obj/structure/table/optable=1,/obj/item/weapon/scalpel=1,/obj/item/weapon/storage/firstaid/regular=3,
/obj/item/weapon/tank/internals/anesthetic=1, /obj/item/weapon/surgical_drapes=2, /obj/item/device/mass_spectrometer/adv=1,/obj/item/clothing/glasses/hud/health=1)
if("cult")
theme = "cult"
walltypes = list(/turf/closed/wall/mineral/cult=3,/turf/closed/mineral/random/high_chance=1)
floortypes = list(/turf/open/floor/plasteel/cult)
treasureitems = list(/obj/item/device/soulstone/anybody=1, /obj/item/clothing/suit/space/hardsuit/cult=1, /obj/item/weapon/bedsheet/cult=2,
/obj/item/clothing/suit/cultrobes=2, /mob/living/simple_animal/hostile/creature=3)
fluffitems = list(/obj/effect/gateway=1,/obj/effect/gibspawner=1,/obj/structure/destructible/cult/talisman=1,/obj/item/toy/crayon/red=2,
/obj/item/organ/heart=2, /obj/effect/decal/cleanable/blood=4,/obj/structure/table/wood=2,/obj/item/weapon/ectoplasm=3,
/obj/item/clothing/shoes/cult=1)
if("wizden")
theme = "wizden"
walltypes = list(/turf/closed/wall/mineral/plasma=3,/turf/closed/mineral/random/high_chance=1)
floortypes = list(/turf/open/floor/wood)
treasureitems = list(/obj/item/weapon/veilrender/vealrender=2, /obj/item/weapon/spellbook/oneuse/blind=1,/obj/item/clothing/head/wizard/red=2,
/obj/item/weapon/spellbook/oneuse/forcewall=1, /obj/item/weapon/spellbook/oneuse/smoke=1, /obj/structure/constructshell = 1, /obj/item/toy/katana=3,/obj/item/voodoo=3)
fluffitems = list(/obj/structure/safe/floor=1,/obj/structure/dresser=1,/obj/item/weapon/storage/belt/soulstone=1,/obj/item/trash/candle=3,
/obj/item/weapon/dice=3,/obj/item/weapon/staff=2,/obj/effect/decal/cleanable/dirt=3,/obj/item/weapon/coin/mythril=3)
if("cavein")
theme = "cavein"
walltypes = list(/turf/closed/mineral/random/high_chance=1)
floortypes = list(/turf/open/floor/plating/asteroid/basalt, /turf/open/floor/plating/beach/sand)
treasureitems = list(/obj/mecha/working/ripley/mining=1, /obj/item/weapon/pickaxe/drill/diamonddrill=2,
/obj/item/weapon/resonator/upgraded=1, /obj/item/weapon/pickaxe/drill/jackhammer=5)
fluffitems = list(/obj/effect/decal/cleanable/blood=3,/obj/effect/decal/remains/human=1,/obj/item/clothing/under/overalls=1,
/obj/item/weapon/reagent_containers/food/snacks/grown/chili=1,/obj/item/weapon/tank/internals/oxygen/red=2)
if("xenoden")
theme = "xenoden"
walltypes = list(/turf/closed/mineral/random/high_chance=1)
floortypes = list(/turf/open/floor/plating/asteroid/basalt, /turf/open/floor/plating/beach/sand)
treasureitems = list(/obj/item/clothing/mask/facehugger=1)
fluffitems = list(/obj/effect/decal/remains/human=1,/obj/effect/decal/cleanable/xenoblood/xsplatter=5)
if("hitech")
theme = "hitech"
walltypes = list(/turf/closed/wall/r_wall=5,/turf/closed/mineral/random=1)
floortypes = list(/turf/open/floor/greengrid,/turf/open/floor/bluegrid)
treasureitems = list(/obj/item/weapon/stock_parts/cell/hyper=1, /obj/machinery/chem_dispenser/constructable=1,/obj/machinery/computer/telescience=1, /obj/machinery/r_n_d/protolathe=1,
/obj/machinery/biogenerator=1)
fluffitems = list(/obj/structure/table/reinforced=2,/obj/item/weapon/stock_parts/scanning_module/phasic=3,
/obj/item/weapon/stock_parts/matter_bin/super=3,/obj/item/weapon/stock_parts/manipulator/pico=3,
/obj/item/weapon/stock_parts/capacitor/super=3,/obj/item/device/pda/clear=1, /obj/structure/mecha_wreckage/phazon=1)
if("speakeasy")
theme = "speakeasy"
floortypes = list(/turf/open/floor/plasteel,/turf/open/floor/wood)
treasureitems = list(/obj/item/weapon/melee/energy/sword/pirate=1,/obj/item/weapon/gun/projectile/revolver/doublebarrel=1,/obj/item/weapon/storage/backpack/satchel/flat=1,
/obj/machinery/reagentgrinder=2, /obj/machinery/computer/security/wooden_tv=4, /obj/machinery/vending/coffee=3)
fluffitems = list(/obj/structure/table/wood=2,/obj/structure/reagent_dispensers/beerkeg=1,/obj/item/stack/spacecash/c500=4,
/obj/item/weapon/reagent_containers/food/drinks/shaker=1,/obj/item/weapon/reagent_containers/food/drinks/bottle/wine=3,
/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey=3,/obj/item/clothing/shoes/laceup=2)
if("plantlab")
theme = "plantlab"
treasureitems = list(/obj/item/weapon/gun/energy/floragun=1,/obj/item/seeds/sunflower/novaflower=2,/obj/item/seeds/tomato/blue/bluespace=2,/obj/item/seeds/tomato/blue=2,
/obj/item/seeds/coffee/robusta=2, /obj/item/seeds/firelemon=2)
fluffitems = list(/obj/item/weapon/twohanded/required/kirbyplants=1,/obj/structure/table/reinforced=2,/obj/machinery/hydroponics/constructable=1,
/obj/structure/glowshroom/single=2,/obj/item/weapon/reagent_containers/syringe/charcoal=2,
/obj/item/weapon/reagent_containers/glass/bottle/diethylamine=3,/obj/item/weapon/reagent_containers/glass/bottle/ammonia=3)
/*if("poly")
theme = "poly"
x_size = 5
y_size = 5
walltypes = list(/turf/closed/wall/mineral/clown)
floortypes= list(/turf/open/floor/engine)
treasureitems = list(/obj/item/weapon/spellbook=1,/obj/mecha/combat/marauder=1,/obj/machinery/wish_granter=1)
fluffitems = list(/obj/item/weapon/melee/energy/axe)*/
possiblethemes -= theme //once a theme is selected, it's out of the running!
var/floor = pick(floortypes)
turfs = get_area_turfs(/area/lavaland/surface/outdoors)
if(!turfs.len)
return 0
while(!valid)//Finds some spots to place these rooms at, where they won't be spotted immediately.
valid = 1
sanity++
if(sanity > 100)
return 0
T=pick(turfs)
if(!T)
return 0
var/list/surroundings = list()
surroundings += range(7, locate(T.x,T.y,T.z))
surroundings += range(7, locate(T.x+x_size,T.y,T.z))
surroundings += range(7, locate(T.x,T.y+y_size,T.z))
surroundings += range(7, locate(T.x+x_size,T.y+y_size,T.z))
for(var/turf/check in surroundings)
var/area/new_area = get_area(check)
if(!(istype(new_area, /area/lavaland/surface/outdoors)))
valid = FALSE
break
if(!T)
return 0
room = spawn_room(T,x_size,y_size,walltypes,floor,) //WE'RE FINALLY CREATING THE ROOM
if(room)//time to fill it with stuff
var/list/emptyturfs = room["floors"]
T = pick(emptyturfs)
if(T)
new /obj/structure/glowshroom/single(T) //Just to make it a little more visible
var/surprise = null
surprise = pickweight(treasureitems)
new surprise(T)//here's the prize
emptyturfs -= T
while(areapoints >= 10)//lets throw in the fluff items
T = pick(emptyturfs)
var/garbage = null
garbage = pickweight(fluffitems)
new garbage(T)
areapoints -= 5
emptyturfs -= T
//world.log << "The [theme] themed [T.loc] has been created!"
return 1