Merge branch 'VOREStation:master' into somatoray

This commit is contained in:
FartMaster69420
2021-11-19 17:00:21 -05:00
committed by GitHub
80 changed files with 24152 additions and 626 deletions
+2
View File
@@ -21,6 +21,8 @@
#define isstorage(A) istype(A, /obj/item/weapon/storage)
#define ismecha(A) istype(A, /obj/mecha)
//---------------
//#define isarea(D) istype(D, /area) //Built in
+8 -1
View File
@@ -230,4 +230,11 @@
desc = "A shimmering forcefield that keeps the good air inside and the bad air outside. It seems fairly solid, almost like it's made out of some kind of hardened light.<br><br>Note: prolonged immersion in active atmospheric retention fields may have negative long-term health consequences."
icon = 'icons/obj/atm_fieldgen.dmi'
icon_state = "arfg_field"
density = TRUE
density = TRUE
/obj/machinery/atmospheric_field_generator/perma/underdoors
field_type = /obj/structure/atmospheric_retention_field/underdoors
/obj/structure/atmospheric_retention_field/underdoors
plane = OBJ_PLANE
layer = UNDER_JUNK_LAYER
+13 -1
View File
@@ -101,7 +101,19 @@
/obj/machinery/door/blast/regular/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume)
return // blast doors are immune to fire completely.
/obj/machinery/door/blast/regular/
/obj/machinery/door/blast/regular
heat_proof = 1 //just so repairing them doesn't try to fireproof something that never takes fire damage
/obj/machinery/door/blast/angled/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume)
return // blast doors are immune to fire completely.
/obj/machinery/door/blast/angled
heat_proof = 1 //just so repairing them doesn't try to fireproof something that never takes fire damage
/obj/machinery/door/blast/puzzle/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume)
return // blast doors are immune to fire completely.
/obj/machinery/door/blast/puzzle
heat_proof = 1 //just so repairing them doesn't try to fireproof something that never takes fire damage
/obj/machinery/door/proc/toggle()
+6
View File
@@ -77,6 +77,12 @@
endgame_exits += loc
delete_me = 1
return
//VOREStation Add Start
if("vinestart")
vinestart += loc
delete_me = 1
return
//VORE Station Add End
landmarks_list += src
return 1
+7 -1
View File
@@ -1,6 +1,12 @@
/obj/effect/landmark
var/abductor = 0
/obj/effect/landmark/vines
name = "vinestart"
/obj/effect/landmark/vermin
name = "verminstart"
/obj/effect/landmark/late_antag
name = "Antag Latespawn"
var/antag_id
@@ -39,4 +45,4 @@
/obj/effect/landmark/late_antag/raider
name = "Raider - Lateload"
antag_id = MODE_RAIDER
antag_id = MODE_RAIDER
@@ -158,7 +158,8 @@
/obj/item/stack/nanopaste,
/obj/item/weapon/cell, //this is a bigger belt, might as well make it hold bigger cells too
/obj/item/weapon/pipe_dispenser, //bigger belt for bigger tools
/obj/item/weapon/rcd //see above
/obj/item/weapon/rcd, //see above
/obj/item/device/quantum_pad_booster
)
+190
View File
@@ -1456,3 +1456,193 @@
return pick(prob(5);/turf/simulated/floor/lava,
prob(3);/turf/simulated/floor/outdoors/rocks/caves,
prob(1);/turf/simulated/mineral)
//VOREStation Add Start - Underdark stuff that would be cool if existed if the underdark doesn't.
/obj/random/underdark
name = "random underdark loot"
desc = "Random loot for Underdark."
icon = 'icons/obj/items.dmi'
icon_state = "spickaxe"
/obj/random/underdark/item_to_spawn()
return pick(prob(3);/obj/random/multiple/underdark/miningdrills,
prob(3);/obj/random/multiple/underdark/ores,
prob(2);/obj/random/multiple/underdark/treasure,
prob(1);/obj/random/multiple/underdark/mechtool)
/obj/random/underdark/uncertain
icon_state = "upickaxe"
spawn_nothing_percentage = 65 //only 33% to spawn loot
/obj/random/multiple/underdark/miningdrills
name = "random underdark mining tool loot"
desc = "Random mining tool loot for Underdark."
icon = 'icons/obj/items.dmi'
icon_state = "spickaxe"
/obj/random/multiple/underdark/miningdrills/item_to_spawn()
return pick(
prob(10);list(/obj/item/weapon/pickaxe/silver),
prob(8);list(/obj/item/weapon/pickaxe/drill),
prob(6);list(/obj/item/weapon/pickaxe/jackhammer),
prob(5);list(/obj/item/weapon/pickaxe/gold),
prob(4);list(/obj/item/weapon/pickaxe/plasmacutter),
prob(2);list(/obj/item/weapon/pickaxe/diamond),
prob(1);list(/obj/item/weapon/pickaxe/diamonddrill)
)
/obj/random/multiple/underdark/ores
name = "random underdark mining ore loot"
desc = "Random mining utility loot for Underdark."
icon = 'icons/obj/mining.dmi'
icon_state = "satchel"
/obj/random/multiple/underdark/ores/item_to_spawn()
return pick(
prob(9);list(
/obj/item/weapon/storage/bag/ore,
/obj/item/weapon/shovel,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/hydrogen,
/obj/item/weapon/ore/hydrogen,
/obj/item/weapon/ore/hydrogen,
/obj/item/weapon/ore/hydrogen,
/obj/item/weapon/ore/hydrogen,
/obj/item/weapon/ore/hydrogen
),
prob(7);list(
/obj/item/weapon/storage/bag/ore,
/obj/item/weapon/pickaxe,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium
),
prob(4);list(
/obj/item/clothing/suit/radiation,
/obj/item/clothing/head/radiation,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium),
prob(2);list(
/obj/item/device/flashlight/lantern,
/obj/item/clothing/glasses/material,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond
),
prob(1);list(
/obj/item/weapon/mining_scanner,
/obj/item/weapon/shovel/spade,
/obj/item/weapon/ore/verdantium,
/obj/item/weapon/ore/verdantium,
/obj/item/weapon/ore/verdantium,
/obj/item/weapon/ore/verdantium,
/obj/item/weapon/ore/verdantium
)
)
/obj/random/multiple/underdark/treasure
name = "random underdark treasure"
desc = "Random treasure loot for Underdark."
icon = 'icons/obj/storage.dmi'
icon_state = "cashbag"
/obj/random/multiple/underdark/treasure/item_to_spawn()
return pick(
prob(5);list(
/obj/random/coin,
/obj/random/coin,
/obj/random/coin,
/obj/random/coin,
/obj/random/coin,
/obj/item/clothing/head/pirate
),
prob(4);list(
/obj/item/weapon/storage/bag/cash,
/obj/item/weapon/spacecash/c500,
/obj/item/weapon/spacecash/c100,
/obj/item/weapon/spacecash/c50
),
prob(3);list(
/obj/item/clothing/head/hardhat/orange,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold),
prob(1);list(
/obj/item/stack/material/phoron,
/obj/item/stack/material/phoron,
/obj/item/stack/material/phoron,
/obj/item/stack/material/phoron,
/obj/item/stack/material/diamond,
/obj/item/stack/material/diamond,
/obj/item/stack/material/diamond
)
)
/obj/random/multiple/underdark/mechtool
name = "random underdark mech equipment"
desc = "Random mech equipment loot for Underdark."
icon = 'icons/mecha/mecha_equipment.dmi'
icon_state = "mecha_clamp"
/obj/random/multiple/underdark/mechtool/item_to_spawn()
return pick(
prob(12);list(/obj/item/mecha_parts/mecha_equipment/tool/drill),
prob(10);list(/obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp),
prob(8);list(/obj/item/mecha_parts/mecha_equipment/generator),
prob(7);list(/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot/rigged),
prob(6);list(/obj/item/mecha_parts/mecha_equipment/repair_droid),
prob(3);list(/obj/item/mecha_parts/mecha_equipment/gravcatapult),
prob(2);list(/obj/item/mecha_parts/mecha_equipment/weapon/energy/riggedlaser),
prob(2);list(/obj/item/mecha_parts/mecha_equipment/weapon/energy/flamer/rigged),
prob(1);list(/obj/item/mecha_parts/mecha_equipment/tool/drill/diamonddrill),
)
//VOREStation Add End
+3
View File
@@ -1,3 +1,6 @@
var/list/vinestart = list()
var/list/verminstart = list()
var/list/awayabductors = list() // List of scatter landmarks for Abductors in Gateways
var/list/eventdestinations = list() // List of scatter landmarks for VOREStation event portals
var/list/eventabductors = list() // List of scatter landmarks for VOREStation abductor portals
+7 -2
View File
@@ -310,15 +310,20 @@
// Kill common obstacle in the way like tables.
var/obj/structure/obstacle = locate(/obj/structure, problem_turf)
if(istype(obstacle, /obj/structure/window) || istype(obstacle, /obj/structure/closet) || istype(obstacle, /obj/structure/table) || istype(obstacle, /obj/structure/grille) || istype(obstacle, /obj/effect/weaversilk/wall)) //VOREStation Edit: spdr
if(istype(obstacle, /obj/structure/window) || istype(obstacle, /obj/structure/closet) || istype(obstacle, /obj/structure/table) || istype(obstacle, /obj/structure/grille))
ai_log("destroy_surroundings() : Attacking generic structure.", AI_LOG_INFO)
return melee_attack(obstacle)
var/obj/effect/weaversilk/web = locate(/obj/effect/weaversilk, problem_turf)
if(istype(web, /obj/effect/weaversilk/wall)) //VOREStation Edit: spdr
ai_log("destroy_surroundings() : Attacking weaversilk effect.", AI_LOG_INFO)
return melee_attack(web)
for(var/obj/machinery/door/D in problem_turf) // Required since firelocks take up the same turf.
if(D.density)
ai_log("destroy_surroundings() : Attacking closed door.", AI_LOG_INFO)
return melee_attack(D)
// Should always be last thing attempted
if(!problem_turf.opacity)
ai_log("destroy_surroundings() : Attacking a transparent (window?) turf.", AI_LOG_INFO)
+2 -2
View File
@@ -57,7 +57,7 @@
/obj/item/weapon/reagent_containers/food/drinks/bottle/bluecuracao = 5,
/obj/item/weapon/reagent_containers/food/drinks/bottle/cognac = 5,
/obj/item/weapon/reagent_containers/food/drinks/bottle/grenadine = 5,
/obj/item/weapon/reagent_containers/food/condiment/cornoil = 5,
/obj/item/weapon/reagent_containers/food/condiment/cookingoil = 5,
/obj/item/weapon/reagent_containers/food/drinks/bottle/kahlua = 5,
/obj/item/weapon/reagent_containers/food/drinks/bottle/melonliquor = 5,
/obj/item/weapon/reagent_containers/food/drinks/bottle/peppermintschnapps = 5,
@@ -587,7 +587,7 @@
icon_state = "dinnerware"
products = list(
/obj/item/weapon/reagent_containers/food/condiment/yeast = 5,
/obj/item/weapon/reagent_containers/food/condiment/cornoil = 5,
/obj/item/weapon/reagent_containers/food/condiment/cookingoil = 5,
/obj/item/weapon/tray = 8,
/obj/item/weapon/material/kitchen/utensil/fork = 6,
/obj/item/weapon/material/knife/plastic = 6,
+3 -3
View File
@@ -5,13 +5,13 @@
endWhen = 126
/datum/event/aurora_caelus/announce()
command_announcement.Announce("[station_name()]: A harmless cloud of ions is approaching your station, and will exhaust their energy battering the hull. \
command_announcement.Announce("[station_name()]: A harmless cloud of ions is approaching your [using_map.facility_type], and will exhaust their energy battering the hull. \
Nanotrasen has approved a short break for all employees to relax and observe this very rare event. \
During this time, starlight will be bright but gentle, shifting between quiet green and blue colors. \
Any staff who would like to view these lights for themselves may proceed to the area nearest to them with viewing ports to open space. \
You will have approximately two minutes before the ions begin to reach the hull. \
We hope you enjoy the lights.", "Nanotrasen Meteorology Division", new_sound = 'sound/AI/aurora.ogg') //VOREStation Edit
/datum/event/aurora_caelus/start()
affecting_z -= global.using_map.sealed_levels // Space levels only please!
for(var/mob/M in player_list)
@@ -31,6 +31,6 @@ Please return to your workplace and continue work as normal. \
Have a pleasant shift, [station_name()], and thank you for watching with us.",
"Nanotrasen Meteorology Division", new_sound = 'sound/AI/aurora_end.ogg') //VOREStation Edit
..()
/datum/event/aurora_caelus/overmap/announce()
return
+1 -1
View File
@@ -26,7 +26,7 @@
if(activeFor % 5 != 0)
return // Only process every 10 seconds.
if(count_spawned_carps() < carp_cap)
spawn_fish(rand(1, severity * 2) - 1, severity, severity * 2)
spawn_fish(rand(3, 3 + severity * 2) - 1, 1, severity + 2)
/datum/event/carp_migration/proc/spawn_fish(var/num_groups, var/group_size_min, var/group_size_max, var/dir)
if(isnull(dir))
+1 -1
View File
@@ -22,7 +22,7 @@
qdel(target_spot)
/datum/event/drone_pod_drop/announce()
command_announcement.Announce("An unidentified drone pod has been detected landing near the surface facilty. Open and examine at your own risk.", "NanoTrasen Orbital Monitoring")
command_announcement.Announce("An unidentified drone pod has been detected on a collision course towards the [location_name()]. Open and examine at your own risk.", "[location_name()] Sensor Network")
/datum/event/drone_pod_drop/start()
if(!land_target)
+12 -10
View File
@@ -84,7 +84,8 @@
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Grub Infestation", /datum/event/grub_infestation, 0, list(ASSIGNMENT_SECURITY = 10, ASSIGNMENT_ENGINEER = 30), 1),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Drone Pod Drop", /datum/event/drone_pod_drop, 10, list(ASSIGNMENT_SCIENTIST = 40), 1),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Morph Spawn", /datum/event/morph_spawn, 75, list(ASSIGNMENT_SECURITY = 30, ASSIGNMENT_SCIENTIST = 10), 1),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Maintenance Predator", /datum/event/maintenance_predator, 75, list(ASSIGNMENT_SECURITY = 40), 0)
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Maintenance Predator", /datum/event/maintenance_predator, 75, list(ASSIGNMENT_SECURITY = 40), 0),
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Jellyfish School", /datum/event/jellyfish_migration, 5, list(ASSIGNMENT_ANY = 1, ASSIGNMENT_SECURITY = 5, ASSIGNMENT_MEDICAL = 3), 1),
)
add_disabled_events(list(
new /datum/event_meta(EVENT_LEVEL_MODERATE, "Appendicitis", /datum/event/spontaneous_appendicitis, 0, list(ASSIGNMENT_MEDICAL = 30), 1),
@@ -97,17 +98,18 @@
/datum/event_container/major/New()
available_events = list(
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Nothing", /datum/event/nothing, 3600),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Atmos Leak", /datum/event/atmos_leak, 30, list(ASSIGNMENT_ENGINEER = 25), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Strike", /datum/event/meteor_strike, 10, list(ASSIGNMENT_ENGINEER = 15), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Space Vines", /datum/event/spacevine, 20, list(ASSIGNMENT_ENGINEER = 7), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Carp Migration", /datum/event/carp_migration, 10, list(ASSIGNMENT_SECURITY = 5), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Containment Breach", /datum/event/prison_break/station,0, list(ASSIGNMENT_ANY = 5), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Nothing", /datum/event/nothing, 3600),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Atmos Leak", /datum/event/atmos_leak, 30, list(ASSIGNMENT_ENGINEER = 25), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Space Vines", /datum/event/spacevine, 20, list(ASSIGNMENT_ENGINEER = 7), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Carp Migration", /datum/event/carp_migration, 10, list(ASSIGNMENT_SECURITY = 5), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Containment Breach", /datum/event/prison_break/station, 0, list(ASSIGNMENT_ANY = 5), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Jellyfish Migration", /datum/event/jellyfish_migration, 5, list(ASSIGNMENT_ANY = 1, ASSIGNMENT_SECURITY = 5, ASSIGNMENT_MEDICAL = 3), 1),
)
add_disabled_events(list(
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Blob", /datum/event/blob, 10, list(ASSIGNMENT_ENGINEER = 60), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Wave", /datum/event/meteor_wave, 30, list(ASSIGNMENT_ENGINEER = 15), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Supply Demand", /datum/event/supply_demand, 0, list(ASSIGNMENT_ANY = 5, ASSIGNMENT_SCIENCE = 15, ASSIGNMENT_GARDENER = 10, ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_MEDICAL = 15), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Strike", /datum/event/meteor_strike, 10, list(ASSIGNMENT_ENGINEER = 15), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Blob", /datum/event/blob, 10, list(ASSIGNMENT_ENGINEER = 60), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Wave", /datum/event/meteor_wave, 30, list(ASSIGNMENT_ENGINEER = 15), 1),
new /datum/event_meta(EVENT_LEVEL_MAJOR, "Supply Demand", /datum/event/supply_demand, 0, list(ASSIGNMENT_ANY = 5, ASSIGNMENT_SCIENCE = 15, ASSIGNMENT_GARDENER = 10, ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_MEDICAL = 15), 1),
))
#undef ASSIGNMENT_ANY
+1 -1
View File
@@ -4,7 +4,7 @@
endWhen = 3
/datum/event/ianstorm/announce()
command_announcement.Announce("It has come to our attention that the station passed through an ion storm. Please monitor all electronic equipment for malfunctions.", "Anomaly Alert", 'sound/AI/ian_storm.ogg')
command_announcement.Announce("It has come to our attention that the [using_map.facility_type] passed through an ion storm. Please monitor all electronic equipment for malfunctions.", "Anomaly Alert", 'sound/AI/ian_storm.ogg')
spawn(7 SECONDS)
command_announcement.Announce("Wait. No, thats wrong. The station passed through an IAN storm!.", "Ian Alert")
+55 -97
View File
@@ -1,120 +1,78 @@
#define LOC_KITCHEN 0
#define LOC_ATMOS 1
#define LOC_CHAPEL 2
#define LOC_LIBRARY 3
#define LOC_HYDRO 4
#define LOC_CONSTR 5
#define LOC_TECH 6
#define LOC_GARDEN 7
#define LOC_STEMNGR 8
#define LOC_RESEARCH 9
#define VERM_MICE 0
#define VERM_LIZARDS 1
#define VERM_SPIDERS 2
/datum/event/infestation
announceWhen = 10
endWhen = 11
var/location
var/locstring
var/vermin
var/vermstring
var/list/spawned_vermin = list()
var/spawn_types
var/num_groups
var/prep_size_min
var/prep_size_max
var/vermin_cap = 40
var/list/spawn_locations = list()
/datum/event/infestation/start()
location = rand(0,9)
var/list/turf/simulated/floor/turfs = list()
var/spawn_area_type
switch(location)
if(LOC_KITCHEN)
spawn_area_type = /area/crew_quarters/kitchen
locstring = "the kitchen"
if(LOC_ATMOS)
spawn_area_type = /area/engineering/atmos
locstring = "atmospherics"
if(LOC_CHAPEL)
spawn_area_type = /area/chapel/main
locstring = "the chapel"
if(LOC_LIBRARY)
spawn_area_type = /area/library
locstring = "the library"
if(LOC_HYDRO)
spawn_area_type = /area/hydroponics
locstring = "hydroponics"
if(LOC_CONSTR)
spawn_area_type = /area/construction
locstring = "the construction area"
if(LOC_TECH)
spawn_area_type = /area/storage/tech
locstring = "technical storage"
if(LOC_GARDEN)
spawn_area_type = /area/hydroponics/garden
locstring = "the public garden"
if(LOC_STEMNGR)
spawn_area_type = /area/crew_quarters/captain
locstring = "the site manager's office"
if(LOC_RESEARCH)
spawn_area_type = /area/rnd/research
locstring = "the research division"
for(var/areapath in typesof(spawn_area_type))
var/area/A = locate(areapath)
for(var/turf/simulated/floor/F in A.contents)
//VOREStation Edit - Fixes event
var/blocked = FALSE
for(var/atom/movable/AM in F)
if(AM.density)
blocked = TRUE
if(!blocked)
turfs += F
//VOREStation Edit - Fixes event
var/list/spawn_types = list()
var/max_number
vermin = rand(0,2)
vermin = rand(0,1)
switch(vermin)
if(VERM_MICE)
spawn_types = list(/mob/living/simple_mob/animal/passive/mouse/gray, /mob/living/simple_mob/animal/passive/mouse/brown, /mob/living/simple_mob/animal/passive/mouse/white)
max_number = 12
spawn_types = /mob/living/simple_mob/animal/passive/mouse/gray
prep_size_min = 1
prep_size_max = 4
vermstring = "mice"
if(VERM_LIZARDS)
spawn_types = list(/mob/living/simple_mob/animal/passive/lizard)
max_number = 6
spawn_types = /mob/living/simple_mob/animal/passive/lizard
prep_size_min = 1
prep_size_max = 3
vermstring = "lizards"
if(VERM_SPIDERS)
spawn_types = list(/obj/effect/spider/spiderling)
max_number = 3
vermstring = "spiders"
// Check if any landmarks exist!
for(var/obj/effect/landmark/C in landmarks_list)
if(C.name == "verminstart")
spawn_locations.Add(C.loc)
spawn(0)
var/num = rand(2,max_number)
while(turfs.len > 0 && num > 0)
var/turf/simulated/floor/T = pick(turfs)
turfs.Remove(T)
num--
if(vermin == VERM_SPIDERS)
var/obj/effect/spider/spiderling/S = new(T)
S.amount_grown = -1
else
var/spawn_type = pick(spawn_types)
new spawn_type(T)
/datum/event/infestation/tick()
if(activeFor % 5 != 0)
return // Only process every 10 seconds.
if(count_spawned_vermin() < vermin_cap)
spawn_vermin(rand(4,10), prep_size_min, prep_size_max)
/datum/event/infestation/proc/spawn_vermin(var/num_groups, var/group_size_min, var/group_size_max)
if(spawn_locations.len) // Okay we've got landmarks, lets use those!
shuffle_inplace(spawn_locations)
num_groups = min(num_groups, spawn_locations.len)
for (var/i = 1, i <= num_groups, i++)
var/group_size = rand(group_size_min, group_size_max)
for (var/j = 0, j < group_size, j++)
spawn_one_vermin(spawn_locations[i])
return
// Spawn a single vermin at given location.
/datum/event/infestation/proc/spawn_one_vermin(var/loc)
var/mob/living/simple_mob/animal/M = new spawn_types(loc)
GLOB.destroyed_event.register(M, src, .proc/on_vermin_destruction)
spawned_vermin.Add(M)
return M
// Counts living vermin spawned by this event.
/datum/event/infestation/proc/count_spawned_vermin()
. = 0
for(var/mob/living/simple_mob/animal/M as anything in spawned_vermin)
if(!QDELETED(M) && M.stat != DEAD)
. += 1
// If vermin is kill, remove it from the list.
/datum/event/infestation/proc/on_vermin_destruction(var/mob/M)
spawned_vermin -= M
GLOB.destroyed_event.unregister(M, src, .proc/on_vermin_destruction)
/datum/event/infestation/announce()
command_announcement.Announce("Bioscans indicate that [vermstring] have been breeding in [locstring]. Clear them out, before this starts to affect productivity.", "Vermin infestation")
#undef LOC_KITCHEN
#undef LOC_ATMOS
#undef LOC_CHAPEL
#undef LOC_LIBRARY
#undef LOC_HYDRO
#undef LOC_TECH
#undef LOC_GARDEN
#undef LOC_STEMNGR
#undef LOC_RESEARCH
command_announcement.Announce("Bioscans indicate that [vermstring] have been breeding all over the facility. Clear them out, before this starts to affect productivity.", "Vermin infestation")
#undef VERM_MICE
#undef VERM_LIZARDS
#undef VERM_SPIDERS
#undef VERM_LIZARDS
+102
View File
@@ -0,0 +1,102 @@
/datum/event/jellyfish_migration
startWhen = 0 // Start immediately
announceWhen = 45 // Adjusted by setup
endWhen = 75 // Adjusted by setup
var/jellyfish_cap = 20
var/list/spawned_jellyfish = list()
/datum/event/jellyfish_migration/setup()
announceWhen = rand(30, 60) // 1 to 2 minutes
endWhen += severity * 25
jellyfish_cap = 2 + 3 ** severity // No more than this many at once regardless of waves. (5, 11, 29)
/datum/event/jellyfish_migration/start()
affecting_z -= global.using_map.sealed_levels // Space levels only please!
..()
/datum/event/jellyfish_migration/announce()
var/announcement = ""
if(severity == EVENT_LEVEL_MAJOR)
announcement = "Massive migration of unknown biological entities has been detected near [location_name()], please stand-by."
else
announcement = "Unknown biological [spawned_jellyfish.len == 1 ? "entity has" : "entities have"] been detected near [location_name()], please stand-by."
command_announcement.Announce(announcement, "Lifesign Alert")
/datum/event/jellyfish_migration/tick()
if(activeFor % 5 != 0)
return // Only process every 10 seconds.
if(count_spawned_jellyfish() < jellyfish_cap)
spawn_fish(rand(3, 3 + severity * 2) - 1, 1, severity + 2)
/datum/event/jellyfish_migration/proc/spawn_fish(var/num_groups, var/group_size_min, var/group_size_max, var/dir)
if(isnull(dir))
dir = (victim && prob(80)) ? victim.fore_dir : pick(GLOB.cardinal)
// Check if any landmarks exist! These will use the carp spawn since they already would spawn in these similar spots.
var/list/spawn_locations = list()
for(var/obj/effect/landmark/C in landmarks_list)
if(C.name == "carpspawn" && (C.z in affecting_z))
spawn_locations.Add(C.loc)
if(spawn_locations.len) // Okay we've got landmarks, lets use those!
shuffle_inplace(spawn_locations)
num_groups = min(num_groups, spawn_locations.len)
for (var/i = 1, i <= num_groups, i++)
var/group_size = rand(group_size_min, group_size_max)
for (var/j = 0, j < group_size, j++)
spawn_one_jellyfish(spawn_locations[i])
return
// Okay we did *not* have any landmarks, so lets do our best!
var/i = 1
while (i <= num_groups)
var/Z = pick(affecting_z)
var/group_size = rand(group_size_min, group_size_max)
var/turf/map_center = locate(round(world.maxx/2), round(world.maxy/2), Z)
var/turf/group_center = pick_random_edge_turf(dir, Z, TRANSITIONEDGE + 2)
var/list/turfs = getcircle(group_center, 2)
for (var/j = 0, j < group_size, j++)
var/mob/living/simple_mob/animal/M = spawn_one_jellyfish(turfs[(i % turfs.len) + 1])
// Ray trace towards middle of the map to find where they can stop just outside of structure/ship.
var/turf/target
for(var/turf/T in getline(get_turf(M), map_center))
if(!T.is_space())
break;
target = T
if(target)
M.ai_holder?.give_destination(target) // Ask jellyfish to swim towards the middle of the map
i++
// Spawn a single jellyfish at given location.
/datum/event/jellyfish_migration/proc/spawn_one_jellyfish(var/loc)
var/mob/living/simple_mob/animal/M = new /mob/living/simple_mob/vore/alienanimals/space_jellyfish(loc)
GLOB.destroyed_event.register(M, src, .proc/on_jellyfish_destruction)
spawned_jellyfish.Add(M)
return M
// Counts living jellyfish spawned by this event.
/datum/event/jellyfish_migration/proc/count_spawned_jellyfish()
. = 0
for(var/mob/living/simple_mob/animal/M as anything in spawned_jellyfish)
if(!QDELETED(M) && M.stat != DEAD)
. += 1
// If jellyfish is bomphed, remove it from the list.
/datum/event/jellyfish_migration/proc/on_jellyfish_destruction(var/mob/M)
spawned_jellyfish -= M
GLOB.destroyed_event.unregister(M, src, .proc/on_jellyfish_destruction)
/datum/event/jellyfish_migration/end()
. = ..()
// Clean up jellyfish that died in space for some reason.
spawn(0)
for(var/mob/living/simple_mob/SM in spawned_jellyfish)
if(SM.stat == DEAD)
var/turf/T = get_turf(SM)
if(istype(T, /turf/space))
if(prob(75))
qdel(SM)
CHECK_TICK
// Overmap version
/datum/event/jellyfish_migration/overmap/announce()
return
+1 -1
View File
@@ -37,7 +37,7 @@
/datum/event/prison_break/announce()
if(areas && areas.len > 0)
command_announcement.Announce("[pick("Gr3y.T1d3 virus","Malignant trojan")] detected in [station_name()] [(eventDept == "Security")? "imprisonment":"containment"] subroutines. Secure any compromised areas immediately. Station AI involvement is recommended.", "[eventDept] Alert")
command_announcement.Announce("[pick("Gr3y.T1d3 virus","Malignant trojan")] detected in [station_name()] [(eventDept == "Security")? "imprisonment":"containment"] subroutines. Secure any compromised areas immediately. Involvement of [using_map.facility_type] AI is recommended.", "[eventDept] Alert")
/datum/event/prison_break/start()
+2 -2
View File
@@ -16,7 +16,7 @@
/datum/event/radiation_storm/tick()
if(activeFor == enterBelt)
command_announcement.Announce("The station has entered the radiation belt. Please remain in a sheltered area until we have passed the radiation belt.", "Anomaly Alert")
command_announcement.Announce("The [using_map.facility_type] has entered the radiation belt. Please remain in a sheltered area until we have passed the radiation belt.", "Anomaly Alert")
radiate()
if(activeFor >= enterBelt && activeFor <= leaveBelt)
@@ -27,7 +27,7 @@
radiate()
else if(activeFor == leaveBelt)
command_announcement.Announce("The station has passed the radiation belt. Please allow for up to one minute while radiation levels dissipate, and report to medbay if you experience any unusual symptoms. Maintenance will lose all access again shortly.", "Anomaly Alert")
command_announcement.Announce("The [using_map.facility_type] has passed the radiation belt. Please allow for up to one minute while radiation levels dissipate, and report to medbay if you experience any unusual symptoms. Maintenance will lose all access again shortly.", "Anomaly Alert")
/datum/event/radiation_storm/proc/radiate()
var/radiation_level = rand(15, 35)
for(var/z in using_map.station_levels)
+1 -1
View File
@@ -35,7 +35,7 @@
if(4)
msg = "A passing derelict ship's drone defense systems have just activated. If any are sighted in the area, use caution."
if(5)
msg = "We're detecting a swarm of small objects approaching your station. Most likely a bunch of drones. Please exercise caution if you see any."
msg = "We're detecting a swarm of small objects approaching your [using_map.facility_type]. Most likely a bunch of drones. Please exercise caution if you see any."
//VOREStation Edit End
command_announcement.Announce(msg, "Rogue drone alert")
+3 -3
View File
@@ -9,7 +9,7 @@
endWhen = startWhen + rand(30,90) + rand(30,90) //2-6 minute duration
/datum/event/solar_storm/announce()
command_announcement.Announce("A solar storm has been detected approaching \the [station_name()]. Please halt all EVA activites immediately and return to the interior of the station.", "Anomaly Alert", new_sound = 'sound/AI/radiation.ogg')
command_announcement.Announce("A solar storm has been detected approaching \the [station_name()]. Please halt all EVA activites immediately and return to the interior of the [using_map.facility_type].", "Anomaly Alert", new_sound = 'sound/AI/radiation.ogg')
adjust_solar_output(1.5)
/datum/event/solar_storm/proc/adjust_solar_output(var/mult = 1)
@@ -18,7 +18,7 @@
/datum/event/solar_storm/start()
command_announcement.Announce("The solar storm has reached the station. Please refrain from EVA and remain inside the station until it has passed.", "Anomaly Alert")
command_announcement.Announce("The solar storm has reached the [using_map.facility_type]. Please refrain from EVA and remain inside the station until it has passed.", "Anomaly Alert")
adjust_solar_output(5)
@@ -40,7 +40,7 @@
L.rad_act(rand(15, 30))
/datum/event/solar_storm/end()
command_announcement.Announce("The solar storm has passed the station. It is now safe to resume EVA activities. Please report to medbay if you experience any unusual symptoms. ", "Anomaly Alert")
command_announcement.Announce("The solar storm has passed the [using_map.facility_type]. It is now safe to resume EVA activities. Please report to medbay if you experience any unusual symptoms. ", "Anomaly Alert")
adjust_solar_output()
+1 -1
View File
@@ -63,7 +63,7 @@
send_console_message(message, dpt);
// Also announce over main comms so people know to look
command_announcement.Announce("An order for the station to deliver supplies to [command_name()] has been delivered to all supply Request Consoles", my_department)
command_announcement.Announce("An order for the [using_map.facility_type] to deliver supplies to [command_name()] has been delivered to all supply Request Consoles", my_department)
/datum/event/supply_demand/tick()
if(required_items.len == 0)
+1 -1
View File
@@ -15,7 +15,7 @@
/datum/event/wallrot/announce()
if(center)
command_announcement.Announce("Harmful fungi detected on \the [station_name()] nearby [center.loc.name]. Station structures may be contaminated.", "Biohazard Alert")
command_announcement.Announce("Harmful fungi detected on \the [station_name()] and [using_map.facility_type] structures nearby [center.loc.name] may be contaminated.", "Biohazard Alert")
/datum/event/wallrot/start()
spawn()
+1 -1
View File
@@ -6,4 +6,4 @@
wormhole_event()
/datum/event/wormholes/end()
command_announcement.Announce("There are no more space-time anomalies detected on the station.", "Anomaly Alert")
command_announcement.Announce("There are no more space-time anomalies detected on the [using_map.facility_type].", "Anomaly Alert")
+10 -3
View File
@@ -101,9 +101,9 @@
desc = "Often used to flavor food or make people sneeze."
icon_state = "peppermillsmall"
center_of_mass = list("x"=17, "y"=11)
if("cornoil")
name = "Corn Oil"
desc = "A delicious oil used in cooking. Made from corn."
if("cookingoil")
name = "Cooking Oil"
desc = "A delicious oil used in cooking. General purpose."
icon_state = "oliveoil"
center_of_mass = list("x"=16, "y"=6)
if("sugar")
@@ -175,6 +175,13 @@
. = ..()
reagents.add_reagent("capsaicin", 50)
/obj/item/weapon/reagent_containers/food/condiment/cookingoil
name = "Cooking Oil"
/obj/item/weapon/reagent_containers/food/condiment/cookingoil/Initialize()
. = ..()
reagents.add_reagent("cookingoil", 50)
/obj/item/weapon/reagent_containers/food/condiment/cornoil
name = "Corn Oil"
+1 -1
View File
@@ -3361,7 +3361,7 @@
. = ..()
reagents.add_reagent("blackpepper", 1)
reagents.add_reagent("sodiumchloride", 1)
reagents.add_reagent("cornoil", 1)
reagents.add_reagent("cookingoil", 1)
/obj/item/weapon/reagent_containers/food/snacks/turkeyslice
name = "turkey drumstick"
@@ -13,13 +13,13 @@
appliancetype = FRYER
active_power_usage = 12 KILOWATTS
heating_power = 12 KILOWATTS
light_y = 15
min_temp = 140 + T0C // Same as above, increasing this to just under 2x to make the % increase on efficiency not quite so painful as it would be at 80.
optimal_temp = 400 + T0C // Increasing this to be 2x Oven to allow for a much higher/realistic frying temperatures. Doesn't really do anything but make heating the fryer take a bit longer.
optimal_power = 0.95 // .35 higher than the default to give fryers faster cooking speed.
idle_power_usage = 3.6 KILOWATTS
// Power used to maintain temperature once it's heated.
// Going with 25% of the active power. This is a somewhat arbitrary value.
@@ -33,11 +33,11 @@
var/datum/reagents/oil
var/optimal_oil = 9000 //90 litres of cooking oil
/obj/machinery/appliance/cooker/fryer/Initialize()
. = ..()
fry_loop = new(list(src), FALSE)
oil = new/datum/reagents(optimal_oil * 1.25, src)
var/variance = rand()*0.15
// Fryer is always a little below full, but its usually negligible
@@ -45,18 +45,18 @@
if(prob(20))
// Sometimes the fryer will start with much less than full oil, significantly impacting efficiency until filled
variance = rand()*0.5
oil.add_reagent("cornoil", optimal_oil*(1 - variance))
oil.add_reagent("cookingoil", optimal_oil*(1 - variance))
/obj/machinery/appliance/cooker/fryer/Destroy()
QDEL_NULL(fry_loop)
QDEL_NULL(oil)
return ..()
/obj/machinery/appliance/cooker/fryer/examine(var/mob/user)
. = ..()
if(Adjacent(user))
to_chat(user, "Oil Level: [oil.total_volume]/[optimal_oil]")
/obj/machinery/appliance/cooker/fryer/update_icon() // We add our own version of the proc to use the special fryer double-lights.
cut_overlays()
var/image/light
@@ -69,7 +69,7 @@
light.pixel_x = light_x
light.pixel_y = light_y
add_overlay(light)
/obj/machinery/appliance/cooker/fryer/heat_up()
if (..())
//Set temperature of oil reagent
@@ -102,7 +102,7 @@
cooking_power *= oil_efficiency
/obj/machinery/appliance/cooker/fryer/update_icon()
if(!stat)
..()
@@ -119,7 +119,7 @@
if(fry_loop)
fry_loop.stop(src)
..()
//Fryer gradually infuses any cooked food with oil. Moar calories
//This causes a slow drop in oil levels, encouraging refill after extended use
/obj/machinery/appliance/cooker/fryer/do_cooking_tick(var/datum/cooking_item/CI)
@@ -177,13 +177,13 @@
return
// user.visible_message("<span class='danger'>\The [user] starts pushing \the [victim] into \the [src]!</span>")
//Removed delay on this action in favour of a cooldown after it
//If you can lure someone close to the fryer and grab them then you deserve success.
//And a delay on this kind of niche action just ensures it never happens
//Cooldown ensures it can't be spammed to instakill someone
user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN*3)
fry_loop.start(src)
if(!do_mob(user, victim, 20))
@@ -239,9 +239,9 @@
//Coat the victim in some oil
oil.trans_to(victim, 40)
fry_loop.stop()
/obj/machinery/appliance/cooker/fryer/attackby(var/obj/item/I, var/mob/user)
if(istype(I, /obj/item/weapon/reagent_containers/glass) && I.reagents)
if (I.reagents.total_volume <= 0 && oil)
+18 -1
View File
@@ -522,13 +522,20 @@ I said no!
)
result = /obj/item/weapon/reagent_containers/food/snacks/cutlet
/datum/recipe/roastedsunflowerseeds
/datum/recipe/roastedcornsunflowerseeds
reagents = list("sodiumchloride" = 1, "cornoil" = 1)
items = list(
/obj/item/weapon/reagent_containers/food/snacks/rawsunflower
)
result = /obj/item/weapon/reagent_containers/food/snacks/roastedsunflower
/datum/recipe/roastedsunflowerseeds
reagents = list("sodiumchloride" = 1, "cookingoil" = 1)
items = list(
/obj/item/weapon/reagent_containers/food/snacks/rawsunflower
)
result = /obj/item/weapon/reagent_containers/food/snacks/roastedsunflower
/datum/recipe/roastedpeanutsunflowerseeds
reagents = list("sodiumchloride" = 1, "peanutoil" = 1)
items = list(
@@ -537,10 +544,20 @@ I said no!
result = /obj/item/weapon/reagent_containers/food/snacks/roastedsunflower
/datum/recipe/roastedpeanuts
fruit = list("peanut" = 2)
reagents = list("sodiumchloride" = 2, "cookingoil" = 1)
result = /obj/item/weapon/reagent_containers/food/snacks/roastedpeanuts
/datum/recipe/roastedpeanutscorn
fruit = list("peanut" = 2)
reagents = list("sodiumchloride" = 2, "cornoil" = 1)
result = /obj/item/weapon/reagent_containers/food/snacks/roastedpeanuts
/datum/recipe/roastedpeanutspeanut
fruit = list("peanut" = 2)
reagents = list("sodiumchloride" = 2, "peanutoil" = 1)
result = /obj/item/weapon/reagent_containers/food/snacks/roastedpeanuts
/datum/recipe/mint
reagents = list("sugar" = 5, "frostoil" = 5)
result = /obj/item/weapon/reagent_containers/food/snacks/mint
@@ -3,15 +3,8 @@
/proc/spacevine_infestation(var/potency_min=70, var/potency_max=100, var/maturation_min=5, var/maturation_max=15)
spawn() //to stop the secrets panel hanging
var/list/turf/simulated/floor/turfs = list() //list of all the empty floor turfs in the hallway areas
for(var/areapath in typesof(/area/hallway))
var/area/A = locate(areapath)
for(var/turf/simulated/floor/F in A.contents)
if(!F.check_density())
turfs += F
if(turfs.len) //Pick a turf to spawn at if we can
var/turf/simulated/floor/T = pick(turfs)
if(vinestart.len) //Pick a turf to spawn at if we can
var/turf/simulated/floor/T = pick(vinestart)
var/datum/seed/seed = SSplants.create_random_seed(1)
seed.set_trait(TRAIT_SPREAD,2) // So it will function properly as vines.
seed.set_trait(TRAIT_POTENCY,rand(potency_min, potency_max)) // 70-100 potency will help guarantee a wide spread and powerful effects.
@@ -55,6 +55,7 @@
gluttonous = 1
blood_volume = 400
hunger_factor = 0.2
soft_landing = TRUE
ambiguous_genders = TRUE
@@ -89,6 +89,7 @@
desc = "A silky, yet firm trap. Be careful not to step into it! Or don't..."
icon_state = "trap"
var/trap_active = TRUE
can_buckle = TRUE
/obj/effect/weaversilk/trap/Crossed(atom/movable/AM as mob|obj)
if(AM.is_incorporeal())
@@ -106,17 +107,18 @@
"<b>You hear a squishy noise!</b>"
)
set_dir(L.dir)
can_buckle = TRUE
buckle_mob(L)
L.Stun(1)
to_chat(L, "<span class='danger'>The sticky fibers of \the [src] ensnare, trapping you in place!</span>")
trap_active = FALSE
can_buckle = initial(can_buckle)
desc += " Actually, it looks like it's been all spent."
..()
/obj/effect/weaversilk/trap/MouseDrop_T(atom/movable/AM,mob/user)
return
// Items
// TODO: Spidersilk clothing and actual bindings, once sprites are ready.
@@ -0,0 +1,171 @@
GLOBAL_VAR_CONST(max_jellyfish, 50)
GLOBAL_VAR_INIT(jellyfish_count, 0)
/datum/category_item/catalogue/fauna/space_jellyfish
name = "Alien Wildlife - Space Jellyfish"
desc = "A hostile space predator. \
This space jellyfish uses hypnotic patterns to lure in prey, which it then wraps in tentacles to leech energy from.\
It is somewhat weak, but uses unknown means to stun prey. It uses the energy of its prey to replicate itself. \
These creatures can quickly grow out of control if left to feed and reproduce unchecked. \
Notable weakness to rapid cooling from ice based weaponry.\
The flesh is typically non-toxic and quite delicious. Their cores are considered a delicacy in many regions."
value = CATALOGUER_REWARD_EASY
/mob/living/simple_mob/vore/alienanimals/space_jellyfish
name = "space jellyfish"
desc = "A semi-translucent space creature, possessing of tentacles and a hypnotizing, flashing bio-luminescent display."
tt_desc = "Semaeostomeae Stellarus"
catalogue_data = list(/datum/category_item/catalogue/fauna/space_jellyfish)
icon = 'icons/mob/alienanimals_x32.dmi'
icon_state = "space_jellyfish"
icon_living = "space_jellyfish"
icon_dead = "space_jellyfish_dead"
has_eye_glow = TRUE
hovering = TRUE
faction = "jellyfish"
maxHealth = 100
health = 100
nutrition = 150
pass_flags = PASSTABLE
movement_cooldown = 3.25
see_in_dark = 10
response_help = "pets"
response_disarm = "gently pushes aside"
response_harm = "punches"
harm_intent_damage = 1
melee_damage_lower = 1
melee_damage_upper = 2
attack_sharp = FALSE
attack_sound = 'sound/weapons/tap.ogg'
attacktext = list("drained", "bludgeoned", "wraped", "tentacle whipped")
ai_holder_type = /datum/ai_holder/simple_mob/melee/evasive/jellyfish
min_oxy = 0
max_oxy = 0
min_tox = 0
max_tox = 0
min_co2 = 0
max_co2 = 0
min_n2 = 0
max_n2 = 0
minbodytemp = 0
maxbodytemp = 900
speak_emote = list("thrumms")
meat_amount = 0
meat_type = /obj/item/weapon/reagent_containers/food/snacks/jellyfishcore
say_list_type = /datum/say_list/jellyfish
vore_active = 1
vore_capacity = 1
vore_bump_chance = 25
vore_ignores_undigestable = 0
vore_default_mode = DM_DRAIN
vore_icons = SA_ICON_LIVING
vore_stomach_name = "internal chamber"
vore_default_contamination_flavor = "Wet"
vore_default_contamination_color = "grey"
vore_default_item_mode = IM_DIGEST
var/reproduction_cooldown = 0
/datum/say_list/jellyfish
emote_see = list("flickers", "flashes", "looms","pulses","sways","shimmers hypnotically")
/mob/living/simple_mob/vore/alienanimals/space_jellyfish/init_vore()
..()
var/obj/belly/B = vore_selected
B.name = "internal chamber"
B.desc = "It's smooth and translucent. You can see the world around you distort and wobble with the movement of the space jellyfish. It floats casually, while the delicate flesh seems to form to you. It's surprisingly cool, and flickers with its own light. You're on display for all to see, trapped within the confines of this strange space alien!"
B.mode_flags = 40
B.digest_brute = 0.5
B.digest_burn = 0.5
B.digestchance = 0
B.absorbchance = 0
B.escapechance = 15
/mob/living/simple_mob/vore/alienanimals/space_jellyfish/apply_melee_effects(var/atom/A)
if(isliving(A))
var/mob/living/L = A
var/leech = rand(1,100)
if(L.nutrition)
L.adjust_nutrition(-leech)
adjust_nutrition(leech)
if(prob(25))
L.adjustHalLoss(leech)
/mob/living/simple_mob/vore/alienanimals/space_jellyfish/New(newloc, jellyfish)
GLOB.jellyfish_count ++
var/mob/living/simple_mob/vore/alienanimals/space_jellyfish/parent = jellyfish
if(parent)
parent.faction = faction
..()
/mob/living/simple_mob/vore/alienanimals/space_jellyfish/death()
. = ..()
new /obj/item/weapon/reagent_containers/food/snacks/jellyfishcore(loc, nutrition)
GLOB.jellyfish_count --
qdel(src)
/mob/living/simple_mob/vore/alienanimals/space_jellyfish/Life()
. = ..()
if(client)
return
reproduce()
/mob/living/simple_mob/vore/alienanimals/space_jellyfish/proc/reproduce()
if(reproduction_cooldown > 0)
reproduction_cooldown --
return
if(GLOB.jellyfish_count >= GLOB.max_jellyfish)
return
if(nutrition < 500)
return
if(prob(10))
new /mob/living/simple_mob/vore/alienanimals/space_jellyfish(loc, src)
adjust_nutrition(-400)
reproduction_cooldown = 60
/mob/living/simple_mob/vore/alienanimals/space_jellyfish/Process_Spacemove(var/check_drift = 0)
return TRUE
/datum/ai_holder/simple_mob/melee/evasive/jellyfish
hostile = TRUE
cooperative = FALSE
retaliate = TRUE
speak_chance = 2
wander = TRUE
unconscious_vore = TRUE
/obj/item/weapon/reagent_containers/food/snacks/jellyfishcore
name = "jellyfish core"
icon = 'icons/obj/food_vr.dmi'
icon_state = "jellyfish_core"
desc = "The pulsing core of a space jellyfish! ... It smells delicious."
nutriment_amt = 50
bitesize = 1000
nutriment_desc = list("heavenly space meat" = 100)
var/inherited_nutriment = 0
/obj/item/weapon/reagent_containers/food/snacks/jellyfishcore/New(newloc, inherit)
inherited_nutriment = inherit
. = ..()
/obj/item/weapon/reagent_containers/food/snacks/jellyfishcore/Initialize()
nutriment_amt += inherited_nutriment
. = ..()
reagents.add_reagent("nutriment", nutriment_amt, nutriment_desc)
@@ -0,0 +1,219 @@
/datum/category_item/catalogue/fauna/space_ghost
name = "Alien Wildlife - Space Ghost"
desc = "A mysterious and unknown creature made of radical energy.\
This creature's energy interferes the nervous system in many kinds of creatures, which may result in hallucinations.\
This creature's lack of a physical form leaves it quite resistant to physical damage.\
Smaller variants of this creature seem to be vulnerable to bright light.\
While both variants are quite vulnerable to laser and energy weapons."
value = CATALOGUER_REWARD_EASY
/mob/living/simple_mob/vore/alienanimals/space_ghost
name = "space ghost"
desc = "A pulsing mass of darkness that seems to have gained sentience."
tt_desc = "?????"
catalogue_data = list(/datum/category_item/catalogue/fauna/space_ghost)
icon = 'icons/mob/alienanimals_x32.dmi'
icon_state = "space_ghost"
icon_living = "space_ghost"
icon_dead = "space_ghost_dead"
has_eye_glow = TRUE
hovering = TRUE
pass_flags = PASSTABLE
faction = "space ghost"
maxHealth = 50
health = 50
movement_cooldown = 3.25
see_in_dark = 10
response_help = "pets"
response_disarm = "gently pushes aside"
response_harm = "punches"
harm_intent_damage = 0
melee_damage_lower = 1
melee_damage_upper = 1
attack_sharp = FALSE
attacktext = list("spooked", "startled", "jumpscared", "screamed at")
ai_holder_type = /datum/ai_holder/simple_mob/melee/space_ghost
min_oxy = 0
max_oxy = 0
min_tox = 0
max_tox = 0
min_co2 = 0
max_co2 = 0
min_n2 = 0
max_n2 = 0
minbodytemp = 0
maxbodytemp = 999999
armor = list(
"melee" = 100,
"bullet" = 100,
"laser" = 0,
"energy" = 0,
"bomb" = 0,
"bio" = 0,
"rad" = 100)
armor_soak = list(
"melee" = 100,
"bullet" = 100,
"laser" = 0,
"energy" = 0,
"bomb" = 0,
"bio" = 0,
"rad" = 100
)
speak_emote = list("rumbles")
loot_list = list(/obj/item/weapon/ore/diamond)
vore_active = 0
projectiletype = /mob/living/simple_mob/vore/alienanimals/spooky_ghost
projectilesound = null
projectile_accuracy = 0
projectile_dispersion = 0
needs_reload = TRUE
reload_max = 1
reload_count = 0
reload_time = 7 SECONDS
/datum/ai_holder/simple_mob/ranged/kiting/space_ghost
hostile = TRUE
retaliate = TRUE
destructive = TRUE
violent_breakthrough = TRUE
speak_chance = 0
/mob/living/simple_mob/vore/alienanimals/space_ghost/apply_melee_effects(var/atom/A)
var/mob/living/L = A
L.hallucination += 50
/mob/living/simple_mob/vore/alienanimals/space_ghost/shoot(atom/A) //We're shooting ghosts at people and need them to have the same faction as their parent, okay?
if(!projectiletype)
return
if(A == get_turf(src))
return
face_atom(A)
if(reload_count >= reload_max)
return
var/mob/living/simple_mob/P = new projectiletype(loc, src)
if(!P)
return
if(needs_reload)
reload_count++
P.faction = faction
playsound(src, projectilesound, 80, 1)
/mob/living/simple_mob/vore/alienanimals/space_ghost/death(gibbed, deathmessage = "fades away!")
. = ..()
qdel(src)
/mob/living/simple_mob/vore/alienanimals/spooky_ghost
name = "space ghost"
desc = "A pulsing mass of darkness that seems to have gained sentience."
tt_desc = "?????"
catalogue_data = list(/datum/category_item/catalogue/fauna/space_ghost)
icon = 'icons/mob/alienanimals_x32.dmi'
icon_state = "spookyghost-1"
icon_living = "spookyghost-1"
icon_dead = "space_ghost_dead"
hovering = TRUE
pass_flags = PASSTABLE
faction = "space ghost"
maxHealth = 5
health = 5
movement_cooldown = 1
see_in_dark = 10
alpha = 128
response_help = "pets"
response_disarm = "gently pushes aside"
response_harm = "punches"
harm_intent_damage = 0
melee_damage_lower = 1
melee_damage_upper = 1
attack_sharp = FALSE
attacktext = list("spooked", "startled", "jumpscared", "screamed at")
min_oxy = 0
max_oxy = 0
min_tox = 0
max_tox = 0
min_co2 = 0
max_co2 = 0
min_n2 = 0
max_n2 = 0
minbodytemp = 0
maxbodytemp = 999999
armor = list(
"melee" = 100,
"bullet" = 100,
"laser" = 0,
"energy" = 0,
"bomb" = 0,
"bio" = 0,
"rad" = 100)
armor_soak = list(
"melee" = 100,
"bullet" = 100,
"laser" = 0,
"energy" = 0,
"bomb" = 0,
"bio" = 0,
"rad" = 100
)
speak_emote = list("rumbles")
vore_active = 0
ai_holder_type = /datum/ai_holder/simple_mob/melee/space_ghost
/mob/living/simple_mob/vore/alienanimals/spooky_ghost/Initialize()
. = ..()
icon_living = "spookyghost-[rand(1,2)]"
icon_state = icon_living
addtimer(CALLBACK(src, .proc/death), 2 MINUTES)
update_icon()
/datum/ai_holder/simple_mob/melee/space_ghost
hostile = TRUE
retaliate = TRUE
destructive = TRUE
violent_breakthrough = TRUE
speak_chance = 0
/mob/living/simple_mob/vore/alienanimals/spooky_ghost/death(gibbed, deathmessage = "fades away!")
. = ..()
qdel(src)
/mob/living/simple_mob/vore/alienanimals/spooky_ghost/apply_melee_effects(var/atom/A)
var/mob/living/L = A
L.hallucination += rand(1,50)
/mob/living/simple_mob/vore/alienanimals/spooky_ghost/Life()
. = ..()
var/turf/T = get_turf(src)
if(!T)
return
if(T.get_lumcount() >= 0.5)
adjustBruteLoss(1)
@@ -0,0 +1,175 @@
/datum/category_item/catalogue/fauna/startreader
name = "Alien Wildlife - Star Treader"
desc = "A hard shelled creature that lives on asteroids.\
It is quite durable and very opportunistic in its feeding habits.\
It is vulnerable to extreme vibrations, and from the bottom."
value = CATALOGUER_REWARD_EASY
/mob/living/simple_mob/vore/alienanimals/startreader
name = "asteroid star treader"
desc = "A slow, hard shelled creature that stalks asteroids."
tt_desc = "Testudines Stellarus"
catalogue_data = list(/datum/category_item/catalogue/fauna/startreader)
icon = 'icons/mob/alienanimals_x32.dmi'
icon_state = "startreader"
icon_living = "startreader"
icon_dead = "startreader_dead"
faction = "space turtle"
maxHealth = 1000
health = 1000
movement_cooldown = 20
see_in_dark = 10
response_help = "pets"
response_disarm = "gently pushes aside"
response_harm = "punches"
harm_intent_damage = 1
melee_damage_lower = 1
melee_damage_upper = 10
attack_sharp = FALSE
attacktext = list("chomped", "bashed", "monched", "bumped")
ai_holder_type = /datum/ai_holder/simple_mob/melee/startreader
min_oxy = 0
max_oxy = 0
min_tox = 0
max_tox = 0
min_co2 = 0
max_co2 = 0
min_n2 = 0
max_n2 = 0
minbodytemp = 0
maxbodytemp = 900
loot_list = list(/obj/random/underdark/uncertain)
armor = list(
"melee" = 100,
"bullet" = 100,
"laser" = 100,
"energy" = 100,
"bomb" = 0,
"bio" = 100,
"rad" = 100)
armor_soak = list(
"melee" = 30,
"bullet" = 30,
"laser" = 10,
"energy" = 10,
"bomb" = 0,
"bio" = 100,
"rad" = 100
)
speak_emote = list("rumbles")
say_list_type = /datum/say_list/startreader
vore_active = 1
vore_capacity = 2
vore_bump_chance = 25
vore_ignores_undigestable = 0
vore_default_mode = DM_DRAIN
vore_icons = SA_ICON_LIVING
vore_stomach_name = "gastric sac"
vore_default_contamination_flavor = "Wet"
vore_default_contamination_color = "grey"
vore_default_item_mode = IM_DIGEST
var/flipped = FALSE
var/flip_cooldown = 0
/datum/say_list/startreader
emote_see = list("bobs", "digs around","gnashes at something","yawns","snaps at something")
emote_hear = list("thrumms","clicks","rattles","groans","burbles")
/mob/living/simple_mob/vore/alienanimals/startreader/init_vore()
..()
var/obj/belly/B = vore_selected
B.name = "gastric sac"
B.desc = "It's cramped and hot! You're forced into a small ball as your shape is squeezed into the slick, wet chamber. Despite being swallowed into the creature, you find that you actually stretch out of the top a ways, and can JUST BARELY wiggle around..."
B.mode_flags = 40
B.digest_brute = 0.5
B.digest_burn = 0.5
B.digestchance = 10
B.absorbchance = 0
B.escapechance = 15
/datum/ai_holder/simple_mob/melee/startreader
hostile = TRUE
retaliate = TRUE
destructive = TRUE
violent_breakthrough = TRUE
/mob/living/simple_mob/vore/alienanimals/startreader/apply_melee_effects(var/atom/A)
if(prob(25))
var/mob/living/L = A
if(isliving(A))
visible_message("<span class='danger'>\The [src] trips \the [L]!</span>!")
L.weakened += rand(1,10)
/mob/living/simple_mob/vore/alienanimals/startreader/Life()
. = ..()
if(flip_cooldown == 1)
flip_cooldown = 0
flipped = FALSE
handle_flip()
visible_message("<span class='notice'>\The [src] rights itself!!!</span>")
return
if(flip_cooldown)
flip_cooldown --
SetStunned(2)
/mob/living/simple_mob/vore/alienanimals/startreader/proc/handle_flip()
if(flipped)
armor = list(
"melee" = 0,
"bullet" = 0,
"laser" = 0,
"energy" = 0,
"bomb" = 0,
"bio" = 0,
"rad" = 0)
armor_soak = list(
"melee" = 0,
"bullet" = 0,
"laser" = 0,
"energy" = 0,
"bomb" = 0,
"bio" = 0,
"rad" = 0
)
icon_living = "startreader_flipped"
AdjustStunned(flip_cooldown)
else
armor = list(
"melee" = 100,
"bullet" = 100,
"laser" = 100,
"energy" = 100,
"bomb" = 0,
"bio" = 100,
"rad" = 100)
armor_soak = list(
"melee" = 30,
"bullet" = 30,
"laser" = 10,
"energy" = 10,
"bomb" = 0,
"bio" = 100,
"rad" = 100
)
icon_living = "startreader"
SetStunned(0)
update_icon()
@@ -687,7 +687,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have?
amount_grown -= rand(100,250)
if(not_hungy)
do_breeding()
if(prob(0.5))
if(!client && prob(0.5))
teppi_sound()
/mob/living/simple_mob/vore/alienanimals/teppi/proc/do_breeding()
@@ -1,18 +1,21 @@
/mob/living/simple_mob/vore
mob_class = MOB_CLASS_ANIMAL
mob_bump_flag = 0
/mob/living/simple_mob
var/nameset
var/limit_renames = TRUE
/mob/living/simple_mob/vore/Login()
/mob/living/simple_mob/Login()
. = ..()
verbs |= /mob/living/simple_mob/vore/proc/set_name
verbs |= /mob/living/simple_mob/vore/proc/set_desc
verbs |= /mob/living/simple_mob/proc/set_name
verbs |= /mob/living/simple_mob/proc/set_desc
/mob/living/simple_mob/vore/proc/set_name()
/mob/living/simple_mob/proc/set_name()
set name = "Set Name"
set desc = "Sets your mobs name. You only get to do this once."
set category = "Abilities"
if(nameset)
if(limit_renames && nameset)
to_chat(src, "<span class='userdanger'>You've already set your name. Ask an admin to toggle \"nameset\" to 0 if you really must.</span>")
return
var/newname
@@ -22,7 +25,7 @@
voice_name = newname
nameset = 1
/mob/living/simple_mob/vore/proc/set_desc()
/mob/living/simple_mob/proc/set_desc()
set name = "Set Description"
set desc = "Set your description."
set category = "Abilities"
@@ -32,4 +35,4 @@
desc = newdesc
/mob/living/simple_mob/vore/aggressive
mob_bump_flag = HEAVY
mob_bump_flag = HEAVY
@@ -45,4 +45,14 @@
L.Confuse(1)
L.throw_at(get_edge_target_turf(L, throwdir), rand(3,6), 10)
//VOREStation Add Start
if(istype(L, /mob/living/simple_mob/vore/alienanimals/startreader))
var/mob/living/simple_mob/vore/alienanimals/startreader/S = L
if(!S.flipped)
S.adjustBruteLoss(100)
S.visible_message("<span class='notice'>\The [S] is flipped over!!!</span>")
S.flipped = TRUE
S.flip_cooldown = 10
S.handle_flip()
//VOREStation Add End
return 1
@@ -87,7 +87,12 @@
new_temperature = round(new_temperature * temp_factor)
L.bodytemperature = new_temperature
//VOREStation Add Start - The last metroid has escaped from captivity, the galaxy is no longer safe.
if(istype(L, /mob/living/simple_mob/vore/alienanimals/space_jellyfish) && target_temperature <= T0C)
var/mob/living/simple_mob/vore/alienanimals/space_jellyfish/J = L
J.adjustFireLoss(75)
J.movement_cooldown *= 2
//VOREStation Add End
return 1
/obj/item/projectile/temp/hot
@@ -461,7 +461,7 @@
/obj/structure/reagent_dispensers/cookingoil/New()
..()
reagents.add_reagent("cornoil",5000)
reagents.add_reagent("cookingoil",5000)
/obj/structure/reagent_dispensers/cookingoil/bullet_act(var/obj/item/projectile/Proj)
if(Proj.get_structure_damage())
@@ -141,7 +141,7 @@
name = "Space Beer"
id = "spacebeer"
result = "beer"
required_reagents = list("cornoil" = 10)
required_reagents = list("cornoil" = 5, "flour" = 5)
catalysts = list("enzyme" = 5)
result_amount = 10
@@ -907,7 +907,7 @@
name = "Debugger"
id = "debugger"
result = "debugger"
required_reagents = list("fuel" = 1, "sugar" = 2, "cornoil" = 2)
required_reagents = list("fuel" = 1, "sugar" = 2, "cookingoil" = 2)
result_amount = 5
/decl/chemical_reaction/instant/drinks/spacersbrew
@@ -1205,14 +1205,14 @@
name = "Oil Slick"
id = "oilslick"
result = "oilslick"
required_reagents = list("cornoil" = 2, "honey" = 1)
required_reagents = list("cookingoil" = 2, "honey" = 1)
result_amount = 3
/decl/chemical_reaction/instant/drinks/slimeslam
name = "Slick Slime Slammer"
id = "slimeslammer"
result = "slimeslammer"
required_reagents = list("cornoil" = 2, "peanutbutter" = 1)
required_reagents = list("cookingoil" = 2, "peanutbutter" = 1)
result_amount = 3
/decl/chemical_reaction/instant/drinks/virginsexonthebeach
@@ -1254,7 +1254,7 @@
name = "Soda Oil"
id = "sodaoil"
result = "sodaoil"
required_reagents = list("cornoil" = 4, "sodawater" = 1, "carbon" = 1, "tricordrazine" = 1)
required_reagents = list("cookingoil" = 4, "sodawater" = 1, "carbon" = 1, "tricordrazine" = 1)
result_amount = 6
/decl/chemical_reaction/instant/drinks/fusionnaire
@@ -52,6 +52,22 @@
new /obj/item/weapon/reagent_containers/food/snacks/chocolatebar(location)
return
/decl/chemical_reaction/instant/food/cookingoilcorn
name = "Cooking Oil"
id = "cookingoilcorn"
result = "cookingoil"
required_reagents = list("cornoil" = 10)
catalysts = list("enzyme" = 5)
result_amount = 10
/decl/chemical_reaction/instant/food/cookingoilpeanut
name = "Cooking Oil"
id = "cookingoilpeanut"
result = "cookingoil"
required_reagents = list("peanutoil" = 10)
catalysts = list("enzyme" = 5)
result_amount = 10
/decl/chemical_reaction/instant/food/soysauce
name = "Soy Sauce"
id = "soysauce"
@@ -85,7 +101,7 @@
name = "mayonnaise"
id = "mayo"
result = "mayo"
required_reagents = list("egg" = 9, "cornoil" = 5, "lemonjuice" = 5, "sodiumchloride" = 1)
required_reagents = list("egg" = 9, "cookingoil" = 5, "lemonjuice" = 5, "sodiumchloride" = 1)
result_amount = 15
/decl/chemical_reaction/instant/food/cheesewheel
@@ -234,6 +234,12 @@
to_chat(M, "<span class='danger'>Searing hot oil burns you, wash it off quick!</span>")
lastburnmessage = world.time
/datum/reagent/nutriment/triglyceride/oil/cooking
name = "Cooking Oil"
id = "cookingoil"
description = "A general-purpose cooking oil."
reagent_state = LIQUID
/datum/reagent/nutriment/triglyceride/oil/corn
name = "Corn Oil"
id = "cornoil"
@@ -40,6 +40,15 @@
build_path = /obj/item/weapon/pipe_dispenser
sort_string = "NAAAD"
/datum/design/item/tool/qpad_booster
name = "Quantum Pad Particle Booster"
desc = "A deceptively simple interface for increasing the mass of objects a quantum pad is capable of teleporting, at the cost of increased power draw."
id = "qpad_booster"
req_tech = list(TECH_ENGINEERING = 7, TECH_MATERIAL = 7, TECH_BLUESPACE = 6)
materials = list(MAT_STEEL = 4000, MAT_GLASS = 2000, MAT_SILVER = 2000, MAT_GOLD = 2000, MAT_VERDANTIUM = 1000)
build_path = /obj/item/device/quantum_pad_booster
sort_string = "NAAAF"
// Other devices
/datum/design/item/engineering/AssembleDesignName()
+37 -1
View File
@@ -13,6 +13,7 @@
var/last_teleport //to handle the cooldown
var/teleporting = 0 //if it's in the process of teleporting
var/power_efficiency = 1
var/boosted = 0 // do we teleport mecha?
var/obj/machinery/power/quantumpad/linked_pad
//mapping
@@ -32,6 +33,18 @@
mapped_quantum_pads -= map_pad_id
return ..()
/obj/machinery/power/quantumpad/examine(mob/user)
. = ..()
. += "<span class='notice'>It is [linked_pad ? "currently" : "not"] linked to another pad.</span>"
if(world.time < last_teleport + teleport_cooldown)
. += "<span class='warning'>[src] is recharging power. A timer on the side reads <b>[round((last_teleport + teleport_cooldown - world.time)/10)]</b> seconds.</span>"
if(boosted)
. += SPAN_NOTICE("There appears to be a booster haphazardly jammed into the side of [src]. That looks unsafe.")
if(!panel_open)
. += "<span class='notice'>The panel is <i>screwed</i> in, obstructing the linking device.</span>"
else
. += "<span class='notice'>The <i>linking</i> device is now able to be <i>scanned</i> with a multitool.</span>"
/obj/machinery/power/quantumpad/RefreshParts()
var/E = 0
for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts)
@@ -64,6 +77,14 @@
to_chat(user, "<span class='notice'>You link [src] to the one in [I]'s buffer.</span>")
update_icon()
return 1
if(istype(I, /obj/item/device/quantum_pad_booster))
var/obj/item/device/quantum_pad_booster/booster = I
visible_message("[user] violently jams [booster] into the side of [src]. [src] beeps, quietly.", \
"You hear the sound of a device being improperly installed in sensitive machinery, then subsequent beeping.", runemessage = "beep!")
playsound(src, 'sound/items/rped.ogg', 25, 1)
boosted = TRUE
qdel(I)
if(default_part_replacement(user, I))
return
@@ -213,6 +234,8 @@
// Otherwise we'll need a powernet
var/power_to_use = 10000 / power_efficiency
if(boosted)
power_to_use * 5
if(draw_power(power_to_use) != power_to_use)
return FALSE
return TRUE
@@ -220,7 +243,10 @@
/obj/machinery/power/quantumpad/proc/transport_objects(turf/destination)
for(var/atom/movable/ROI in get_turf(src))
// if is anchored, don't let through
if(ROI.anchored)
if(ROI.anchored && !ismecha(ROI))
if(ismecha(ROI))
if(boosted)
continue
if(isliving(ROI))
var/mob/living/L = ROI
if(L.buckled)
@@ -262,3 +288,13 @@
to_chat(user, "<span class='warning'>You feel yourself pulled in different directions, before ending up not far from where you started.</span>")
flick("qpad-beam-out", src)
transport_objects(get_turf(dest))
/obj/item/device/quantum_pad_booster
icon = 'icons/obj/device_vr.dmi'
name = "quantum pad particle booster"
desc = "A deceptively simple interface for increasing the mass of objects a quantum pad is capable of teleporting, at the cost of increased power draw."
description_info = "The three prongs at the base of the tool are not, in fact, for show."
force = 9
sharp = TRUE
item_state = "analyzer"
icon_state = "hacktool"
+1 -1
View File
@@ -306,7 +306,7 @@
return set_attr(usr, params)
if("saveprefs")
if(!ishuman(host) && !issilicon(host))
if(host.real_name != host.client.prefs.real_name || (!ishuman(host) && !issilicon(host)))
var/choice = tgui_alert(usr, "Warning: Saving your vore panel while playing what is very-likely not your normal character will overwrite whatever character you have loaded in character setup. Maybe this is your 'playing a simple mob' slot, though. Are you SURE you want to overwrite your current slot with these vore bellies?", "WARNING!", list("No, abort!", "Yes, save."))
if(choice != "Yes, save.")
return TRUE
Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.3 KiB

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 30 KiB

@@ -1,4 +1,4 @@
"a" = (/turf/simulated/mineral,/area/submap/cave/BlastMine1)
"a" = (/turf/simulated/mineral/cave,/area/submap/cave/BlastMine1)
"b" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/BlastMine1)
"c" = (/obj/structure/sign/warning/bomb_range,/turf/simulated/wall/sandstone,/area/submap/cave/BlastMine1)
"d" = (/obj/structure/table/rack,/obj/item/weapon/syndie/c4explosive,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/BlastMine1)
@@ -1,4 +1,4 @@
"a" = (/turf/simulated/mineral,/area/submap/cave/SupplyDrop1)
"a" = (/turf/simulated/mineral/cave,/area/submap/cave/SupplyDrop1)
"b" = (/turf/template_noop,/area/template_noop)
"c" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/SupplyDrop1)
"d" = (/turf/simulated/wall/titanium,/area/submap/cave/SupplyDrop1)
@@ -3,7 +3,7 @@
/turf/template_noop,
/area/template_noop)
"b" = (
/turf/simulated/mineral,
/turf/simulated/mineral/cave,
/area/submap/cave/swordcave)
"c" = (
/turf/simulated/mineral/floor/ignore_mapgen/cave,
+1 -1
View File
@@ -19,7 +19,7 @@
"s" = (/obj/item/weapon/card/emag_broken,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy)
"t" = (/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel,/obj/random/landmine,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy)
"u" = (/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel,/obj/effect/decal/cleanable/ash,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy)
"v" = (/turf/simulated/mineral,/area/submap/deadspy)
"v" = (/turf/simulated/mineral/cave,/area/submap/deadspy)
(1,1,1) = {"
abbbbvv
@@ -1,4 +1,4 @@
"a" = (/turf/simulated/mineral,/area/template_noop)
"a" = (/turf/simulated/mineral/cave,/area/template_noop)
"b" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop)
"c" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Excavation)
"d" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 9},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Excavation)
+1 -1
View File
@@ -2098,7 +2098,7 @@
check_arrest = 0;
check_down = 0;
check_records = 0;
control_area = /area/gateway/grasslands/underground/maintenance;
control_area = /area/gateway/arynthilake/underground/maintenance;
desc = "A firewall prevents AIs from interacting with this device.";
lethal = 1;
locked = 0;
+1 -1
View File
@@ -503,7 +503,7 @@
check_arrest = 0;
check_down = 0;
check_records = 0;
control_area = /area/gateway/grasslands/underground/maintenance;
control_area = /area/gateway/arynthilake/underground/maintenance;
desc = "A firewall prevents AIs from interacting with this device.";
lethal = 1;
locked = 0;
@@ -85,7 +85,7 @@
"lM" = (
/obj/effect/map_effect/perma_light/gateway{
light_color = "#0c6ba6";
light_power = .3;
light_power = 0.3;
light_range = 5
},
/turf/simulated/floor/beach/sand/desert,
@@ -136,7 +136,7 @@
"ng" = (
/obj/effect/map_effect/perma_light/gateway{
light_color = "#0c6ba6";
light_power = .3;
light_power = 0.3;
light_range = 5
},
/turf/simulated/floor/beach/sand/desert,
+277 -102
View File
@@ -8,6 +8,7 @@
"ac" = (
/obj/structure/table/steel_reinforced,
/obj/machinery/power/apc/angled{
cell_type = /obj/item/weapon/cell/super;
dir = 1;
name = "night shift APC";
nightshift_setting = 2
@@ -654,6 +655,7 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/effect/catwalk_plated/dark,
/obj/effect/landmark/vines,
/turf/simulated/floor,
/area/stellardelight/deck1/port)
"bx" = (
@@ -1304,6 +1306,7 @@
/obj/machinery/atmospherics/unary/vent_scrubber/on{
dir = 4
},
/obj/effect/landmark/vines,
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/starboard)
"cV" = (
@@ -2038,6 +2041,12 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/stellardelight/deck1/researchserver)
"et" = (
/obj/effect/landmark{
name = "droppod_landing"
},
/turf/space,
/area/space)
"eu" = (
/obj/structure/cable/green{
color = "#42038a";
@@ -3113,8 +3122,9 @@
dir = 4
},
/obj/machinery/power/apc/angled{
cell_type = /obj/item/weapon/cell/super;
dir = 8;
req_access = list(31)
req_access = list(31,5)
},
/obj/structure/cable/yellow,
/obj/machinery/light/floortube{
@@ -3933,7 +3943,11 @@
},
/obj/machinery/recharger/wallcharger{
pixel_x = 4;
pixel_y = 28
pixel_y = 29
},
/obj/machinery/recharger/wallcharger{
pixel_x = 4;
pixel_y = 38
},
/turf/simulated/floor/tiled/dark,
/area/security/security_cell_hallway)
@@ -4212,6 +4226,9 @@
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 10
},
/obj/machinery/station_map{
pixel_y = 32
},
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/aft)
"iT" = (
@@ -4251,6 +4268,15 @@
/obj/structure/flora/pottedplant/stoutbush,
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/starboard)
"iX" = (
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 8
},
/obj/structure/cable/green{
icon_state = "1-2"
},
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/fore)
"iY" = (
/obj/effect/floor_decal/industrial/warning{
dir = 8
@@ -4585,6 +4611,7 @@
/obj/effect/floor_decal/steeldecal/steel_decals4{
dir = 6
},
/obj/machinery/hologram/holopad,
/turf/simulated/floor/tiled/eris/steel/cargo,
/area/stellardelight/deck1/mining)
"jG" = (
@@ -4694,6 +4721,13 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/turf/simulated/floor/tiled/eris/steel/cargo,
/area/stellardelight/deck1/pathfinder)
"jT" = (
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 1
},
/obj/effect/landmark/vines,
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/aft)
"jV" = (
/obj/machinery/power/terminal{
dir = 4
@@ -4828,6 +4862,17 @@
},
/turf/simulated/floor/lino,
/area/chapel/office)
"kl" = (
/obj/structure/disposalpipe/segment,
/obj/effect/floor_decal/milspec/color/emerald/half{
dir = 4
},
/obj/machinery/station_map{
dir = 8;
pixel_x = 32
},
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/aft)
"km" = (
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 4
@@ -5971,6 +6016,9 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 6
},
/obj/machinery/station_map{
pixel_y = 32
},
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/starboard)
"mF" = (
@@ -6120,6 +6168,15 @@
},
/turf/simulated/floor/tiled/steel_ridged,
/area/stellardelight/deck1/starboard)
"mT" = (
/obj/structure/cable/green{
icon_state = "4-8"
},
/obj/structure/cable/green{
icon_state = "1-8"
},
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/fore)
"mU" = (
/obj/structure/closet/emcloset,
/turf/simulated/floor/tiled/dark,
@@ -6849,6 +6906,7 @@
/obj/machinery/atmospherics/unary/vent_scrubber/on{
dir = 1
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/dark,
/area/security/security_cell_hallway)
"oC" = (
@@ -7105,6 +7163,7 @@
dir = 8
},
/obj/effect/catwalk_plated/dark,
/obj/effect/landmark/vines,
/turf/simulated/floor,
/area/stellardelight/deck1/starboard)
"ph" = (
@@ -7958,6 +8017,9 @@
},
/turf/simulated/floor/tiled/steel_ridged,
/area/stellardelight/deck1/resleeving)
"qX" = (
/turf/space/internal_edge/right,
/area/stellardelight/deck1/starboard)
"qY" = (
/obj/effect/floor_decal/milspec/color/orange/half,
/turf/simulated/floor/tiled/dark,
@@ -8145,6 +8207,11 @@
},
/turf/simulated/floor,
/area/maintenance/stellardelight/substation/security)
"rt" = (
/obj/structure/table/woodentable,
/obj/item/weapon/folder/blue,
/turf/simulated/floor/tiled/milspec,
/area/stellardelight/deck1/explobriefing)
"ru" = (
/obj/machinery/light_switch{
dir = 4;
@@ -8742,6 +8809,7 @@
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 8
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/dark,
/area/chapel/main)
"sC" = (
@@ -9572,6 +9640,9 @@
},
/turf/simulated/floor/carpet/purcarpet,
/area/stellardelight/deck1/dorms/dorm2)
"uw" = (
/turf/space/internal_edge/left,
/area/stellardelight/deck1/starboard)
"ux" = (
/obj/machinery/door/firedoor/glass,
/obj/structure/cable/green{
@@ -9678,6 +9749,10 @@
/obj/effect/floor_decal/steeldecal/steel_decals6{
dir = 9
},
/obj/structure/closet/emergsuit_wall{
dir = 8;
pixel_x = -27
},
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/port)
"uH" = (
@@ -10401,6 +10476,7 @@
/obj/machinery/atmospherics/unary/vent_scrubber/on{
dir = 1
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/carpet/bcarpet,
/area/stellardelight/deck1/starboard)
"wo" = (
@@ -10721,6 +10797,7 @@
/obj/effect/floor_decal/milspec/color/red/half{
dir = 1
},
/obj/effect/landmark/vines,
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/fore)
"xa" = (
@@ -10756,6 +10833,9 @@
/obj/structure/filingcabinet/chestdrawer,
/turf/simulated/floor/tiled/dark,
/area/security/security_processing)
"xe" = (
/turf/simulated/wall/bay/r_wall/brown,
/area/stellardelight/deck1/starboard)
"xf" = (
/obj/machinery/door/firedoor/glass,
/obj/structure/window/bay/reinforced,
@@ -10975,15 +11055,12 @@
/turf/simulated/floor/tiled/eris/steel/cargo,
/area/stellardelight/deck1/oreprocessing)
"xE" = (
/obj/machinery/power/apc/angled{
dir = 1
},
/obj/structure/cable/green{
icon_state = "0-2"
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 8
},
/obj/machinery/station_map{
pixel_y = 32
},
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/fore)
"xF" = (
@@ -11200,8 +11277,9 @@
dir = 8
},
/obj/machinery/power/apc/angled{
cell_type = /obj/item/weapon/cell/super;
dir = 4;
req_access = list(19,43,67)
req_access = list(19,43,67,66,5)
},
/obj/structure/cable/green{
color = "#42038a"
@@ -11810,6 +11888,7 @@
dir = 4
},
/obj/effect/floor_decal/milspec/color/black,
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/dark,
/area/security/armoury)
"zq" = (
@@ -12865,6 +12944,7 @@
/obj/effect/floor_decal/milspec/color/red/half{
dir = 1
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/fore)
"BB" = (
@@ -12964,6 +13044,7 @@
/obj/machinery/atmospherics/unary/vent_scrubber/on{
dir = 8
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/milspec,
/area/stellardelight/deck1/exploration)
"BI" = (
@@ -14042,6 +14123,9 @@
},
/turf/simulated/floor/tiled/dark,
/area/security/security_cell_hallway)
"Ef" = (
/turf/space/internal_edge/top,
/area/stellardelight/deck1/starboard)
"Eg" = (
/obj/structure/cable/green{
icon_state = "1-2"
@@ -14099,6 +14183,7 @@
/obj/machinery/atmospherics/unary/vent_scrubber/on{
dir = 8
},
/obj/effect/landmark/vines,
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/port)
"Eq" = (
@@ -14215,6 +14300,18 @@
},
/turf/simulated/floor/tiled/steel_grid,
/area/rnd/xenobiology)
"EA" = (
/obj/effect/floor_decal/milspec/color/red/half{
dir = 1
},
/obj/effect/floor_decal/steeldecal/steel_decals6{
dir = 10
},
/obj/machinery/firealarm/angled{
dir = 4
},
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/fore)
"EB" = (
/obj/machinery/door/window/eastright{
dir = 8;
@@ -14263,6 +14360,18 @@
pixel_x = 4;
pixel_y = 5
},
/obj/machinery/recharger/wallcharger{
pixel_x = 4;
pixel_y = 20
},
/obj/machinery/recharger/wallcharger{
pixel_x = 4;
pixel_y = 28
},
/obj/machinery/recharger/wallcharger{
pixel_x = 4;
pixel_y = 36
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck1/explobriefing)
"EG" = (
@@ -14424,6 +14533,9 @@
},
/turf/simulated/floor/tiled/dark,
/area/chapel/main)
"EZ" = (
/turf/space/internal_edge/bottomright,
/area/stellardelight/deck1/starboard)
"Fa" = (
/obj/machinery/atmospherics/pipe/simple/hidden/cyan{
dir = 10
@@ -16004,18 +16116,19 @@
/turf/simulated/floor/tiled/dark,
/area/security/security_lockerroom)
"Iu" = (
/obj/machinery/door/firedoor/glass,
/obj/machinery/door/airlock/angled_bay/external/glass{
dir = 4;
door_color = "#525252";
name = "Exploration Shuttle";
req_one_access = list(19,43,67,66);
req_one_access = list(19,43,67,66,5);
stripe_color = "#408f3b"
},
/obj/structure/cable/green{
color = "#42038a";
icon_state = "4-8"
},
/obj/machinery/atmospheric_field_generator/perma/underdoors,
/obj/machinery/door/firedoor/glass/talon,
/turf/simulated/floor/tiled/steel_ridged,
/area/stellardelight/deck1/exploshuttle)
"Iw" = (
@@ -16243,6 +16356,9 @@
},
/turf/simulated/floor,
/area/maintenance/stellardelight/deck1/portcent)
"IT" = (
/turf/space/internal_edge/bottom,
/area/stellardelight/deck1/starboard)
"IU" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/turf/simulated/floor/tiled/white,
@@ -16340,6 +16456,7 @@
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 1
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/steel_grid,
/area/rnd/research)
"Jd" = (
@@ -17664,17 +17781,19 @@
/turf/simulated/wall/bay/r_wall/steel,
/area/stellardelight/deck1/exploration)
"Ma" = (
/obj/machinery/door/firedoor/glass,
/obj/machinery/door/airlock/angled_bay/external/glass{
dir = 4;
door_color = "#a88860";
name = "Mining Shuttle";
req_access = list(31);
req_access = null;
req_one_access = list(31,5);
stripe_color = "#69461a"
},
/obj/structure/cable/yellow{
icon_state = "4-8"
},
/obj/machinery/atmospheric_field_generator/perma/underdoors,
/obj/machinery/door/firedoor/glass/talon,
/turf/simulated/floor/tiled/steel_ridged,
/area/stellardelight/deck1/miningshuttle)
"Mb" = (
@@ -17744,6 +17863,9 @@
/obj/structure/low_wall/bay/reinforced/purple,
/turf/simulated/floor,
/area/rnd/workshop)
"Mh" = (
/turf/space/internal_edge/topleft,
/area/stellardelight/deck1/starboard)
"Mi" = (
/obj/structure/table/standard,
/obj/item/weapon/stock_parts/matter_bin,
@@ -18465,6 +18587,9 @@
/area/assembly/robotics)
"NN" = (
/obj/structure/table/steel_reinforced,
/obj/machinery/recharger{
pixel_y = 5
},
/turf/simulated/floor/tiled/dark,
/area/security/lobby)
"NP" = (
@@ -18496,6 +18621,9 @@
},
/turf/simulated/floor,
/area/stellardelight/deck1/mining)
"NT" = (
/turf/space/internal_edge/topright,
/area/stellardelight/deck1/starboard)
"NV" = (
/obj/structure/cable/green{
color = "#42038a";
@@ -19556,7 +19684,9 @@
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 4
},
/obj/machinery/firealarm/angled,
/obj/machinery/station_map{
pixel_y = 32
},
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/fore)
"Qp" = (
@@ -19770,6 +19900,7 @@
/obj/machinery/atmospherics/unary/vent_pump/on,
/obj/machinery/alarm/angled,
/obj/effect/floor_decal/milspec/color/black,
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/dark,
/area/security/armoury)
"QQ" = (
@@ -20233,6 +20364,9 @@
},
/turf/simulated/floor/tiled/eris/white/bluecorner,
/area/medical/exam_room)
"RI" = (
/turf/space/internal_edge/bottomleft,
/area/stellardelight/deck1/starboard)
"RJ" = (
/obj/machinery/light{
dir = 4
@@ -20332,7 +20466,7 @@
},
/obj/machinery/recharger/wallcharger{
pixel_x = 4;
pixel_y = 28
pixel_y = 29
},
/obj/machinery/recharger/wallcharger{
pixel_x = 4;
@@ -20341,14 +20475,24 @@
/obj/effect/floor_decal/milspec/color/red/half{
dir = 4
},
/obj/machinery/recharger/wallcharger{
pixel_x = 4;
pixel_y = 38
},
/turf/simulated/floor/tiled/dark,
/area/security/security_lockerroom)
"RX" = (
/obj/structure/cable/green{
icon_state = "4-8"
/obj/effect/floor_decal/milspec/color/red/half{
dir = 1
},
/obj/effect/floor_decal/steeldecal/steel_decals6{
dir = 9
},
/obj/machinery/power/apc/angled{
dir = 8
},
/obj/structure/cable/green{
icon_state = "1-8"
icon_state = "0-2"
},
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/fore)
@@ -21080,6 +21224,7 @@
/obj/structure/closet/crate/bin{
anchored = 1
},
/obj/effect/landmark/vines,
/turf/simulated/floor/tiled/milspec,
/area/stellardelight/deck1/exploration)
"TB" = (
@@ -21318,6 +21463,8 @@
/obj/machinery/alarm/angled{
dir = 4
},
/obj/item/paint_palette,
/obj/item/paint_brush,
/turf/simulated/floor/wood,
/area/library)
"TW" = (
@@ -21613,6 +21760,7 @@
/area/rnd/research)
"UB" = (
/obj/machinery/power/apc/angled{
cell_type = /obj/item/weapon/cell/super;
dir = 1;
name = "night shift APC";
nightshift_setting = 2
@@ -21682,6 +21830,7 @@
/obj/machinery/atmospherics/unary/vent_scrubber/on{
dir = 8
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/reinforced,
/area/stellardelight/deck1/shuttlebay)
"UK" = (
@@ -22037,6 +22186,7 @@
/obj/item/weapon/book/manual/supermatter_engine,
/obj/item/weapon/book/manual/tesla_engine,
/obj/item/weapon/book/manual/virology,
/obj/effect/landmark/vermin,
/turf/simulated/floor/wood,
/area/library)
"Vq" = (
@@ -22217,7 +22367,10 @@
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 8
},
/obj/structure/ore_box,
/obj/structure/table/standard,
/obj/machinery/recharger{
pixel_y = 5
},
/turf/simulated/floor/tiled/eris/steel/cargo,
/area/stellardelight/deck1/mining)
"VF" = (
@@ -22791,6 +22944,7 @@
/obj/item/weapon/tank/jetpack/carbondioxide,
/obj/item/weapon/tank/jetpack/carbondioxide,
/obj/item/weapon/tank/jetpack/carbondioxide,
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/eris/white/gray_platform,
/area/gateway)
"WU" = (
@@ -23424,6 +23578,7 @@
/obj/machinery/camera/network/mining{
dir = 8
},
/obj/structure/ore_box,
/turf/simulated/floor/tiled/eris/steel/cargo,
/area/stellardelight/deck1/mining)
"Yi" = (
@@ -23573,7 +23728,9 @@
/area/security/tactical)
"Yy" = (
/obj/structure/table/steel_reinforced,
/obj/machinery/recharger,
/obj/machinery/recharger{
pixel_y = 5
},
/obj/structure/sign/vacuum{
pixel_y = 32
},
@@ -23890,6 +24047,12 @@
/obj/machinery/recharge_station,
/turf/simulated/floor/bluegrid,
/area/assembly/robotics)
"Zd" = (
/obj/effect/landmark{
name = "carpspawn"
},
/turf/space,
/area/space)
"Ze" = (
/obj/machinery/door/firedoor/glass,
/obj/structure/window/bay/reinforced,
@@ -23911,7 +24074,9 @@
/area/stellardelight/deck1/miningequipment)
"Zh" = (
/obj/structure/table/woodentable,
/obj/item/weapon/folder/blue,
/obj/machinery/recharger{
pixel_y = 5
},
/turf/simulated/floor/tiled/milspec,
/area/stellardelight/deck1/explobriefing)
"Zi" = (
@@ -24093,7 +24258,14 @@
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/aft)
"ZC" = (
/obj/machinery/firealarm/angled,
/obj/machinery/recharger/wallcharger{
pixel_x = 4;
pixel_y = 20
},
/obj/machinery/recharger/wallcharger{
pixel_x = 4;
pixel_y = 29
},
/turf/simulated/floor/tiled/eris/steel/cargo,
/area/stellardelight/deck1/mining)
"ZD" = (
@@ -24156,6 +24328,9 @@
/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{
dir = 8
},
/obj/machinery/firealarm/angled{
dir = 8
},
/turf/simulated/floor/tiled/eris/steel/cargo,
/area/stellardelight/deck1/mining)
"ZK" = (
@@ -24189,9 +24364,9 @@
/obj/structure/cable/white{
icon_state = "1-2"
},
/obj/structure/closet/emergsuit_wall{
dir = 8;
pixel_x = -27
/obj/machinery/station_map{
dir = 4;
pixel_x = -32
},
/turf/simulated/floor/tiled/techmaint,
/area/stellardelight/deck1/aft)
@@ -27383,7 +27558,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -27923,7 +28098,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -28105,7 +28280,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -28170,7 +28345,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -28547,7 +28722,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -28904,7 +29079,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -29575,7 +29750,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -30675,7 +30850,7 @@ RF
RF
uq
uq
uq
et
uq
uq
uq
@@ -31231,7 +31406,7 @@ Rz
TC
oZ
Zh
zZ
rt
OB
Rz
ny
@@ -32099,7 +32274,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -32272,7 +32447,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -33157,7 +33332,7 @@ Zy
SQ
Yv
xE
RX
zW
xZ
MA
Zt
@@ -33347,7 +33522,7 @@ MK
qR
CG
iS
KX
jT
dl
QK
pV
@@ -33439,9 +33614,9 @@ Xk
OD
ZR
QG
XC
IF
zW
RX
iX
mT
Ku
Ku
Ku
@@ -33742,13 +33917,13 @@ rW
lC
HT
ER
uq
uq
uq
uq
uq
uq
uq
EZ
qX
qX
qX
qX
qX
NT
vu
Br
AP
@@ -33884,13 +34059,13 @@ SH
jD
PI
IZ
uq
uq
uq
uq
uq
uq
uq
IT
xe
xe
xe
xe
xe
Ef
AT
Aq
WE
@@ -34026,13 +34201,13 @@ zg
aj
Wl
IZ
uq
uq
uq
uq
uq
uq
uq
IT
xe
xe
xe
xe
xe
Ef
AT
Qd
VH
@@ -34168,13 +34343,13 @@ bi
bi
bi
bi
uq
uq
uq
uq
uq
uq
uq
IT
xe
xe
xe
xe
xe
Ef
IC
IC
IC
@@ -34310,13 +34485,13 @@ Si
gK
LX
wE
uq
uq
uq
uq
uq
uq
uq
IT
xe
xe
xe
xe
xe
Ef
PA
da
dc
@@ -34452,13 +34627,13 @@ KG
sn
kL
wE
uq
uq
uq
uq
uq
uq
uq
IT
xe
xe
xe
xe
xe
Ef
PA
Wk
iT
@@ -34544,7 +34719,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -34594,13 +34769,13 @@ HX
Gu
JB
bi
uq
uq
uq
uq
uq
uq
uq
RI
uw
uw
uw
uw
uw
Mh
IC
RM
De
@@ -34859,7 +35034,7 @@ HN
Tg
Vr
Hs
zb
EA
zc
zW
Ku
@@ -35751,7 +35926,7 @@ Wj
MH
xx
xF
XJ
kl
CV
kv
jg
@@ -37633,7 +37808,7 @@ EG
RF
uq
uq
uq
et
uq
uq
uq
@@ -38096,7 +38271,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -38205,7 +38380,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -38841,7 +39016,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -39253,7 +39428,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -39561,7 +39736,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -40034,7 +40209,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -40431,7 +40606,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
@@ -41447,7 +41622,7 @@ uq
uq
uq
uq
uq
Zd
uq
uq
uq
+209 -80
View File
@@ -628,6 +628,9 @@
pixel_x = 32;
pixel_y = 18
},
/obj/structure/railing/grey{
dir = 4
},
/turf/simulated/floor/tiled/monotile,
/area/stellardelight/deck2/aftport)
"bn" = (
@@ -695,6 +698,9 @@
pixel_x = -32;
pixel_y = 18
},
/obj/structure/railing/grey{
dir = 8
},
/turf/simulated/floor/tiled/monotile,
/area/stellardelight/deck2/aftstarboard)
"bs" = (
@@ -2113,9 +2119,6 @@
/area/stellardelight/deck2/aftport)
"eE" = (
/obj/machinery/atmospherics/pipe/simple/hidden/universal,
/obj/structure/cable{
icon_state = "1-2"
},
/turf/simulated/floor,
/area/maintenance/stellardelight/deck2/portsolars)
"eF" = (
@@ -2430,6 +2433,7 @@
/obj/machinery/light{
dir = 4
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/wood,
/area/crew_quarters/captain)
"fp" = (
@@ -2585,6 +2589,7 @@
"fL" = (
/obj/machinery/computer/arcade/battle,
/obj/machinery/atmospherics/unary/vent_pump/on,
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/eris/dark/cargo,
/area/crew_quarters/recreation_area)
"fN" = (
@@ -2948,6 +2953,12 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/engineering/atmos/monitoring)
"gA" = (
/obj/structure/railing/grey{
dir = 4
},
/turf/simulated/floor/tiled/monotile,
/area/stellardelight/deck2/fore)
"gB" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -2992,10 +3003,10 @@
/area/engineering/storage)
"gF" = (
/obj/structure/cable/orange{
icon_state = "2-8"
icon_state = "1-2"
},
/obj/structure/cable/orange{
icon_state = "1-2"
icon_state = "2-8"
},
/turf/simulated/floor/airless,
/area/stellardelight/deck2/exterior)
@@ -3105,6 +3116,7 @@
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 1
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/techmaint,
/area/storage/primary)
"gS" = (
@@ -3168,9 +3180,6 @@
/obj/machinery/alarm/angled{
dir = 8
},
/obj/structure/cable{
icon_state = "1-2"
},
/turf/simulated/floor,
/area/maintenance/stellardelight/deck2/starboardsolars)
"hb" = (
@@ -4149,13 +4158,15 @@
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/fore)
"jz" = (
/obj/machinery/firealarm/angled,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 8
},
/obj/effect/floor_decal/steeldecal/steel_decals5{
dir = 1
},
/obj/machinery/station_map{
pixel_y = 32
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/aftstarboard)
"jA" = (
@@ -5085,6 +5096,10 @@
},
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/structure/disposalpipe/segment{
dir = 1;
icon_state = "pipe-c"
},
/turf/simulated/floor/tiled/techfloor,
/area/engineering/atmos/monitoring)
"lu" = (
@@ -5460,6 +5475,16 @@
},
/turf/simulated/floor/airless,
/area/stellardelight/deck2/exterior)
"mb" = (
/obj/effect/floor_decal/milspec/color/blue/half{
dir = 4
},
/obj/machinery/station_map{
dir = 8;
pixel_x = 32
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/port)
"md" = (
/obj/effect/floor_decal/industrial/outline,
/obj/effect/floor_decal/steeldecal/steel_decals9,
@@ -5474,6 +5499,7 @@
},
/obj/machinery/vending/loadout/loadout_misc,
/obj/machinery/atmospherics/unary/vent_pump/on,
/obj/effect/landmark/vines,
/turf/simulated/floor/holofloor/tiled/dark,
/area/crew_quarters/locker)
"me" = (
@@ -5489,6 +5515,7 @@
"mg" = (
/obj/random/vendordrink,
/obj/machinery/atmospherics/unary/vent_pump/on,
/obj/effect/landmark/vines,
/turf/simulated/floor/tiled/steel_ridged,
/area/stellardelight/deck2/port)
"mh" = (
@@ -5512,14 +5539,15 @@
/area/stellardelight/deck2/port)
"mj" = (
/obj/machinery/atmospherics/pipe/simple/hidden/universal,
/obj/structure/cable{
icon_state = "0-2"
},
/obj/machinery/power/apc/angled{
cell_type = /obj/item/weapon/cell/super;
dir = 4;
name = "night shift APC";
nightshift_setting = 2
},
/obj/structure/cable{
icon_state = "0-8"
},
/turf/simulated/floor,
/area/maintenance/stellardelight/deck2/starboardsolars)
"mk" = (
@@ -5722,6 +5750,7 @@
/obj/machinery/light{
dir = 1
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/wood,
/area/stellardelight/deck2/briefingroom)
"mI" = (
@@ -5771,6 +5800,10 @@
/obj/effect/floor_decal/milspec/color/silver/corner{
dir = 4
},
/obj/machinery/station_map{
dir = 8;
pixel_x = 32
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/fore)
"mO" = (
@@ -5813,6 +5846,9 @@
/obj/machinery/atmospherics/unary/vent_scrubber/on{
dir = 1
},
/obj/effect/landmark{
name = "verminstart"
},
/turf/simulated/floor/grass,
/area/hydroponics)
"mT" = (
@@ -6022,6 +6058,10 @@
/obj/effect/floor_decal/milspec/color/orange/half{
dir = 8
},
/obj/structure/disposalpipe/segment{
dir = 4;
icon_state = "pipe-c"
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/aftport)
"nx" = (
@@ -6195,6 +6235,7 @@
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 1
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/lino,
/area/crew_quarters/bar)
"nR" = (
@@ -6694,6 +6735,9 @@
/obj/effect/floor_decal/steeldecal/steel_decals5{
dir = 1
},
/obj/machinery/station_map{
pixel_y = 32
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/fore)
"pb" = (
@@ -6802,9 +6846,6 @@
/obj/structure/cable{
icon_state = "0-8"
},
/obj/structure/cable{
icon_state = "1-8"
},
/turf/simulated/floor,
/area/maintenance/stellardelight/deck2/portsolars)
"pl" = (
@@ -7154,12 +7195,13 @@
/turf/simulated/floor/tiled/techfloor,
/area/stellardelight/deck2/o2production)
"pZ" = (
/obj/machinery/firealarm/angled{
dir = 4
},
/obj/effect/floor_decal/steeldecal/steel_decals5{
dir = 4
},
/obj/machinery/station_map{
dir = 8;
pixel_x = 32
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/fore)
"qa" = (
@@ -7198,6 +7240,7 @@
icon_state = "2-4"
},
/obj/structure/closet/secure_closet/engineering_personal,
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/eris/dark/orangecorner,
/area/engineering/locker_room)
"qe" = (
@@ -7220,6 +7263,9 @@
/obj/structure/disposalpipe/segment,
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/structure/cable{
icon_state = "1-4"
},
/turf/simulated/floor,
/area/maintenance/stellardelight/deck2/starboardsolars)
"qi" = (
@@ -7329,6 +7375,7 @@
/obj/machinery/newscaster{
pixel_y = 28
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled,
/area/storage/art)
"qt" = (
@@ -7608,6 +7655,9 @@
/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{
dir = 4
},
/obj/structure/cable/green{
icon_state = "1-8"
},
/turf/simulated/floor,
/area/maintenance/stellardelight/deck2/portsolars)
"qZ" = (
@@ -7929,6 +7979,7 @@
dir = 4;
pixel_x = 24
},
/obj/effect/landmark/vines,
/turf/simulated/floor/tiled/techmaint,
/area/storage/primary)
"rF" = (
@@ -8691,9 +8742,6 @@
/obj/structure/cable{
icon_state = "0-4"
},
/obj/structure/cable{
icon_state = "1-4"
},
/turf/simulated/floor,
/area/maintenance/stellardelight/deck2/starboardsolars)
"ty" = (
@@ -8704,6 +8752,7 @@
dir = 1
},
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/structure/disposalpipe/segment,
/turf/simulated/floor/tiled/techfloor,
/area/engineering/atmos/monitoring)
"tz" = (
@@ -9106,6 +9155,7 @@
"us" = (
/obj/machinery/atmospherics/unary/vent_scrubber/on,
/obj/machinery/recharge_station,
/obj/effect/landmark/vines,
/turf/simulated/floor/tiled/steel_ridged,
/area/stellardelight/deck2/starboard)
"ut" = (
@@ -9707,6 +9757,7 @@
dir = 4;
icon_state = "pipe-c"
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/monotile,
/area/hydroponics)
"vQ" = (
@@ -9961,6 +10012,7 @@
/obj/machinery/atmospherics/unary/vent_scrubber/on{
dir = 1
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/eris/white/bluecorner,
/area/stellardelight/deck2/triage)
"wy" = (
@@ -10294,6 +10346,9 @@
/obj/structure/disposalpipe/segment{
dir = 4
},
/obj/effect/landmark{
name = "vinestart"
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/central)
"xo" = (
@@ -10375,6 +10430,10 @@
/obj/effect/floor_decal/steeldecal/steel_decals4{
dir = 1
},
/obj/structure/disposalpipe/segment{
dir = 8;
icon_state = "pipe-c"
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/aftport)
"xy" = (
@@ -11258,12 +11317,13 @@
dir = 4
},
/obj/machinery/power/apc/angled{
cell_type = /obj/item/weapon/cell/super;
dir = 8;
name = "night shift APC";
nightshift_setting = 2
},
/obj/structure/cable{
icon_state = "0-2"
/obj/structure/cable/green{
icon_state = "0-4"
},
/turf/simulated/floor,
/area/maintenance/stellardelight/deck2/portsolars)
@@ -12126,6 +12186,12 @@
/obj/structure/reagent_dispensers/fueltank,
/turf/simulated/floor/plating,
/area/engineering/storage)
"BA" = (
/obj/structure/railing/grey{
dir = 8
},
/turf/simulated/floor/tiled/monotile,
/area/stellardelight/deck2/fore)
"BB" = (
/obj/structure/cable/orange{
icon_state = "4-8"
@@ -12537,6 +12603,9 @@
/obj/structure/cable{
icon_state = "2-4"
},
/obj/structure/disposalpipe/segment{
dir = 4
},
/turf/simulated/floor/tiled/techfloor,
/area/engineering/atmos/monitoring)
"CA" = (
@@ -12641,6 +12710,7 @@
/obj/structure/cable/orange{
icon_state = "1-8"
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/techfloor,
/area/engineering/atmos/monitoring)
"CO" = (
@@ -12894,6 +12964,7 @@
dir = 1
},
/obj/structure/undies_wardrobe,
/obj/effect/landmark/vermin,
/turf/simulated/floor/holofloor/tiled/dark,
/area/crew_quarters/locker)
"Dv" = (
@@ -12965,6 +13036,15 @@
"DB" = (
/turf/simulated/floor,
/area/maintenance/stellardelight/deck2/atmos)
"DC" = (
/obj/effect/floor_decal/steeldecal/steel_decals5{
dir = 4
},
/obj/machinery/firealarm/angled{
dir = 4
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/fore)
"DD" = (
/obj/machinery/atmospherics/unary/vent_pump/on,
/obj/machinery/alarm/freezer{
@@ -13089,9 +13169,13 @@
/turf/simulated/floor/tiled/freezer/cold,
/area/crew_quarters/kitchen)
"DQ" = (
/obj/structure/disposalpipe/segment,
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/structure/disposalpipe/sortjunction/flipped{
dir = 1;
name = "Atmospherics";
sortType = "Atmospherics"
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/aftport)
"DR" = (
@@ -14185,6 +14269,7 @@
/obj/effect/floor_decal/milspec/color/silver/corner{
dir = 8
},
/obj/effect/landmark/vines,
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/fore)
"Gb" = (
@@ -14548,6 +14633,7 @@
/obj/machinery/power/terminal{
dir = 8
},
/obj/structure/cable,
/turf/simulated/floor,
/area/maintenance/stellardelight/deck2/portsolars)
"GP" = (
@@ -14692,6 +14778,7 @@
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 8
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/eris/steel/cargo,
/area/quartermaster/storage)
"Hf" = (
@@ -14930,6 +15017,10 @@
/obj/effect/floor_decal/steeldecal/steel_decals5{
dir = 8
},
/obj/machinery/station_map{
dir = 4;
pixel_x = -32
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/aftport)
"HH" = (
@@ -15218,6 +15309,8 @@
},
/obj/random/vendordrink,
/obj/machinery/atmospherics/unary/vent_pump/on,
/obj/machinery/firealarm/angled,
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/aftstarboard)
"Il" = (
@@ -15261,6 +15354,7 @@
},
/obj/structure/table/steel_reinforced,
/obj/item/device/retail_scanner/command,
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/eris/dark/monofloor,
/area/bridge)
"Ip" = (
@@ -15336,6 +15430,16 @@
/obj/machinery/recharger,
/turf/simulated/floor/tiled/eris/white/bluecorner,
/area/stellardelight/deck2/triage)
"Iv" = (
/obj/effect/floor_decal/milspec/color/blue/half{
dir = 8
},
/obj/machinery/station_map{
dir = 4;
pixel_x = -32
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/starboard)
"Iw" = (
/obj/structure/cable/green{
icon_state = "4-8"
@@ -16262,6 +16366,7 @@
/obj/item/paint_palette,
/obj/item/paint_brush,
/obj/item/paint_brush,
/obj/effect/landmark/vines,
/turf/simulated/floor/tiled,
/area/storage/art)
"KD" = (
@@ -16450,6 +16555,7 @@
/obj/machinery/camera/network/medbay{
dir = 8
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/eris/white/bluecorner,
/area/medical/chemistry)
"La" = (
@@ -17241,7 +17347,9 @@
/area/crew_quarters/bar)
"MM" = (
/obj/structure/table/standard,
/obj/machinery/recharger,
/obj/machinery/recharger{
pixel_y = 5
},
/obj/machinery/light/floortube{
pixel_y = -4
},
@@ -17852,6 +17960,12 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/turf/simulated/floor/wood,
/area/stellardelight/deck2/barbackroom)
"Oh" = (
/obj/effect/landmark{
name = "carpspawn"
},
/turf/space,
/area/space)
"Oi" = (
/obj/machinery/firealarm/angled,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
@@ -17943,6 +18057,7 @@
/area/medical/surgery2)
"Oq" = (
/obj/machinery/power/apc/angled{
cell_type = /obj/item/weapon/cell/super;
dir = 8
},
/obj/structure/cable/cyan{
@@ -18034,6 +18149,9 @@
/obj/machinery/status_display{
pixel_y = 32
},
/obj/effect/landmark{
name = "verminstart"
},
/turf/simulated/floor/tiled/eris/cafe,
/area/crew_quarters/kitchen)
"OB" = (
@@ -18131,6 +18249,7 @@
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 4
},
/obj/effect/landmark/vines,
/turf/simulated/floor/tiled/eris/steel/brown_platform,
/area/quartermaster/storage)
"OQ" = (
@@ -18181,6 +18300,10 @@
/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{
dir = 1
},
/obj/structure/disposalpipe/segment{
dir = 4;
icon_state = "pipe-c"
},
/turf/simulated/floor/tiled/techfloor,
/area/engineering/atmos/monitoring)
"OU" = (
@@ -18388,6 +18511,12 @@
},
/turf/simulated/floor/tiled/steel_ridged,
/area/stellardelight/deck2/starboard)
"Pp" = (
/obj/effect/landmark{
name = "droppod_landing"
},
/turf/space,
/area/space)
"Pq" = (
/obj/machinery/atmospherics/pipe/simple/hidden/red{
dir = 9
@@ -20144,6 +20273,7 @@
/obj/machinery/atmospherics/unary/vent_scrubber/on{
dir = 1
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/eris/white/bluecorner,
/area/medical/cmostore)
"Tn" = (
@@ -21553,6 +21683,9 @@
/obj/structure/cable{
icon_state = "4-8"
},
/obj/structure/disposalpipe/segment{
dir = 4
},
/turf/simulated/floor/tiled/steel_ridged,
/area/engineering/atmos/monitoring)
"WB" = (
@@ -21803,6 +21936,7 @@
/obj/effect/floor_decal/steeldecal/steel_decals6{
dir = 4
},
/obj/effect/landmark/vines,
/turf/simulated/floor/tiled,
/area/stellardelight/deck2/fore)
"Xf" = (
@@ -21862,9 +21996,6 @@
/obj/machinery/alarm/angled{
dir = 4
},
/obj/structure/cable{
icon_state = "1-2"
},
/turf/simulated/floor,
/area/maintenance/stellardelight/deck2/portsolars)
"Xo" = (
@@ -21896,9 +22027,6 @@
dir = 8
},
/obj/machinery/atmospherics/pipe/simple/hidden,
/obj/structure/cable{
icon_state = "1-2"
},
/turf/simulated/floor,
/area/maintenance/stellardelight/deck2/starboardsolars)
"Xs" = (
@@ -22609,6 +22737,7 @@
"YW" = (
/obj/random/vendordrink,
/obj/machinery/atmospherics/unary/vent_pump/on,
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/steel_ridged,
/area/stellardelight/deck2/starboard)
"YX" = (
@@ -25728,7 +25857,7 @@ Jh
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -26133,7 +26262,7 @@ Jh
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -26533,7 +26662,7 @@ Jh
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -26754,7 +26883,7 @@ Jh
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -27703,7 +27832,7 @@ Jh
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -28675,7 +28804,7 @@ Jh
Jh
Jh
Jh
Jh
Pp
Jh
Jh
Jh
@@ -28786,7 +28915,7 @@ Jh
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -30170,8 +30299,8 @@ UG
cv
cv
cv
ZG
Jh
CP
SO
Jh
Jh
Jh
@@ -30312,6 +30441,7 @@ Zt
qM
Vm
mq
Wb
ZG
Jh
Jh
@@ -30332,7 +30462,6 @@ Jh
Jh
Jh
Jh
Jh
"}
(52,1,1) = {"
Jh
@@ -30454,6 +30583,7 @@ LG
AV
Vm
Vm
Wb
ZG
Jh
Jh
@@ -30469,8 +30599,7 @@ Jh
Jh
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -30596,8 +30725,8 @@ yg
AV
cv
cv
ZG
Jh
Ds
kL
Jh
Jh
Jh
@@ -30880,8 +31009,8 @@ MP
PB
cv
cv
ZG
Jh
CP
SO
Jh
Jh
Jh
@@ -31022,6 +31151,7 @@ ay
wm
Vm
mq
Wb
ZG
Jh
Jh
@@ -31042,7 +31172,6 @@ Jh
Jh
Jh
Jh
Jh
"}
(57,1,1) = {"
Jh
@@ -31164,6 +31293,7 @@ DR
AV
Vm
Vm
Wb
ZG
Jh
Jh
@@ -31184,7 +31314,6 @@ Jh
Jh
Jh
Jh
Jh
"}
(58,1,1) = {"
Jh
@@ -31306,8 +31435,8 @@ eg
tk
cv
cv
ZG
Jh
Ds
kL
Jh
Jh
Jh
@@ -31682,7 +31811,7 @@ VP
bA
bA
bA
bA
mb
bA
BP
wF
@@ -31765,7 +31894,7 @@ Jh
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -32094,7 +32223,7 @@ nt
Rq
Rq
lQ
aA
gA
Jq
Xi
kF
@@ -33020,7 +33149,7 @@ Jh
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -33798,7 +33927,7 @@ nt
Rq
Rq
lY
aA
BA
Jq
IK
kF
@@ -34238,7 +34367,7 @@ Ru
nL
WL
WL
iu
Iv
iu
ec
YX
@@ -34500,7 +34629,7 @@ Zr
Zr
vj
pZ
Zr
DC
Zr
OV
Zr
@@ -34714,8 +34843,8 @@ uo
BN
nq
nq
ZG
Jh
CP
SO
Jh
Jh
Jh
@@ -34856,6 +34985,7 @@ cF
Jk
VJ
Dw
Wb
ZG
Jh
Jh
@@ -34876,7 +35006,6 @@ Jh
Jh
Jh
Jh
Jh
"}
(84,1,1) = {"
Jh
@@ -34890,7 +35019,7 @@ Jh
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -34998,6 +35127,7 @@ Nt
Lw
VJ
VJ
Wb
ZG
Jh
Jh
@@ -35018,7 +35148,6 @@ Jh
Jh
Jh
Jh
Jh
"}
(85,1,1) = {"
Jh
@@ -35140,8 +35269,8 @@ lk
Lw
nq
nq
ZG
Jh
Ds
kL
Jh
Jh
Jh
@@ -35424,8 +35553,8 @@ jA
Lw
nq
nq
ZG
Jh
CP
SO
Jh
Jh
Jh
@@ -35566,6 +35695,7 @@ lX
yA
VJ
Dw
Wb
ZG
Jh
Jh
@@ -35586,7 +35716,6 @@ Jh
Jh
Jh
Jh
Jh
"}
(89,1,1) = {"
Jh
@@ -35708,6 +35837,7 @@ nO
nq
VJ
VJ
Wb
ZG
Jh
Jh
@@ -35728,7 +35858,6 @@ Jh
Jh
Jh
Jh
Jh
"}
(90,1,1) = {"
Jh
@@ -35850,8 +35979,8 @@ SG
rT
rT
rT
ZG
Jh
Ds
kL
Jh
Jh
Jh
@@ -36289,7 +36418,7 @@ Jh
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -36784,7 +36913,7 @@ bw
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -37197,7 +37326,7 @@ Jh
Jh
Jh
Jh
Jh
Pp
Jh
Jh
Jh
@@ -37275,7 +37404,7 @@ NL
NL
Jh
Jh
Jh
Pp
Jh
Jh
Jh
@@ -37597,7 +37726,7 @@ Jh
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -38188,7 +38317,7 @@ Jh
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -39353,6 +39482,7 @@ Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -39397,8 +39527,7 @@ Jh
Jh
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
@@ -40083,7 +40212,7 @@ Jh
Jh
Jh
Jh
Jh
Oh
Jh
Jh
Jh
+120 -38
View File
@@ -51,6 +51,9 @@
/obj/structure/sign/directions/cargo{
pixel_x = 32
},
/obj/structure/railing/grey{
dir = 4
},
/turf/simulated/floor/tiled/monotile,
/area/stellardelight/deck3/aft)
"ai" = (
@@ -78,6 +81,9 @@
/obj/structure/sign/directions/cargo{
pixel_x = -32
},
/obj/structure/railing/grey{
dir = 8
},
/turf/simulated/floor/tiled/monotile,
/area/stellardelight/deck3/aft)
"al" = (
@@ -222,6 +228,11 @@
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck3/aft)
"ba" = (
/obj/machinery/atmospherics/unary/vent_pump/on,
/obj/effect/landmark/vines,
/turf/simulated/open,
/area/stellardelight/deck2/fore)
"bb" = (
/obj/effect/floor_decal/techfloor/orange{
dir = 8
@@ -488,6 +499,7 @@
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 1
},
/obj/effect/landmark/vines,
/turf/simulated/open,
/area/crew_quarters/bar)
"cb" = (
@@ -2188,12 +2200,6 @@
/area/stellardelight/deck3/cryo)
"iE" = (
/obj/machinery/door/firedoor/glass,
/obj/machinery/door/airlock/angled_bay/hatch{
door_color = "#e6ab22";
name = "Shield Generator";
req_access = list(11,24);
stripe_color = "#e6ab22"
},
/obj/machinery/door/airlock/angled_bay/hatch{
door_color = "#e6ab22";
name = "Shield Generator";
@@ -2483,6 +2489,13 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/crew_quarters/heads/hor)
"jO" = (
/obj/machinery/station_map{
dir = 4;
pixel_x = -32
},
/turf/simulated/floor/tiled/eris/dark/gray_platform,
/area/stellardelight/deck3/commandhall)
"jP" = (
/obj/machinery/alarm/angled,
/obj/effect/floor_decal/steeldecal/steel_decals5{
@@ -5871,6 +5884,13 @@
/obj/structure/low_wall/bay/reinforced/steel,
/turf/simulated/floor,
/area/stellardelight/deck2/port)
"wc" = (
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 8
},
/obj/effect/landmark/vermin,
/turf/simulated/open,
/area/stellardelight/deck2/starboard)
"wd" = (
/obj/structure/table/standard,
/obj/item/weapon/aiModule/oxygen,
@@ -6021,10 +6041,12 @@
/area/ai_cyborg_station)
"wP" = (
/obj/machinery/atmospherics/unary/vent_scrubber/on,
/obj/machinery/camera/network/halls,
/obj/effect/floor_decal/steeldecal/steel_decals5{
dir = 1
},
/obj/machinery/station_map{
pixel_y = 32
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck3/aft)
"wQ" = (
@@ -6280,6 +6302,7 @@
/obj/effect/floor_decal/steeldecal/steel_decals5{
dir = 4
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled,
/area/stellardelight/deck3/starboarddock)
"xE" = (
@@ -6713,6 +6736,12 @@
},
/turf/simulated/floor/tiled/techfloor/grid,
/area/ai_upload)
"zk" = (
/obj/effect/landmark{
name = "droppod_landing"
},
/turf/space,
/area/space)
"zm" = (
/obj/structure/cable/blue{
icon_state = "4-8"
@@ -7645,6 +7674,7 @@
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 4
},
/obj/effect/landmark/vermin,
/turf/simulated/open,
/area/stellardelight/deck2/fore)
"Cc" = (
@@ -8210,6 +8240,12 @@
/obj/random/trash_pile,
/turf/simulated/floor,
/area/maintenance/stellardelight/deck3/portcent)
"El" = (
/obj/effect/landmark{
name = "carpspawn"
},
/turf/space,
/area/space)
"En" = (
/obj/effect/floor_decal/industrial/warning/corner{
dir = 1
@@ -8456,6 +8492,7 @@
/obj/effect/floor_decal/steeldecal/steel_decals5{
dir = 1
},
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled,
/area/stellardelight/deck3/aft)
"Fg" = (
@@ -9151,6 +9188,9 @@
"HR" = (
/obj/structure/table/steel,
/obj/random/contraband,
/obj/machinery/chemical_dispenser/bar_coffee/full{
pixel_y = 8
},
/turf/simulated/floor,
/area/maintenance/stellardelight/deck3/foreportrooma)
"HS" = (
@@ -9316,6 +9356,13 @@
},
/turf/simulated/floor/tiled,
/area/crew_quarters/heads/chief)
"ID" = (
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 8
},
/obj/effect/landmark/vines,
/turf/simulated/open,
/area/stellardelight/deck2/fore)
"IG" = (
/obj/structure/cable/blue{
icon_state = "4-8"
@@ -9788,6 +9835,9 @@
dir = 1
},
/obj/effect/floor_decal/steeldecal/steel_decals5,
/obj/machinery/camera/network/halls{
dir = 1
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck3/aft)
"Kg" = (
@@ -10238,6 +10288,7 @@
dir = 4;
pixel_x = 27
},
/obj/effect/landmark/vines,
/turf/simulated/floor/tiled,
/area/stellardelight/deck3/starboarddock)
"LR" = (
@@ -10415,6 +10466,13 @@
/obj/random/maintenance,
/turf/simulated/floor,
/area/maintenance/stellardelight/deck3/starboardfore)
"Mv" = (
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 4
},
/obj/effect/landmark/vines,
/turf/simulated/open,
/area/stellardelight/deck2/fore)
"Mw" = (
/obj/machinery/atmospherics/pipe/manifold/hidden{
dir = 1
@@ -10621,6 +10679,13 @@
},
/turf/simulated/floor/tiled/techfloor,
/area/stellardelight/deck3/cryo)
"Nd" = (
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 4
},
/obj/effect/landmark/vines,
/turf/simulated/open,
/area/stellardelight/deck2/port)
"Ne" = (
/obj/structure/cable{
icon_state = "1-8"
@@ -11260,6 +11325,13 @@
"OX" = (
/turf/simulated/floor,
/area/maintenance/stellardelight/deck3/portcent)
"OY" = (
/obj/machinery/atmospherics/unary/vent_pump/on{
dir = 8
},
/obj/effect/landmark/vines,
/turf/simulated/open,
/area/stellardelight/deck2/starboard)
"Pa" = (
/obj/structure/lattice,
/turf/simulated/open,
@@ -11394,6 +11466,9 @@
dir = 1
},
/obj/effect/floor_decal/steeldecal/steel_decals5,
/obj/machinery/camera/network/halls{
dir = 1
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck3/aft)
"PB" = (
@@ -12394,6 +12469,7 @@
},
/obj/structure/disposalpipe/segment,
/obj/machinery/power/apc/angled{
cell_type = /obj/item/weapon/cell/super;
dir = 8;
name = "night shift APC";
nightshift_setting = 2
@@ -12512,6 +12588,7 @@
/area/ai_server_room)
"TO" = (
/obj/machinery/atmospherics/unary/vent_pump/on,
/obj/effect/landmark/vermin,
/turf/simulated/floor/tiled/monotile,
/area/stellardelight/deck3/commandhall)
"TP" = (
@@ -12634,10 +12711,12 @@
/area/stellardelight/deck3/exterior)
"Uy" = (
/obj/machinery/atmospherics/unary/vent_pump/on,
/obj/machinery/camera/network/halls,
/obj/effect/floor_decal/steeldecal/steel_decals5{
dir = 1
},
/obj/machinery/station_map{
pixel_y = 32
},
/turf/simulated/floor/tiled,
/area/stellardelight/deck3/aft)
"UA" = (
@@ -12786,6 +12865,7 @@
dir = 8;
pixel_x = -27
},
/obj/effect/landmark/vines,
/turf/simulated/floor/tiled,
/area/stellardelight/deck3/portdock)
"UX" = (
@@ -13340,6 +13420,7 @@
/area/lawoffice)
"WQ" = (
/obj/machinery/power/apc/angled{
cell_type = /obj/item/weapon/cell/super;
dir = 4;
name = "night shift APC";
nightshift_setting = 2
@@ -13409,6 +13490,7 @@
/obj/structure/cable/green{
icon_state = "1-2"
},
/obj/effect/landmark/vermin,
/turf/simulated/open,
/area/crew_quarters/bar)
"Xd" = (
@@ -16844,7 +16926,7 @@ Jh
Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -17377,7 +17459,7 @@ Jh
Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -18248,7 +18330,7 @@ Jh
Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -18312,6 +18394,7 @@ Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -18347,8 +18430,7 @@ Jh
Jh
Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -19086,7 +19168,7 @@ Jh
Jh
Jh
Jh
Jh
zk
Jh
Jh
Jh
@@ -19182,7 +19264,7 @@ Jh
Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -19556,7 +19638,7 @@ NL
NL
Jh
Jh
Jh
zk
Jh
Jh
Jh
@@ -20342,7 +20424,7 @@ Jh
Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -21399,7 +21481,7 @@ NL
Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -21633,7 +21715,7 @@ CS
oW
oW
oW
QF
Nd
oW
oW
oW
@@ -21832,7 +21914,7 @@ Jh
Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -22135,7 +22217,7 @@ Jh
Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -22464,7 +22546,7 @@ Cp
qF
qF
qF
Cb
Mv
qF
qF
qF
@@ -23442,7 +23524,7 @@ qp
NF
qp
Qp
Hf
ba
Ie
tV
cb
@@ -23878,7 +23960,7 @@ BK
aQ
aQ
sf
aQ
jO
aQ
BK
aQ
@@ -25579,7 +25661,7 @@ qF
qF
qF
qF
KF
ID
qF
qF
qF
@@ -25595,7 +25677,7 @@ qF
hC
aJ
ow
ZC
wc
ow
yP
Ks
@@ -26470,7 +26552,7 @@ ow
ow
ow
ow
ZC
OY
yP
ow
ZM
@@ -27079,7 +27161,7 @@ NL
Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -27646,7 +27728,7 @@ NL
NL
Jh
Jh
Jh
zk
Jh
Jh
Jh
@@ -27867,7 +27949,7 @@ Jh
Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -28130,7 +28212,7 @@ Jh
Jh
Jh
Jh
Jh
zk
Jh
Jh
Jh
@@ -28609,7 +28691,7 @@ Jh
Jh
Jh
Jh
Jh
zk
Jh
Jh
Jh
@@ -29118,7 +29200,7 @@ Jh
Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -29852,6 +29934,7 @@ Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -29898,8 +29981,7 @@ Jh
Jh
Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -29948,6 +30030,7 @@ Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -30064,8 +30147,7 @@ Jh
Jh
Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -30596,7 +30678,7 @@ Jh
Jh
Jh
Jh
Jh
El
Jh
Jh
Jh
@@ -129,6 +129,7 @@
soundproofed = TRUE
limit_mob_size = FALSE
block_suit_sensors = TRUE
forbid_events = TRUE
/area/stellardelight/deck1/dorms/dorm1
name = "Dormitory One"
@@ -277,6 +278,10 @@
/area/stellardelight/deck3/readingroom
name = "Reading Rooms"
sound_env = SMALL_SOFTFLOOR
flags = RAD_SHIELDED| BLUE_SHIELDED |AREA_FLAG_IS_NOT_PERSISTENT
soundproofed = TRUE
block_suit_sensors = TRUE
forbid_events = TRUE
/area/stellardelight/deck3/portdock
name = "Port Dock"
+52 -28
View File
@@ -4,15 +4,16 @@
#define Z_LEVEL_SHIP_HIGH 3
#define Z_LEVEL_CENTCOM 4
#define Z_LEVEL_MISC 5
#define Z_LEVEL_BEACH 6
#define Z_LEVEL_BEACH_CAVE 7
#define Z_LEVEL_AEROSTAT 8
#define Z_LEVEL_AEROSTAT_SURFACE 9
#define Z_LEVEL_DEBRISFIELD 10
#define Z_LEVEL_FUELDEPOT 11
#define Z_LEVEL_OVERMAP 12
#define Z_LEVEL_OFFMAP1 13
#define Z_LEVEL_GATEWAY 14
#define Z_LEVEL_SPACE_ROCKS 6
#define Z_LEVEL_BEACH 7
#define Z_LEVEL_BEACH_CAVE 8
#define Z_LEVEL_AEROSTAT 9
#define Z_LEVEL_AEROSTAT_SURFACE 10
#define Z_LEVEL_DEBRISFIELD 11
#define Z_LEVEL_FUELDEPOT 12
#define Z_LEVEL_OVERMAP 13
#define Z_LEVEL_OFFMAP1 14
#define Z_LEVEL_GATEWAY 15
//Camera networks
#define NETWORK_HALLS "Halls"
@@ -46,14 +47,15 @@
lobby_screens = list("youcanttaketheskyfromme")
id_hud_icons = 'icons/mob/hud_jobs_vr.dmi'
/*
holomap_smoosh = list(list(
Z_LEVEL_SURFACE_LOW,
Z_LEVEL_SURFACE_MID,
Z_LEVEL_SURFACE_HIGH))
*/
Z_LEVEL_SHIP_LOW,
Z_LEVEL_SHIP_MID,
Z_LEVEL_SHIP_HIGH))
station_name = "NRV Stellar Delight"
station_short = "Stellar Delight"
facility_type = "ship"
dock_name = "Virgo-3B Colony"
dock_type = "surface"
boss_name = "Central Command"
@@ -126,6 +128,7 @@
lateload_z_levels = list(
list("Ship - Central Command"),
list("Ship - Misc"), //Shuttle transit zones, holodeck templates, etc
list("V3b Asteroid Field"),
list("Desert Planet - Z1 Beach","Desert Planet - Z2 Cave"),
list("Remmi Aerostat - Z1 Aerostat","Remmi Aerostat - Z2 Surface"),
list("Debris Field - Z1 Space"),
@@ -177,17 +180,13 @@
. += "As an employee or contractor of NanoTrasen, operators of the Adephagia and one of the galaxy's largest corporations, you're probably just here to do a job."
return jointext(., "<br>")
/*
/datum/map/stellar_delight/perform_map_generation()
new /datum/random_map/automata/cave_system/no_cracks(null, 1, 1, Z_LEVEL_SURFACE_MINE, world.maxx, world.maxy) // Create the mining Z-level.
new /datum/random_map/noise/ore(null, 1, 1, Z_LEVEL_SURFACE_MINE, 64, 64) // Create the mining ore distribution map.
new /datum/random_map/automata/cave_system/no_cracks(null, 1, 1, Z_LEVEL_SOLARS, world.maxx, world.maxy) // Create the mining Z-level.
new /datum/random_map/noise/ore(null, 1, 1, Z_LEVEL_SOLARS, 64, 64) // Create the mining ore distribution map.
new /datum/random_map/automata/cave_system/no_cracks(null, 1, 1, Z_LEVEL_SPACE_ROCKS, world.maxx, world.maxy) // Create the mining Z-level.
new /datum/random_map/noise/ore(null, 1, 1, Z_LEVEL_SPACE_ROCKS, 64, 64) // Create the mining ore distribution map.
return 1
*/
/datum/skybox_settings/stellar_delight
icon_state = "space5"
@@ -200,12 +199,6 @@
Z_LEVEL_BEACH
)
// For making the 6-in-1 holomap, we calculate some offsets
#define SHIP_MAP_SIZE 140 // Width and height of compiled in tether z levels.
#define SHIP_HOLOMAP_CENTER_GUTTER 40 // 40px central gutter between columns
#define SHIP_HOLOMAP_MARGIN_X ((HOLOMAP_ICON_SIZE - (2*TETHER_MAP_SIZE) - TETHER_HOLOMAP_CENTER_GUTTER) / 2) // 80
#define SHIP_HOLOMAP_MARGIN_Y ((HOLOMAP_ICON_SIZE - (2*TETHER_MAP_SIZE)) / 2) // 30
/obj/effect/landmark/map_data/stellar_delight
height = 3
@@ -241,6 +234,11 @@
return
cached_skybox_image.add_overlay("glow")
// For making the 6-in-1 holomap, we calculate some offsets
#define SHIP_MAP_SIZE 140 // Width and height of compiled in tether z levels.
#define SHIP_HOLOMAP_CENTER_GUTTER 40 // 40px central gutter between columns
#define SHIP_HOLOMAP_MARGIN_X ((HOLOMAP_ICON_SIZE - (2*SHIP_MAP_SIZE) - SHIP_HOLOMAP_CENTER_GUTTER) / 2) // 80
#define SHIP_HOLOMAP_MARGIN_Y ((HOLOMAP_ICON_SIZE - (2*SHIP_MAP_SIZE)) / 2) // 30
// We have a bunch of stuff common to the station z levels
/datum/map_z_level/stellar_delight
@@ -253,18 +251,24 @@
name = "Deck 1"
base_turf = /turf/space
transit_chance = 33
holomap_offset_x = SHIP_HOLOMAP_MARGIN_X
holomap_offset_y = SHIP_HOLOMAP_MARGIN_Y
/datum/map_z_level/stellar_delight/deck_two
z = Z_LEVEL_SHIP_MID
name = "Deck 2"
base_turf = /turf/simulated/open
transit_chance = 33
holomap_offset_x = SHIP_HOLOMAP_MARGIN_X
holomap_offset_y = SHIP_HOLOMAP_MARGIN_Y + SHIP_MAP_SIZE
/datum/map_z_level/stellar_delight/deck_three
z = Z_LEVEL_SHIP_HIGH
name = "Deck 3"
base_turf = /turf/simulated/open
transit_chance = 33
holomap_offset_x = HOLOMAP_ICON_SIZE - SHIP_HOLOMAP_MARGIN_X - SHIP_MAP_SIZE
holomap_offset_y = SHIP_HOLOMAP_MARGIN_Y + SHIP_MAP_SIZE
/datum/map_template/ship_lateload
allow_duplicates = FALSE
@@ -307,6 +311,26 @@
name = "Misc"
flags = MAP_LEVEL_ADMIN|MAP_LEVEL_SEALED|MAP_LEVEL_CONTACT|MAP_LEVEL_XENOARCH_EXEMPT
#include "../submaps/space_rocks/space_rocks.dm"
/datum/map_template/ship_lateload/space_rocks
name = "V3b Asteroid Field"
desc = "Space debris is common in V3b's orbit due to the proximity of Virgo 3"
mappath = 'maps/submaps/space_rocks/space_rocks.dmm'
associated_map_datum = /datum/map_z_level/ship_lateload/space_rocks
/datum/map_template/ship_lateload/space_rocks/on_map_loaded(z)
. = ..()
seed_submaps(list(Z_LEVEL_SPACE_ROCKS), 60, /area/sdmine/unexplored, /datum/map_template/space_rocks)
new /datum/random_map/automata/cave_system/no_cracks(null, 3, 3, Z_LEVEL_SPACE_ROCKS, world.maxx - 4, world.maxy - 4)
new /datum/random_map/noise/ore/spacerocks(null, 1, 1, Z_LEVEL_SPACE_ROCKS, 64, 64)
/datum/map_z_level/ship_lateload/space_rocks
z = Z_LEVEL_SPACE_ROCKS
name = "V3b Asteroid Field"
base_turf = /turf/space
flags = MAP_LEVEL_PLAYER|MAP_LEVEL_CONTACT|MAP_LEVEL_CONSOLES
/datum/map_template/ship_lateload/overmap
name = "Overmap"
desc = "Overmap lives here :3"
@@ -240,7 +240,7 @@
[i]Transponder[/i]: Transmitting (CIV), NanoTrasen IFF
[b]Notice[/b]: NanoTrasen Base, authorized personnel only"}
known = TRUE
in_space = FALSE
in_space = TRUE
icon = 'icons/obj/overmap_vr.dmi'
icon_state = "virgo3b"
@@ -250,8 +250,11 @@
skybox_pixel_x = 0
skybox_pixel_y = 0
initial_generic_waypoints = list("sr-c","sr-n","sr-s")
initial_restricted_waypoints = list("Central Command Shuttlepad" = list("cc_shuttlepad"))
extra_z_levels = list(Z_LEVEL_SPACE_ROCKS)
/////SD Starts at V3b to pick up crew refuel and repair (And to make sure it doesn't spawn on hazards)
/obj/effect/overmap/visitable/sector/virgo3b/Initialize()
. = ..()
@@ -278,4 +281,7 @@
//For ships, it's safe to assume they're big enough to not be sneaky
else if(istype(AM, /obj/effect/overmap/visitable/ship))
atc.msg(message)
atc.msg(message)
/obj/effect/overmap/visitable/sector/virgo3b/get_space_zlevels()
return list(Z_LEVEL_SPACE_ROCKS)
+145
View File
@@ -0,0 +1,145 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/template_noop,
/area/template_noop)
"L" = (
/obj/random/underdark/uncertain,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/bittynest1)
"P" = (
/turf/simulated/mineral/vacuum/sdmine,
/area/submap/space_rocks/bittynest1)
"W" = (
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/bittynest1)
"Y" = (
/obj/tether_away_spawner/asteroidbaddies,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/bittynest1)
(1,1,1) = {"
a
a
a
a
P
P
a
a
a
a
"}
(2,1,1) = {"
a
a
a
P
P
P
P
W
a
a
"}
(3,1,1) = {"
a
a
P
P
W
W
W
W
P
a
"}
(4,1,1) = {"
a
P
P
W
W
P
P
P
P
a
"}
(5,1,1) = {"
P
P
W
W
W
W
W
Y
P
P
"}
(6,1,1) = {"
P
P
W
W
W
L
W
W
W
P
"}
(7,1,1) = {"
P
P
W
W
W
W
W
W
W
P
"}
(8,1,1) = {"
a
P
P
Y
W
W
W
W
P
P
"}
(9,1,1) = {"
a
a
P
P
P
P
P
P
P
a
"}
(10,1,1) = {"
a
a
a
a
a
P
P
a
a
a
"}
+145
View File
@@ -0,0 +1,145 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/template_noop,
/area/template_noop)
"v" = (
/turf/simulated/mineral/vacuum/sdmine,
/area/submap/space_rocks/bittynest2)
"B" = (
/obj/tether_away_spawner/asteroidbaddies,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/bittynest2)
"R" = (
/obj/random/underdark/uncertain,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/bittynest2)
"W" = (
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/bittynest2)
(1,1,1) = {"
a
a
a
a
v
v
a
v
v
a
"}
(2,1,1) = {"
a
a
v
v
v
v
v
v
v
a
"}
(3,1,1) = {"
a
v
v
v
v
W
R
v
v
v
"}
(4,1,1) = {"
a
v
v
v
W
W
B
W
v
v
"}
(5,1,1) = {"
v
v
v
W
W
W
W
W
v
a
"}
(6,1,1) = {"
v
v
W
W
W
W
W
v
v
v
"}
(7,1,1) = {"
v
v
R
B
W
W
W
W
v
a
"}
(8,1,1) = {"
v
v
v
W
W
v
v
W
a
a
"}
(9,1,1) = {"
a
v
v
v
v
v
v
W
a
a
"}
(10,1,1) = {"
a
a
a
v
v
a
a
a
a
a
"}
+145
View File
@@ -0,0 +1,145 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/template_noop,
/area/template_noop)
"p" = (
/obj/tether_away_spawner/asteroidbaddies,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/bittynest3)
"N" = (
/obj/random/underdark/uncertain,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/bittynest3)
"Q" = (
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/bittynest3)
"Z" = (
/turf/simulated/mineral/vacuum/sdmine,
/area/submap/space_rocks/bittynest3)
(1,1,1) = {"
a
a
Q
a
Z
Z
Z
Z
a
a
"}
(2,1,1) = {"
a
Z
Q
Q
Q
Z
Z
Z
Z
a
"}
(3,1,1) = {"
a
Z
Z
Q
Q
p
Q
Z
Z
Z
"}
(4,1,1) = {"
Z
Z
Z
Z
Z
Q
Q
Q
Z
Z
"}
(5,1,1) = {"
Z
Z
Z
p
Q
Z
Q
Q
Z
a
"}
(6,1,1) = {"
Z
Z
Q
Q
Q
Q
Q
Z
Z
a
"}
(7,1,1) = {"
Z
Z
Q
N
Q
Q
Q
Z
Z
a
"}
(8,1,1) = {"
a
Z
Z
Q
Q
Z
Z
Z
Z
a
"}
(9,1,1) = {"
a
a
Z
Z
Z
Z
Z
Z
a
a
"}
(10,1,1) = {"
a
a
a
Z
Z
Z
a
a
a
a
"}
+145
View File
@@ -0,0 +1,145 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/template_noop,
/area/template_noop)
"m" = (
/obj/tether_away_spawner/asteroidbaddies,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/bittynest4)
"x" = (
/obj/random/underdark/uncertain,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/bittynest4)
"P" = (
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/bittynest4)
"V" = (
/turf/simulated/mineral/vacuum/sdmine,
/area/submap/space_rocks/bittynest4)
(1,1,1) = {"
a
a
V
V
V
P
V
V
a
a
"}
(2,1,1) = {"
a
V
V
V
P
P
P
V
V
a
"}
(3,1,1) = {"
V
V
P
P
P
x
V
V
V
V
"}
(4,1,1) = {"
V
V
P
P
V
V
V
V
V
V
"}
(5,1,1) = {"
a
V
P
V
V
m
P
x
V
V
"}
(6,1,1) = {"
V
V
P
V
P
P
P
P
P
V
"}
(7,1,1) = {"
V
V
P
P
P
P
V
V
P
V
"}
(8,1,1) = {"
V
V
V
P
V
V
V
P
P
V
"}
(9,1,1) = {"
a
V
V
V
V
V
P
m
V
V
"}
(10,1,1) = {"
a
a
V
V
V
P
P
V
V
a
"}
+148
View File
@@ -0,0 +1,148 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/template_noop,
/area/template_noop)
"v" = (
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/clearing)
"y" = (
/obj/random/contraband/nofail,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/clearing)
"P" = (
/obj/random/underdark/uncertain,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/clearing)
"W" = (
/obj/tether_away_spawner/asteroidbaddies,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/clearing)
(1,1,1) = {"
a
a
a
a
v
v
a
a
a
a
"}
(2,1,1) = {"
a
a
v
v
v
v
v
v
a
a
"}
(3,1,1) = {"
a
v
v
v
v
v
v
v
v
a
"}
(4,1,1) = {"
a
v
v
v
v
v
v
v
v
a
"}
(5,1,1) = {"
v
v
v
v
P
v
v
v
v
v
"}
(6,1,1) = {"
v
v
v
W
v
y
v
v
v
v
"}
(7,1,1) = {"
a
v
v
v
v
v
v
v
v
a
"}
(8,1,1) = {"
a
v
v
v
v
v
v
v
v
a
"}
(9,1,1) = {"
a
a
v
v
v
v
v
v
a
a
"}
(10,1,1) = {"
a
a
a
a
v
v
a
a
a
a
"}
+498
View File
@@ -0,0 +1,498 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/template_noop,
/area/template_noop)
"b" = (
/obj/structure/loot_pile/surface/alien/medical,
/turf/simulated/shuttle/floor/alienplating/vacuum,
/area/submap/space_rocks/seventemple)
"f" = (
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/seventemple)
"h" = (
/obj/structure/loot_pile/surface/alien/end,
/turf/simulated/shuttle/floor/alienplating/vacuum,
/area/submap/space_rocks/seventemple)
"m" = (
/turf/simulated/shuttle/floor/alien,
/area/submap/space_rocks/seventemple)
"p" = (
/obj/structure/loot_pile/surface/bones,
/turf/simulated/shuttle/floor/alien/blue,
/area/submap/space_rocks/seventemple)
"q" = (
/obj/random/underdark/uncertain,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/seventemple)
"t" = (
/turf/simulated/shuttle/floor/alienplating/vacuum,
/area/submap/space_rocks/seventemple)
"w" = (
/obj/structure/loot_pile/surface/alien/security,
/turf/simulated/shuttle/floor/alienplating/vacuum,
/area/submap/space_rocks/seventemple)
"y" = (
/obj/structure/loot_pile/surface/drone,
/turf/simulated/shuttle/floor/alienplating/vacuum,
/area/submap/space_rocks/seventemple)
"F" = (
/turf/simulated/shuttle/floor/alien/blue,
/area/submap/space_rocks/seventemple)
"J" = (
/turf/simulated/wall/eris/r_wall,
/area/submap/space_rocks/seventemple)
"R" = (
/obj/tether_away_spawner/asteroidbaddies,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/seventemple)
"Y" = (
/obj/structure/loot_pile/surface/alien/engineering,
/turf/simulated/shuttle/floor/alienplating/vacuum,
/area/submap/space_rocks/seventemple)
(1,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(2,1,1) = {"
a
a
J
a
a
a
a
f
J
J
J
f
a
a
a
a
J
a
a
a
"}
(3,1,1) = {"
a
J
J
J
a
a
f
J
J
t
J
J
f
a
a
J
J
J
a
a
"}
(4,1,1) = {"
a
a
J
f
f
f
f
J
Y
t
t
J
f
f
f
f
J
a
a
a
"}
(5,1,1) = {"
a
a
a
f
R
f
f
J
t
t
t
J
f
f
f
f
a
a
a
a
"}
(6,1,1) = {"
a
a
f
f
f
f
f
J
t
y
t
J
f
f
R
f
f
a
a
a
"}
(7,1,1) = {"
a
f
f
f
f
f
J
J
t
m
t
J
J
f
f
f
f
f
a
a
"}
(8,1,1) = {"
a
f
f
f
f
J
J
m
t
t
t
m
J
J
f
f
f
f
a
a
"}
(9,1,1) = {"
a
f
q
f
J
J
t
t
t
F
t
t
t
J
J
f
f
f
a
a
"}
(10,1,1) = {"
J
f
f
f
J
w
t
t
F
p
F
t
t
h
J
f
f
f
J
a
"}
(11,1,1) = {"
a
f
f
f
J
J
t
t
t
F
t
t
t
J
J
f
f
f
a
a
"}
(12,1,1) = {"
a
f
f
f
f
J
J
m
t
t
t
m
J
J
f
f
f
f
a
a
"}
(13,1,1) = {"
a
f
f
f
f
f
J
J
t
m
t
J
J
f
f
f
q
f
a
a
"}
(14,1,1) = {"
a
a
f
f
f
f
f
J
t
y
t
J
f
f
f
f
f
a
a
a
"}
(15,1,1) = {"
a
a
a
f
R
f
f
J
t
t
t
J
f
f
R
f
a
a
a
a
"}
(16,1,1) = {"
a
a
J
f
f
f
f
J
b
t
t
J
f
f
f
f
J
a
a
a
"}
(17,1,1) = {"
a
J
J
J
a
a
f
J
J
t
J
J
f
a
a
J
J
J
a
a
"}
(18,1,1) = {"
a
a
J
a
a
a
a
f
J
J
J
f
a
a
a
a
J
a
a
a
"}
(19,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(20,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
+61
View File
@@ -0,0 +1,61 @@
#include "space_rocks_pois.dm"
#include "space_rocks_stuff.dm"
/turf/simulated/mineral/vacuum/sdmine/make_ore(var/rare_ore)
if(mineral)
return
var/mineral_name
if(rare_ore)
mineral_name = pickweight(list(
"marble" = 3,
"uranium" = 10,
"platinum" = 10,
"hematite" = 20,
"carbon" = 5,
"diamond" = 1,
"gold" = 8,
"silver" = 8,
"phoron" = 18,
"lead" = 2,
"verdantium" = 1))
else
mineral_name = pickweight(list(
"marble" = 2,
"uranium" = 5,
"platinum" = 5,
"hematite" = 35,
"carbon" = 5,
"gold" = 3,
"silver" = 3,
"phoron" = 25,
"lead" = 1))
if(mineral_name && (mineral_name in GLOB.ore_data))
mineral = GLOB.ore_data[mineral_name]
UpdateMineral()
update_icon()
/datum/random_map/noise/ore/spacerocks
descriptor = "asteroid field ore distribution map"
deep_val = 0.2
rare_val = 0.1
/datum/random_map/noise/ore/spacerocks/check_map_sanity()
return 1 //Totally random, but probably beneficial.
/area/sdmine/
ambience = list('sound/ambience/ambimine.ogg', 'sound/ambience/song_game.ogg')
base_turf = /turf/simulated/mineral/floor/vacuum
/area/sdmine/unexplored
name = "asteroid field"
icon_state = "unexplored"
/area/sdmine/explored
name = "asteroid field"
icon_state = "explored"
/obj/effect/overmap/visitable/sector/virgo3b/generate_skybox(zlevel)
var/static/image/smallone = image(icon = 'icons/skybox/virgo3b.dmi', icon_state = "small")
if(zlevel == Z_LEVEL_SPACE_ROCKS)
return smallone
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,96 @@
#if MAP_TEST
#include "bittynest1.dmm"
#include "bittynest2.dmm"
#include "bittynest3.dmm"
#include "bittynest4.dmm"
#include "clearing.dmm"
#include "seventemple.dmm"
#include "spacecrystals.dmm"
#include "tunnel1.dmm"
#include "tunnel2.dmm"
#endif
/area/submap/space_rocks
name = "POI - Space Rocks"
ambience = AMBIENCE_FOREBODING
/area/submap/space_rocks/bittynest1
name = "POI - Bittynest1"
/datum/map_template/space_rocks/bittynest1
name = "Bittynest1"
desc = "A smol nest for smol badguys"
mappath = 'bittynest1.dmm'
cost = 5
/area/submap/space_rocks/bittynest2
name = "POI - Bittynest2"
/datum/map_template/space_rocks/bittynest2
name = "Bittynest2"
desc = "A smol nest for smol badguys"
mappath = 'bittynest2.dmm'
cost = 5
/area/submap/space_rocks/bittynest3
name = "POI - Bittynest3"
/datum/map_template/space_rocks/bittynest3
name = "Bittynest3"
desc = "A smol nest for smol badguys"
mappath = 'bittynest3.dmm'
cost = 5
/area/submap/space_rocks/bittynest4
name = "POI - Bittynest4"
/datum/map_template/space_rocks/bittynest4
name = "Bittynest4"
desc = "A smol nest for smol badguys"
mappath = 'bittynest4.dmm'
cost = 5
/area/submap/space_rocks/tunnel1
name = "POI - Tunnel1"
/datum/map_template/space_rocks/tunnel1
name = "Tunnel1"
desc = "A tunnel left behind!"
mappath = 'tunnel1.dmm'
cost = 10
/area/submap/space_rocks/tunnel2
name = "POI - Tunnel2"
/datum/map_template/space_rocks/tunnel2
name = "Tunnel2"
desc = "A tunnel left behind!"
mappath = 'tunnel2.dmm'
cost = 10
/area/submap/space_rocks/spacecrystals
name = "POI - Space Crystals"
/datum/map_template/space_rocks/tunnel2
name = "Space Crystals"
desc = "Some crystals living in space!"
mappath = 'spacecrystals.dmm'
cost = 10
/area/submap/space_rocks/clearing
name = "POI - Clearing"
/datum/map_template/space_rocks/clearing
name = "Clearing"
desc = "A clear spot for mischief to happen."
mappath = 'clearing.dmm'
cost = 10
/area/submap/space_rocks/seventemple
name = "POI - Temple of the Seven"
/datum/map_template/space_rocks/seventemple
name = "Temple of the Seven"
desc = "A mysterious space!"
mappath = 'seventemple.dmm'
cost = 25
@@ -0,0 +1,30 @@
/////LANDING LANDMARKS
/obj/effect/shuttle_landmark/premade/spacerocks/center
name = "asteroid field center"
landmark_tag = "sr-c"
/obj/effect/shuttle_landmark/premade/spacerocks/north
name = "asteroid field north"
landmark_tag = "sr-n"
/obj/effect/shuttle_landmark/premade/spacerocks/south
name = "asteroid field south"
landmark_tag = "sr-s"
/obj/tether_away_spawner/asteroidbaddies
name = "Asteroid Mob Spawner"
faction = "space_rock"
atmos_comp = TRUE
prob_spawn = 100
prob_fall = 40
//guard = 20
mobs_to_pick_from = list(
/mob/living/simple_mob/animal/space/bats = 10,
/mob/living/simple_mob/vore/alienanimals/space_jellyfish = 15,
/mob/living/simple_mob/vore/alienanimals/startreader = 15,
/mob/living/simple_mob/vore/alienanimals/space_ghost = 6,
/mob/living/simple_mob/vore/oregrub = 1,
/mob/living/simple_mob/animal/space/carp = 3,
/mob/living/simple_mob/animal/space/carp/large = 1,
/mob/living/simple_mob/animal/space/carp/large/huge = 1
)
+471
View File
@@ -0,0 +1,471 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/template_noop,
/area/template_noop)
"c" = (
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/spacecrystals)
"j" = (
/obj/random/underdark/uncertain,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/spacecrystals)
"W" = (
/turf/simulated/mineral/vacuum/sdmine,
/area/submap/space_rocks/spacecrystals)
"X" = (
/obj/tether_away_spawner/asteroidbaddies,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/spacecrystals)
"Z" = (
/obj/machinery/crystal,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/spacecrystals)
(1,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(2,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(3,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(4,1,1) = {"
a
a
a
a
W
W
W
W
W
W
a
a
a
a
a
a
a
a
a
a
"}
(5,1,1) = {"
a
a
a
W
W
c
c
c
c
W
W
a
a
a
a
a
a
a
a
a
"}
(6,1,1) = {"
a
a
a
W
c
c
c
c
c
c
W
a
a
a
a
a
a
a
a
a
"}
(7,1,1) = {"
a
a
W
W
X
j
c
c
c
c
W
W
W
W
W
W
a
a
a
a
"}
(8,1,1) = {"
a
a
W
c
c
c
c
c
c
Z
c
c
c
c
W
W
a
a
a
a
"}
(9,1,1) = {"
a
a
W
c
c
c
c
Z
c
c
c
Z
c
c
c
W
W
a
a
a
"}
(10,1,1) = {"
a
a
W
W
c
c
c
c
c
c
c
c
c
j
c
c
W
a
a
a
"}
(11,1,1) = {"
a
a
a
W
W
W
c
c
c
Z
c
c
c
c
c
c
W
a
a
a
"}
(12,1,1) = {"
a
a
a
a
a
W
c
c
c
c
c
c
c
c
c
c
W
a
a
a
"}
(13,1,1) = {"
a
a
a
a
W
W
c
Z
c
c
c
Z
c
c
X
W
W
a
a
a
"}
(14,1,1) = {"
a
a
a
W
W
c
c
c
c
Z
c
c
W
W
W
W
a
a
a
a
"}
(15,1,1) = {"
a
a
a
W
c
c
j
X
c
c
c
W
W
a
a
a
a
a
a
a
"}
(16,1,1) = {"
a
a
a
W
c
c
c
c
c
c
W
W
a
a
a
a
a
a
a
a
"}
(17,1,1) = {"
a
a
a
W
c
c
c
c
c
W
W
a
a
a
a
a
a
a
a
a
"}
(18,1,1) = {"
a
a
a
W
W
c
W
c
W
W
a
a
a
a
a
a
a
a
a
a
"}
(19,1,1) = {"
a
a
a
a
W
W
W
W
W
a
a
a
a
a
a
a
a
a
a
a
"}
(20,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
+251
View File
@@ -0,0 +1,251 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/simulated/mineral/vacuum/sdmine,
/area/template_noop)
"b" = (
/turf/simulated/floor/airless,
/area/submap/space_rocks/tunnel1)
"k" = (
/obj/tether_away_spawner/asteroidbaddies,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/tunnel1)
"l" = (
/turf/simulated/wall,
/area/submap/space_rocks/tunnel1)
"x" = (
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/tunnel1)
"L" = (
/turf/simulated/mineral/vacuum/sdmine,
/area/submap/space_rocks/tunnel1)
"Z" = (
/obj/random/underdark/uncertain,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/tunnel1)
(1,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(2,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(3,1,1) = {"
L
l
L
L
L
L
l
x
L
L
L
L
l
x
x
L
L
L
l
L
"}
(4,1,1) = {"
L
b
L
L
Z
L
b
x
x
L
L
x
b
L
x
x
x
x
b
L
"}
(5,1,1) = {"
x
b
b
x
k
x
b
b
x
x
x
x
b
b
x
x
L
x
b
b
"}
(6,1,1) = {"
x
b
b
x
x
x
b
b
x
x
x
x
b
b
x
Z
k
x
b
b
"}
(7,1,1) = {"
L
b
L
k
x
L
b
x
x
x
x
x
b
x
x
L
x
x
b
L
"}
(8,1,1) = {"
L
l
x
x
L
L
l
L
x
x
L
L
l
L
L
L
L
L
l
L
"}
(9,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
(10,1,1) = {"
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
a
"}
+275
View File
@@ -0,0 +1,275 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"a" = (
/turf/simulated/mineral/vacuum/sdmine,
/area/template_noop)
"f" = (
/obj/tether_away_spawner/asteroidbaddies,
/turf/simulated/floor/airless,
/area/submap/space_rocks/tunnel2)
"i" = (
/turf/simulated/floor/airless,
/area/submap/space_rocks/tunnel2)
"l" = (
/obj/random/underdark/uncertain,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/tunnel2)
"q" = (
/turf/simulated/wall,
/area/submap/space_rocks/tunnel2)
"z" = (
/obj/tether_away_spawner/asteroidbaddies,
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/tunnel2)
"C" = (
/turf/simulated/mineral/floor/vacuum{
ignore_cavegen = 1
},
/area/submap/space_rocks/tunnel2)
"L" = (
/turf/simulated/mineral/vacuum/sdmine,
/area/submap/space_rocks/tunnel2)
(1,1,1) = {"
a
a
L
L
C
C
L
L
a
a
"}
(2,1,1) = {"
a
a
q
i
i
i
i
q
a
a
"}
(3,1,1) = {"
a
a
L
C
f
i
L
L
a
a
"}
(4,1,1) = {"
a
a
L
C
C
C
L
L
a
a
"}
(5,1,1) = {"
a
a
L
C
C
C
L
L
a
a
"}
(6,1,1) = {"
a
a
L
L
L
C
l
L
a
a
"}
(7,1,1) = {"
a
a
q
i
i
i
i
q
a
a
"}
(8,1,1) = {"
a
a
L
C
i
i
L
L
a
a
"}
(9,1,1) = {"
a
a
L
C
C
C
C
L
a
a
"}
(10,1,1) = {"
a
a
C
C
C
C
L
L
a
a
"}
(11,1,1) = {"
a
a
C
C
C
C
C
L
a
a
"}
(12,1,1) = {"
a
a
L
C
C
L
C
L
a
a
"}
(13,1,1) = {"
a
a
q
i
i
i
i
q
a
a
"}
(14,1,1) = {"
a
a
L
L
i
i
L
L
a
a
"}
(15,1,1) = {"
a
a
L
L
C
C
C
L
a
a
"}
(16,1,1) = {"
a
a
L
l
C
C
C
L
a
a
"}
(17,1,1) = {"
a
a
L
z
C
C
C
L
a
a
"}
(18,1,1) = {"
a
a
L
L
L
C
C
L
a
a
"}
(19,1,1) = {"
a
a
q
i
i
i
i
q
a
a
"}
(20,1,1) = {"
a
a
L
L
i
i
L
L
a
a
"}
@@ -81,193 +81,6 @@
/mob/living/simple_mob/vore/aggressive/dragon = 1
)
/obj/random/underdark
name = "random underdark loot"
desc = "Random loot for Underdark."
icon = 'icons/obj/items.dmi'
icon_state = "spickaxe"
/obj/random/underdark/item_to_spawn()
return pick(prob(3);/obj/random/multiple/underdark/miningdrills,
prob(3);/obj/random/multiple/underdark/ores,
prob(2);/obj/random/multiple/underdark/treasure,
prob(1);/obj/random/multiple/underdark/mechtool)
/obj/random/underdark/uncertain
icon_state = "upickaxe"
spawn_nothing_percentage = 65 //only 33% to spawn loot
/obj/random/multiple/underdark/miningdrills
name = "random underdark mining tool loot"
desc = "Random mining tool loot for Underdark."
icon = 'icons/obj/items.dmi'
icon_state = "spickaxe"
/obj/random/multiple/underdark/miningdrills/item_to_spawn()
return pick(
prob(10);list(/obj/item/weapon/pickaxe/silver),
prob(8);list(/obj/item/weapon/pickaxe/drill),
prob(6);list(/obj/item/weapon/pickaxe/jackhammer),
prob(5);list(/obj/item/weapon/pickaxe/gold),
prob(4);list(/obj/item/weapon/pickaxe/plasmacutter),
prob(2);list(/obj/item/weapon/pickaxe/diamond),
prob(1);list(/obj/item/weapon/pickaxe/diamonddrill)
)
/obj/random/multiple/underdark/ores
name = "random underdark mining ore loot"
desc = "Random mining utility loot for Underdark."
icon = 'icons/obj/mining.dmi'
icon_state = "satchel"
/obj/random/multiple/underdark/ores/item_to_spawn()
return pick(
prob(9);list(
/obj/item/weapon/storage/bag/ore,
/obj/item/weapon/shovel,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/glass,
/obj/item/weapon/ore/hydrogen,
/obj/item/weapon/ore/hydrogen,
/obj/item/weapon/ore/hydrogen,
/obj/item/weapon/ore/hydrogen,
/obj/item/weapon/ore/hydrogen,
/obj/item/weapon/ore/hydrogen
),
prob(7);list(
/obj/item/weapon/storage/bag/ore,
/obj/item/weapon/pickaxe,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium,
/obj/item/weapon/ore/osmium
),
prob(4);list(
/obj/item/clothing/suit/radiation,
/obj/item/clothing/head/radiation,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium,
/obj/item/weapon/ore/uranium),
prob(2);list(
/obj/item/device/flashlight/lantern,
/obj/item/clothing/glasses/material,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond,
/obj/item/weapon/ore/diamond
),
prob(1);list(
/obj/item/weapon/mining_scanner,
/obj/item/weapon/shovel/spade,
/obj/item/weapon/ore/verdantium,
/obj/item/weapon/ore/verdantium,
/obj/item/weapon/ore/verdantium,
/obj/item/weapon/ore/verdantium,
/obj/item/weapon/ore/verdantium
)
)
/obj/random/multiple/underdark/treasure
name = "random underdark treasure"
desc = "Random treasure loot for Underdark."
icon = 'icons/obj/storage.dmi'
icon_state = "cashbag"
/obj/random/multiple/underdark/treasure/item_to_spawn()
return pick(
prob(5);list(
/obj/random/coin,
/obj/random/coin,
/obj/random/coin,
/obj/random/coin,
/obj/random/coin,
/obj/item/clothing/head/pirate
),
prob(4);list(
/obj/item/weapon/storage/bag/cash,
/obj/item/weapon/spacecash/c500,
/obj/item/weapon/spacecash/c100,
/obj/item/weapon/spacecash/c50
),
prob(3);list(
/obj/item/clothing/head/hardhat/orange,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold,
/obj/item/stack/material/gold),
prob(1);list(
/obj/item/stack/material/phoron,
/obj/item/stack/material/phoron,
/obj/item/stack/material/phoron,
/obj/item/stack/material/phoron,
/obj/item/stack/material/diamond,
/obj/item/stack/material/diamond,
/obj/item/stack/material/diamond
)
)
/obj/random/multiple/underdark/mechtool
name = "random underdark mech equipment"
desc = "Random mech equipment loot for Underdark."
icon = 'icons/mecha/mecha_equipment.dmi'
icon_state = "mecha_clamp"
/obj/random/multiple/underdark/mechtool/item_to_spawn()
return pick(
prob(12);list(/obj/item/mecha_parts/mecha_equipment/tool/drill),
prob(10);list(/obj/item/mecha_parts/mecha_equipment/tool/hydraulic_clamp),
prob(8);list(/obj/item/mecha_parts/mecha_equipment/generator),
prob(7);list(/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/scattershot/rigged),
prob(6);list(/obj/item/mecha_parts/mecha_equipment/repair_droid),
prob(3);list(/obj/item/mecha_parts/mecha_equipment/gravcatapult),
prob(2);list(/obj/item/mecha_parts/mecha_equipment/weapon/energy/riggedlaser),
prob(2);list(/obj/item/mecha_parts/mecha_equipment/weapon/energy/flamer/rigged),
prob(1);list(/obj/item/mecha_parts/mecha_equipment/tool/drill/diamonddrill),
)
//POI STUFF
VIRGO3B_TURF_CREATE(/turf/simulated/mineral/ignore_oregen)
VIRGO3B_TURF_CREATE(/turf/simulated/mineral/floor/ignore_oregen)
+1
View File
@@ -68,6 +68,7 @@
station_name = "NSB Adephagia"
station_short = "Tether"
facility_type = "station"
dock_name = "Virgo-3B Colony"
dock_type = "surface"
boss_name = "Central Command"
+1
View File
@@ -81,6 +81,7 @@ var/list/all_maps = list()
var/station_name = "BAD Station"
var/station_short = "Baddy"
var/facility_type = "facility"
var/dock_name = "THE PirateBay"
var/dock_type = "station" //VOREStation Edit - for a list of valid types see the switch block in air_traffic.dm at line 148
var/boss_name = "Captain Roger"
+5
View File
@@ -2193,6 +2193,7 @@
#include "code\modules\events\ian_storm_vr.dm"
#include "code\modules\events\infestation.dm"
#include "code\modules\events\ion_storm.dm"
#include "code\modules\events\jellyfish_migration.dm"
#include "code\modules\events\maintenance_predator_vr.dm"
#include "code\modules\events\meteor_strike_vr.dm"
#include "code\modules\events\meteors.dm"
@@ -2954,6 +2955,9 @@
#include "code\modules\mob\living\simple_mob\taming.dm"
#include "code\modules\mob\living\simple_mob\subtypes\animal\animal.dm"
#include "code\modules\mob\living\simple_mob\subtypes\animal\alien animals\catslug.dm"
#include "code\modules\mob\living\simple_mob\subtypes\animal\alien animals\jellyfish.dm"
#include "code\modules\mob\living\simple_mob\subtypes\animal\alien animals\spookyghost.dm"
#include "code\modules\mob\living\simple_mob\subtypes\animal\alien animals\startreader.dm"
#include "code\modules\mob\living\simple_mob\subtypes\animal\alien animals\teppi.dm"
#include "code\modules\mob\living\simple_mob\subtypes\animal\borer\borer.dm"
#include "code\modules\mob\living\simple_mob\subtypes\animal\borer\borer_captive.dm"
@@ -3238,6 +3242,7 @@
#include "code\modules\multiz\ladder_assembly_vr.dm"
#include "code\modules\multiz\ladders.dm"
#include "code\modules\multiz\ladders_vr.dm"
#include "code\modules\multiz\misc.dm"
#include "code\modules\multiz\movement.dm"
#include "code\modules\multiz\movement_vr.dm"
#include "code\modules\multiz\pipes.dm"