diff --git a/code/controllers/Processes/planet.dm b/code/controllers/Processes/planet.dm index 7b446b4d2d..063d6d3fb9 100644 --- a/code/controllers/Processes/planet.dm +++ b/code/controllers/Processes/planet.dm @@ -20,14 +20,14 @@ var/datum/controller/process/planet/planet_controller = null for(var/turf/simulated/OT in outdoor_turfs) for(var/datum/planet/P in planets) if(OT.z in P.expected_z_levels) - P.planet_floors += OT + P.planet_floors |= OT break outdoor_turfs.Cut() //Why were you in there INCORRECTLY? for(var/turf/unsimulated/wall/planetary/PW in planetary_walls) for(var/datum/planet/P in planets) if(PW.type == P.planetary_wall_type) - P.planet_walls += PW + P.planet_walls |= PW break planetary_walls.Cut() diff --git a/code/game/machinery/spaceheater.dm b/code/game/machinery/spaceheater.dm index 830c5f8d6d..ec0af28d58 100644 --- a/code/game/machinery/spaceheater.dm +++ b/code/game/machinery/spaceheater.dm @@ -22,6 +22,10 @@ icon_state = "sheater[on]" if(panel_open) overlays += "sheater-open" + if(on) + set_light(3, 3, "#FFCC00") + else + set_light(0) /obj/machinery/space_heater/examine(mob/user) ..(user) diff --git a/code/game/objects/structures/grille.dm b/code/game/objects/structures/grille.dm index 5d371b4555..2f0a032f21 100644 --- a/code/game/objects/structures/grille.dm +++ b/code/game/objects/structures/grille.dm @@ -239,3 +239,14 @@ if(air_group) return 0 //Make sure air doesn't drain ..() + +/obj/structure/grille/broken/cult + icon_state = "grillecult-b" + +/obj/structure/grille/rustic + name = "rustic grille" + desc = "A lattice of metal, arranged in an old, rustic fashion." + icon_state = "grillerustic" + +/obj/structure/grille/broken/rustic + icon_state = "grillerustic-b" diff --git a/code/game/objects/structures/simple_doors.dm b/code/game/objects/structures/simple_doors.dm index 4e302e0e31..7312c1ebf9 100644 --- a/code/game/objects/structures/simple_doors.dm +++ b/code/game/objects/structures/simple_doors.dm @@ -42,7 +42,7 @@ /obj/structure/simple_door/Destroy() processing_objects -= src update_nearby_tiles() - ..() + return ..() /obj/structure/simple_door/get_material() return material @@ -194,5 +194,8 @@ /obj/structure/simple_door/wood/New(var/newloc,var/material_name) ..(newloc, "wood") +/obj/structure/simple_door/sifwood/New(var/newloc,var/material_name) + ..(newloc, "alien wood") + /obj/structure/simple_door/resin/New(var/newloc,var/material_name) ..(newloc, "resin") \ No newline at end of file diff --git a/code/game/turfs/simulated/outdoors/outdoors.dm b/code/game/turfs/simulated/outdoors/outdoors.dm index 75c7e68083..e5c6465329 100644 --- a/code/game/turfs/simulated/outdoors/outdoors.dm +++ b/code/game/turfs/simulated/outdoors/outdoors.dm @@ -34,6 +34,26 @@ var/list/outdoor_turfs = list() planet_controller.unallocateTurf(src) ..() +/turf/simulated/proc/make_outdoors() + outdoors = TRUE + outdoor_turfs.Add(src) + +/turf/simulated/proc/make_indoors() + outdoors = FALSE + planet_controller.unallocateTurf(src) + qdel(weather_overlay) + update_icon() + +/turf/simulated/post_change() + ..() + // If it was outdoors and still is, it will not get added twice when the planet controller gets around to putting it in. + if(outdoors) + make_outdoors() + // outdoor_turfs += src + else + make_indoors() + // planet_controller.unallocateTurf(src) + /turf/simulated/proc/update_icon_edge() if(edge_blending_priority) for(var/checkdir in cardinal) @@ -55,7 +75,7 @@ var/list/outdoor_turfs = list() ..() /turf/simulated/floor/outdoors/mud - name = "grass" + name = "mud" icon_state = "mud_dark" edge_blending_priority = 3 diff --git a/code/game/turfs/simulated/water.dm b/code/game/turfs/simulated/water.dm index 781ddeeb7f..8e32a004d9 100644 --- a/code/game/turfs/simulated/water.dm +++ b/code/game/turfs/simulated/water.dm @@ -15,8 +15,12 @@ update_icon() ..() +/turf/simulated/floor/water/initialize() + update_icon() + /turf/simulated/floor/water/update_icon() ..() // To get the edges. This also gets rid of other overlays so it needs to go first. + overlays.Cut() icon_state = water_state var/image/floorbed_sprite = image(icon = 'icons/turf/outdoors.dmi', icon_state = under_state) underlays.Add(floorbed_sprite) diff --git a/code/modules/hydroponics/trays/tray.dm b/code/modules/hydroponics/trays/tray.dm index 4b26011f6d..4eee4ee91b 100644 --- a/code/modules/hydroponics/trays/tray.dm +++ b/code/modules/hydroponics/trays/tray.dm @@ -174,6 +174,25 @@ connect() update_icon() +/obj/machinery/portable_atmospherics/hydroponics/initialize() + var/obj/item/seeds/S = locate() in loc + if(S) + plant_seeds(S) + +/obj/machinery/portable_atmospherics/hydroponics/proc/plant_seeds(var/obj/item/seeds/S) + lastproduce = 0 + seed = S.seed //Grab the seed datum. + dead = 0 + age = 1 + //Snowflakey, maybe move this to the seed datum + health = (istype(S, /obj/item/seeds/cutting) ? round(seed.get_trait(TRAIT_ENDURANCE)/rand(2,5)) : seed.get_trait(TRAIT_ENDURANCE)) + lastcycle = world.time + + qdel(S) + + check_health() + update_icon() + /obj/machinery/portable_atmospherics/hydroponics/bullet_act(var/obj/item/projectile/Proj) //Don't act on seeds like dionaea that shouldn't change. @@ -490,18 +509,7 @@ return user << "You plant the [S.seed.seed_name] [S.seed.seed_noun]." - lastproduce = 0 - seed = S.seed //Grab the seed datum. - dead = 0 - age = 1 - //Snowflakey, maybe move this to the seed datum - health = (istype(S, /obj/item/seeds/cutting) ? round(seed.get_trait(TRAIT_ENDURANCE)/rand(2,5)) : seed.get_trait(TRAIT_ENDURANCE)) - lastcycle = world.time - - qdel(O) - - check_health() - update_icon() + plant_seeds(S) else user << "\The [src] already has seeds in it!" diff --git a/code/modules/maps/tg/map_template.dm b/code/modules/maps/tg/map_template.dm index ae8031638f..3aaf324463 100644 --- a/code/modules/maps/tg/map_template.dm +++ b/code/modules/maps/tg/map_template.dm @@ -24,7 +24,8 @@ var/list/global/map_templates = list() if(path) mappath = path if(mappath) - preload_size(mappath) + spawn(1) + preload_size(mappath) if(rename) name = rename diff --git a/icons/obj/structures.dmi b/icons/obj/structures.dmi index 341f5a33c0..f51de6956b 100644 Binary files a/icons/obj/structures.dmi and b/icons/obj/structures.dmi differ diff --git a/icons/turf/areas.dmi b/icons/turf/areas.dmi index d1bfcbfb01..8ad45585ab 100755 Binary files a/icons/turf/areas.dmi and b/icons/turf/areas.dmi differ diff --git a/maps/_map_system_readme.dm b/maps/_map_system_readme.dm new file mode 100644 index 0000000000..95e996907b --- /dev/null +++ b/maps/_map_system_readme.dm @@ -0,0 +1,18 @@ +/* +This system is in place to make it easier to seperate data specific to a certain map. + +Each map should have their own folder, and contain both the actual map files, and the code files defining their unique +things, such as areas, elevators, or shuttles. Generally, the layout is that your map folder has, + +[map_name] folder + [map_name].dm - Containing a lot of #define directives, and is used to automatically load the other files you need. + [map_name_defines].dm - This contains the code for the map datum. For more details, read the comments inside ~map_system folder. + (optional) [map_name]_areas/structures/whatever.dm - Files for unique things to that map. + [map_name]-1.dmm - Your actual map files. Z-levels should be ordered correctly if you seperate your z-levels across map files. + +-HOW TO LOAD A SPECIFIC MAP- +Say you want to load southern_cross, +First, uncheck your current loaded map, presumably northern_star. Uncheck northern_star.dm inside northern_star folder. +Then go open southern_cross folder, and check southern_cross.dm, don't check any other folders below, and compile. +When you finish compiling, you should be able to open the map files for southern_cross. +*/ \ No newline at end of file diff --git a/maps/plane/plane-1.dmm b/maps/plane/plane-1.dmm new file mode 100644 index 0000000000..8017636b44 --- /dev/null +++ b/maps/plane/plane-1.dmm @@ -0,0 +1,71 @@ +"a" = (/turf/unsimulated/wall/planetary/sif,/area/plane_ground) +"b" = (/turf/simulated/floor/outdoors/dirt,/area/plane_ground) +"c" = (/obj/effect/landmark/start,/turf/simulated/floor/outdoors/dirt,/area/plane_ground) +"d" = (/obj/effect/landmark{name = "JoinLate"},/turf/simulated/floor/outdoors/dirt,/area/plane_ground) + +(1,1,1) = {" +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbdddbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbdddbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbdddbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +"} diff --git a/maps/plane/plane-2.dmm b/maps/plane/plane-2.dmm new file mode 100644 index 0000000000..06144256e9 --- /dev/null +++ b/maps/plane/plane-2.dmm @@ -0,0 +1,70 @@ +"a" = (/turf/unsimulated/wall/planetary/sif,/area/plane_sky) +"b" = (/turf/simulated/open,/area/plane_sky) +"c" = (/obj/effect/landmark/map_data{height = 2},/turf/simulated/open,/area/plane_sky) + +(1,1,1) = {" +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbcbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +"} diff --git a/maps/plane/plane.dm b/maps/plane/plane.dm new file mode 100644 index 0000000000..71ba0072af --- /dev/null +++ b/maps/plane/plane.dm @@ -0,0 +1,16 @@ +#if !defined(USING_MAP_DATUM) + + #include "plane-1.dmm" + #include "plane-2.dmm" + + #include "plane_defines.dm" + #include "plane_areas.dm" + + + #define USING_MAP_DATUM /datum/map/plane + +#elif !defined(MAP_OVERRIDE) + + #warn A map has already been included, ignoring Plane + +#endif \ No newline at end of file diff --git a/maps/plane/plane_areas.dm b/maps/plane/plane_areas.dm new file mode 100644 index 0000000000..2df2eb91d7 --- /dev/null +++ b/maps/plane/plane_areas.dm @@ -0,0 +1,5 @@ +/area/plane_ground + name = "flat plane" + +/area/plane_sky + name = "open sky" \ No newline at end of file diff --git a/maps/plane/plane_defines.dm b/maps/plane/plane_defines.dm new file mode 100644 index 0000000000..8d1e48a5ec --- /dev/null +++ b/maps/plane/plane_defines.dm @@ -0,0 +1,41 @@ +#define Z_LEVEL_FIRST_PLANE 1 +#define Z_LEVEL_SECOND_PLANE 2 + +/datum/map/plane + name = "Another Test Map" + full_name = "The Flat Test Map" + path = "plane" + + lobby_icon = 'icons/misc/title.dmi' + lobby_screens = list("mockingjay00") + + zlevel_datum_type = /datum/map_z_level/plane + + station_name = "The Plain Plane for Air Planes" + station_short = "The Plane" + dock_name = "the Maximum Fun Chamber" + boss_name = "Mister Fun" + boss_short = "Mr. Fun" + company_name = "Fun Inc." + company_short = "FI" + starsys_name = "Not Vir" + +/datum/map_z_level/plane/first + z = Z_LEVEL_FIRST_PLANE + name = "The Ground" + flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER + transit_chance = 50 + base_turf = /turf/simulated/floor/outdoors/rocks + +/datum/map_z_level/plane/second + z = Z_LEVEL_SECOND_PLANE + name = "The Sky" + flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER + transit_chance = 50 + base_turf = /turf/simulated/open + +/datum/planet/sif + expected_z_levels = list( + Z_LEVEL_FIRST_PLANE, + Z_LEVEL_SECOND_PLANE + ) \ No newline at end of file diff --git a/maps/submaps/surface_submaps/farm1.dmm b/maps/submaps/surface_submaps/farm1.dmm new file mode 100644 index 0000000000..a89d481737 --- /dev/null +++ b/maps/submaps/surface_submaps/farm1.dmm @@ -0,0 +1,78 @@ +"a" = (/turf/template_noop,/area/template_noop) +"b" = (/turf/simulated/floor/outdoors/dirt,/area/submap/farm1) +"c" = (/obj/structure/railing,/turf/simulated/floor/outdoors/dirt,/area/submap/farm1) +"d" = (/obj/structure/railing{tag = "icon-railing0 (EAST)"; icon_state = "railing0"; dir = 4},/turf/simulated/floor/outdoors/dirt,/area/submap/farm1) +"e" = (/turf/simulated/floor/outdoors/grass/sif,/area/submap/farm1) +"f" = (/obj/structure/railing{tag = "icon-railing0 (WEST)"; icon_state = "railing0"; dir = 8},/turf/simulated/floor/outdoors/dirt,/area/submap/farm1) +"g" = (/turf/simulated/wall/wood,/area/submap/farm1) +"h" = (/obj/structure/grille/rustic,/obj/structure/window/reinforced/full,/turf/simulated/floor/plating,/area/submap/farm1) +"i" = (/obj/structure/closet/secure_closet/freezer/fridge,/turf/simulated/floor/wood,/area/submap/farm1) +"j" = (/turf/simulated/floor/wood,/area/submap/farm1) +"k" = (/obj/structure/table/marble,/turf/simulated/floor/wood,/area/submap/farm1) +"l" = (/obj/structure/table/marble,/obj/item/weapon/material/kitchen/rollingpin,/turf/simulated/floor/wood,/area/submap/farm1) +"m" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/item/seeds/cornseed,/turf/simulated/floor/outdoors/dirt,/area/submap/farm1) +"n" = (/obj/item/weapon/material/minihoe,/turf/simulated/floor/outdoors/dirt,/area/submap/farm1) +"o" = (/obj/structure/table/marble,/obj/item/weapon/material/kitchen/utensil/knife,/turf/simulated/floor/wood,/area/submap/farm1) +"p" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/item/seeds/bluetomatoseed,/turf/simulated/floor/outdoors/dirt,/area/submap/farm1) +"q" = (/turf/simulated/floor/outdoors/mud,/area/submap/farm1) +"r" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/item/seeds/icepepperseed,/turf/simulated/floor/outdoors/dirt,/area/submap/farm1) +"s" = (/obj/structure/simple_door/wood,/turf/simulated/floor/wood,/area/submap/farm1) +"t" = (/mob/living/bot/farmbot,/turf/simulated/floor/outdoors/dirt,/area/submap/farm1) +"u" = (/obj/structure/sink/puddle,/turf/simulated/floor/outdoors/mud,/area/submap/farm1) +"v" = (/obj/item/weapon/material/hatchet,/turf/simulated/floor/outdoors/mud,/area/submap/farm1) +"w" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/box/matches,/obj/item/weapon/flame/match,/turf/simulated/floor/wood,/area/submap/farm1) +"x" = (/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/submap/farm1) +"y" = (/obj/item/clothing/shoes/boots/winter/hydro,/obj/item/clothing/suit/storage/hooded/wintercoat/hydro,/turf/simulated/floor/wood,/area/submap/farm1) +"z" = (/obj/structure/bed/chair/wood{tag = "icon-wooden_chair (WEST)"; icon_state = "wooden_chair"; dir = 8},/turf/simulated/floor/wood,/area/submap/farm1) +"A" = (/obj/item/weapon/reagent_containers/glass/bucket,/turf/simulated/floor/outdoors/dirt,/area/submap/farm1) +"B" = (/obj/structure/table/woodentable,/obj/item/weapon/storage/fancy/candle_box,/turf/simulated/floor/wood,/area/submap/farm1) +"C" = (/obj/machinery/portable_atmospherics/hydroponics/soil,/obj/item/seeds/wheatseed,/turf/simulated/floor/outdoors/dirt,/area/submap/farm1) +"D" = (/obj/structure/closet/crate/bin,/turf/simulated/floor/wood,/area/submap/farm1) +"E" = (/obj/machinery/space_heater,/turf/simulated/floor/wood,/area/submap/farm1) +"F" = (/obj/structure/bookcase,/obj/item/weapon/book/manual/hydroponics_pod_people,/turf/simulated/floor/wood,/area/submap/farm1) +"G" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/blue,/turf/simulated/floor/wood,/area/submap/farm1) +"H" = (/obj/structure/table/woodentable,/obj/item/trash/candle,/turf/simulated/floor/wood,/area/submap/farm1) +"I" = (/turf/simulated/floor/outdoors/rocks,/area/submap/farm1) +"J" = (/turf/simulated/floor/plating,/area/submap/farm1) +"K" = (/turf/simulated/floor/water,/area/submap/farm1) +"L" = (/obj/structure/loot_pile/maint/technical,/turf/simulated/floor/plating,/area/submap/farm1) +"M" = (/obj/machinery/power/port_gen/pacman,/turf/simulated/floor/plating,/area/submap/farm1) +"N" = (/obj/structure/closet/crate/hydroponics/prespawned,/turf/simulated/floor/plating,/area/submap/farm1) +"O" = (/obj/structure/table/steel,/obj/machinery/cell_charger,/turf/simulated/floor/plating,/area/submap/farm1) +"P" = (/obj/structure/table/steel,/turf/simulated/floor/plating,/area/submap/farm1) +"Q" = (/obj/structure/railing{tag = "icon-railing0 (NORTH)"; icon_state = "railing0"; dir = 1},/turf/simulated/floor/outdoors/dirt,/area/submap/farm1) + +(1,1,1) = {" +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +abccccccccccccccccccccccccbaaaaa +adeeeeeeeeeeeeeeeeeeeeeeeefaaaaa +adeeeeeeeeeeeeeeeeeeeeeeeefaaaaa +adeegghhggeeeeeeeeeeeeeeeefaaaaa +adeegijklgeeeeemmmmmmmmmeefaaaaa +adeegjjjkheeeeebnbbbbbbbeefaaaaa +adeegjjjogebbeepppqqqrrreefaaaaa +adegggsgggebbbbtbbquvbbbeefaaaaa +adegwxjygeeebbepppqqqrrreefaaaaa +adehxzjjgggebeebbAbbbbbbeefaaaaa +adehBjjjsjsbbeeCCCCCCCCCeefaaaaa +adegDjjEgggebeeeeeeeeeeeeefaaaaa +adeggsgggeeebeeeeeeeeeeeeefaaaaa +adegFjjGgeebbbeeeeebbbbbbbbbbbba +adegEjjHgeebbbbbbbbbbbbbbbbbbbba +adeggggggeebeeeeeeebbbbbbbbbbbba +adeebbbbbbbbeeeeeeebbbeeeefaaaaa +adebbIIIIIIbbeeegggJJJgggefaaaaa +adebIIKKKKIIbbeegLJJJJJLgefaaaaa +adebIKKKKKKIIbbehMJJJJJJhefaaaaa +adebIIKKKKKKIIbehLJJJJJLhefaaaaa +adebbIIKKKKKKIbehNJJJJJJhefaaaaa +adeebbIIKKKKIIbegLJOPPJLgefaaaaa +adeeebbIIIIIIbbegggggggggefaaaaa +adeeeebbbbbbbbeeeeeeeeeeeefaaaaa +adeeeeeeeeeeeeeeeeeeeeeeeefaaaaa +abQQQQQQQQQQQQQQQQQQQQQQQQbaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +"} diff --git a/maps/submaps/surface_submaps/forest.dm b/maps/submaps/surface_submaps/forest.dm index dd02c1b204..be13e4f947 100644 --- a/maps/submaps/surface_submaps/forest.dm +++ b/maps/submaps/surface_submaps/forest.dm @@ -2,4 +2,9 @@ name = "Surface Content" desc = "Used to make the surface by 17% less boring." -// To be added: Templates for surface exploration when they are made. \ No newline at end of file +// To be added: Templates for surface exploration when they are made. + +/datum/map_template/surface/farm1 + name = "Farm 1" + desc = "A small farm tended by a farmbot." + mappath = 'maps/submaps/surface_submaps/farm1.dmm' \ No newline at end of file diff --git a/maps/submaps/surface_submaps/forest_areas.dm b/maps/submaps/surface_submaps/forest_areas.dm new file mode 100644 index 0000000000..f8fe110cb0 --- /dev/null +++ b/maps/submaps/surface_submaps/forest_areas.dm @@ -0,0 +1,6 @@ +/area/submap + name = "Submap Area" + icon_state = "submap" + +/area/submap/farm1 + name = "farm" \ No newline at end of file diff --git a/polaris.dme b/polaris.dme index df0a5c9089..1cdd0c80ae 100644 --- a/polaris.dme +++ b/polaris.dme @@ -2269,5 +2269,6 @@ #include "maps\submaps\cave_submaps\cave.dm" #include "maps\submaps\space_submaps\space.dm" #include "maps\submaps\surface_submaps\forest.dm" +#include "maps\submaps\surface_submaps\forest_areas.dm" #include "maps\~map_system\maps.dm" // END_INCLUDE