Merge pull request #12030 from datlo/add-biodomes

Port the winter and clown biodomes for Lavaland
This commit is contained in:
Fox McCloud
2019-08-27 10:48:37 -04:00
committed by GitHub
18 changed files with 3779 additions and 23 deletions
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+3 -1
View File
@@ -19,6 +19,8 @@
// Lavaland Ruins
#include "map_files\RandomRuins\LavaRuins\lavaland_biodome_beach.dmm"
#include "map_files\RandomRuins\LavaRuins\lavaland_biodome_clown_planet.dmm"
#include "map_files\RandomRuins\LavaRuins\lavaland_biodome_winter.dmm"
#include "map_files\RandomRuins\LavaRuins\lavaland_surface_animal_hospital.dmm"
#include "map_files\RandomRuins\LavaRuins\lavaland_surface_ash_walker1.dmm"
#include "map_files\RandomRuins\LavaRuins\lavaland_surface_blooddrunk1.dmm"
@@ -44,7 +46,7 @@
#include "map_files\RandomRuins\LavaRuins\lavaland_surface_syndicate_base1.dmm"
#include "map_files\RandomRuins\LavaRuins\lavaland_surface_ufo_crash.dmm"
#include "map_files\RandomRuins\LavaRuins\lavaland_surface_xeno_nest.dmm"
// Space Ruins
#include "map_files\RandomRuins\SpaceRuins\abandonedzoo.dmm"
+13
View File
@@ -12,6 +12,19 @@
Comes with a rustic wooden bar and suicidal bartender."
suffix = "lavaland_biodome_beach.dmm"
/datum/map_template/ruin/lavaland/biodome/winter
name = "Biodome Winter"
id = "biodome-winter"
description = "For those getaways where you want to get back to nature, but you don't want to leave the fortified military compound where you spend your days. \
Includes a unique(*) laser pistol display case, and the recently introduced I.C.E(tm)."
suffix = "lavaland_biodome_winter.dmm"
/datum/map_template/ruin/lavaland/biodome/clown
name = "Biodome Clown Planet"
id = "biodome-clown"
description = "WELCOME TO CLOWN PLANET! HONK HONK HONK etc.!"
suffix = "lavaland_biodome_clown_planet.dmm"
/datum/map_template/ruin/lavaland/cube
name = "The Wishgranter Cube"
id = "wishgranter-cube"
+3
View File
@@ -12,6 +12,9 @@
/area/ruin/powered/snow_biodome
icon_state = "dk_yellow"
/area/ruin/powered/snow_cabin
icon_state = "bar"
/area/ruin/powered/gluttony
icon_state = "dk_yellow"
+16 -10
View File
@@ -6,7 +6,7 @@ GLOBAL_LIST_INIT(captain_display_cases, list())
/proc/updateDisplaycase(mob/living/carbon/human/captain)
if(!GLOB.captain_display_cases.len)
return
return
var/fingerprint = captain.get_full_print()
for(var/item in GLOB.captain_display_cases)
var/obj/structure/displaycase/CASE = item
@@ -113,6 +113,11 @@ GLOBAL_LIST_INIT(captain_display_cases, list())
occupant = new start_showpiece_type(src)
update_icon()
/obj/structure/displaycase/Destroy()
dump()
QDEL_NULL(circuit)
return ..()
/obj/structure/displaycase/captains_laser
name = "captain's display case"
desc = "A display case for the captain's antique laser gun. Hooked up with an anti-theft system."
@@ -125,6 +130,16 @@ GLOBAL_LIST_INIT(captain_display_cases, list())
. = ..()
GLOB.captain_display_cases += src
/obj/structure/displaycase/captains_laser/Destroy()
GLOB.captain_display_cases -= src
return ..()
/obj/structure/displaycase/lavaland_winter
burglar_alarm = TRUE
locked = TRUE
req_access = list(access_cent_specops)
start_showpiece_type = /obj/item/gun/energy/laser/captain
/obj/structure/displaycase/stechkin
name = "officer's display case"
desc = "A display case containing a humble stechkin pistol. Never forget your roots."
@@ -132,15 +147,6 @@ GLOBAL_LIST_INIT(captain_display_cases, list())
req_access = list(access_syndicate_command)
start_showpiece_type = /obj/item/gun/projectile/automatic/pistol
/obj/structure/displaycase/Destroy()
dump()
QDEL_NULL(circuit)
return ..()
/obj/structure/displaycase/captains_laser/Destroy()
GLOB.captain_display_cases -= src
return ..()
/obj/structure/displaycase/examine(mob/user)
..(user)
to_chat(user, "<span class='notice'>Peering through the glass, you see that it contains:</span>")
+8
View File
@@ -260,6 +260,14 @@
..()
icon_state = "rockpile[rand(1,5)]"
/obj/structure/flora/rock/icy
name = "icy rock"
color = "#cce9eb"
/obj/structure/flora/rock/pile/icy
name = "icy rocks"
color = "#cce9eb"
/obj/structure/flora/corn_stalk
name = "corn stalk"
icon = 'icons/obj/flora/plants.dmi'
+7 -7
View File
@@ -25,7 +25,7 @@
/turf/simulated/water_act(volume, temperature, source)
. = ..()
if(volume >= 3)
MakeSlippery()
@@ -37,7 +37,7 @@
assume_air(lowertemp)
qdel(hotspot)
/turf/simulated/proc/MakeSlippery(wet_setting = TURF_WET_WATER) // 1 = Water, 2 = Lube, 3 = Ice, 4 = Permafrost
/turf/simulated/proc/MakeSlippery(wet_setting = TURF_WET_WATER, infinite = FALSE) // 1 = Water, 2 = Lube, 3 = Ice, 4 = Permafrost
if(wet >= wet_setting)
return
wet = wet_setting
@@ -57,11 +57,11 @@
else
wet_overlay = image('icons/effects/water.dmi', src, "wet_static")
overlays += wet_overlay
spawn(rand(790, 820)) // Purely so for visual effect
if(!istype(src, /turf/simulated)) //Because turfs don't get deleted, they change, adapt, transform, evolve and deform. they are one and they are all.
return
MakeDry(wet_setting)
if(!infinite)
spawn(rand(790, 820)) // Purely so for visual effect
if(!istype(src, /turf/simulated)) //Because turfs don't get deleted, they change, adapt, transform, evolve and deform. they are one and they are all.
return
MakeDry(wet_setting)
/turf/simulated/proc/MakeDry(wet_setting = TURF_WET_WATER)
if(wet > wet_setting)
@@ -53,6 +53,11 @@
to_chat(user, "<span class='danger'>You forcefully pry off the planks, destroying them in the process.</span>")
return make_plating()
/turf/simulated/floor/wood/cold
oxygen = 22
nitrogen = 82
temperature = 180
/turf/simulated/floor/grass
name = "grass patch"
icon_state = "grass1"
@@ -173,6 +173,18 @@
nitrogen = 0.01
temperature = TCMB
/turf/simulated/floor/mineral/bananium/lubed/Initialize(mapload)
. = ..()
MakeSlippery(TURF_WET_LUBE, TRUE)
/turf/simulated/floor/mineral/bananium/lubed/pry_tile(obj/item/C, mob/user, silent = FALSE) //I want to get off Mr Honk's Wild Ride
if(ishuman(user))
var/mob/living/carbon/human/H = user
to_chat(H, "<span class='warning'>You lose your footing trying to pry off the tile!</span>")
H.slip("the floor", 0, 5, tilesSlipped = 4, walkSafely = 0, slipAny = 1)
return
//TRANQUILLITE
/turf/simulated/floor/mineral/tranquillite
name = "silent floor"
+23 -3
View File
@@ -43,7 +43,7 @@
name = "beach"
icon = 'icons/misc/beach.dmi'
/turf/simulated/floor/beach/pry_tile(obj/item/C, mob/user, silent = FALSE)
/turf/simulated/floor/beach/pry_tile(obj/item/C, mob/user, silent = FALSE)
return
/turf/simulated/floor/beach/sand
@@ -79,7 +79,7 @@
/turf/simulated/floor/beach/water/Entered(atom/movable/AM, atom/OldLoc)
. = ..()
if(!linkedcontroller)
return
return
if(ismob(AM))
linkedcontroller.mobinpool += AM
@@ -107,6 +107,26 @@
/turf/simulated/floor/noslip/MakeSlippery()
return
/turf/simulated/floor/noslip/lavaland
oxygen = 14
nitrogen = 23
temperature = 300
/turf/simulated/floor/lubed
name = "slippery floor"
icon_state = "floor"
/turf/simulated/floor/lubed/Initialize(mapload)
. = ..()
MakeSlippery(TURF_WET_LUBE, TRUE)
/turf/simulated/floor/lubed/pry_tile(obj/item/C, mob/user, silent = FALSE) //I want to get off Mr Honk's Wild Ride
if(ishuman(user))
var/mob/living/carbon/human/H = user
to_chat(H, "<span class='warning'>You lose your footing trying to pry off the tile!</span>")
H.slip("the floor", 0, 5, tilesSlipped = 4, walkSafely = 0, slipAny = 1)
return
//Clockwork floor: Slowly heals toxin damage on nearby servants.
/turf/simulated/floor/clockwork
name = "clockwork floor"
@@ -124,7 +144,7 @@
new /obj/effect/temp_visual/ratvar/beam(src)
realappearence = new /obj/effect/clockwork/overlay/floor(src)
realappearence.linked = src
/turf/simulated/floor/clockwork/Destroy()
if(uses_overlay && realappearence)
QDEL_NULL(realappearence)
+27 -2
View File
@@ -7,7 +7,7 @@
broken_states = list("damaged1", "damaged2", "damaged3", "damaged4", "damaged5")
burnt_states = list("floorscorched1", "floorscorched2")
var/unfastened = FALSE
var/unfastened = FALSE
footstep_sounds = list(
"human" = list('sound/effects/footstep/plating_human.ogg'),
@@ -185,7 +185,7 @@
/turf/simulated/floor/engine/blob_act()
if(prob(25))
ChangeTurf(baseturf)
/turf/simulated/floor/engine/cult
name = "engraved floor"
icon_state = "cult"
@@ -335,3 +335,28 @@
/turf/simulated/floor/plating/abductor/New()
..()
icon_state = "alienpod[rand(1,9)]"
/turf/simulated/floor/plating/ice
name = "ice sheet"
desc = "A sheet of solid ice. Looks slippery."
icon = 'icons/turf/floors/ice_turfs.dmi'
icon_state = "unsmooth"
oxygen = 22
nitrogen = 82
temperature = 180
baseturf = /turf/simulated/floor/plating/ice
slowdown = TRUE
smooth = SMOOTH_TRUE
canSmoothWith = list(/turf/simulated/floor/plating/ice/smooth, /turf/simulated/floor/plating/ice)
/turf/simulated/floor/plating/ice/Initialize(mapload)
. = ..()
MakeSlippery(TURF_WET_PERMAFROST, TRUE)
/turf/simulated/floor/plating/ice/try_replace_tile(obj/item/stack/tile/T, mob/user, params)
return
/turf/simulated/floor/plating/ice/smooth
icon_state = "smooth"
smooth = SMOOTH_MORE | SMOOTH_BORDER
canSmoothWith = list(/turf/simulated/floor/plating/ice/smooth, /turf/simulated/floor/plating/ice)
@@ -0,0 +1,49 @@
/mob/living/simple_animal/hostile/skeleton
name = "reanimated skeleton"
desc = "A real bonefied skeleton, doesn't seem like it wants to socialize."
icon = 'icons/mob/animal.dmi'
icon_state = "skeleton"
icon_living = "skeleton"
turns_per_move = 5
speak_emote = list("rattles")
emote_see = list("rattles")
a_intent = INTENT_HARM
maxHealth = 40
health = 40
speed = 1
harm_intent_damage = 5
melee_damage_lower = 15
melee_damage_upper = 15
minbodytemp = 0
maxbodytemp = 1500
healable = FALSE //they're skeletons how would bruise packs help them??
attacktext = "slashes"
attack_sound = 'sound/hallucinations/growl1.ogg'
atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0)
unsuitable_atmos_damage = 10
robust_searching = 1
stat_attack = UNCONSCIOUS
gold_core_spawnable = CHEM_MOB_SPAWN_HOSTILE
faction = list("skeleton")
see_in_dark = 8
lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_INVISIBLE
deathmessage = "collapses into a pile of bones!"
del_on_death = TRUE
loot = list(/obj/effect/decal/remains/human)
/mob/living/simple_animal/hostile/skeleton/eskimo
name = "undead eskimo"
desc = "The reanimated remains of some poor traveler."
icon_state = "eskimo"
icon_living = "eskimo"
maxHealth = 55
health = 55
weather_immunities = list("snow")
gold_core_spawnable = CHEM_MOB_SPAWN_INVALID
melee_damage_lower = 17
melee_damage_upper = 20
deathmessage = "collapses into a pile of bones, its gear falling to the floor!"
loot = list(/obj/effect/decal/remains/human,
/obj/item/twohanded/spear,
/obj/item/clothing/shoes/winterboots,
/obj/item/clothing/suit/hooded/wintercoat)
@@ -0,0 +1,7 @@
//lavaland clown planet papers
/obj/item/paper/crumpled/bloody/ruins/lavaland/clown_planet/escape
info = "If you dare not continue down this path of madness, escape can be found through the chute in this room."
/obj/item/paper/crumpled/bloody/ruins/lavaland/clown_planet/hope
info = "Abandon hope, all ye who enter here."
+2
View File
@@ -5,6 +5,8 @@
##BIODOMES
#_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm
#_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_clown_planet.dmm
#_maps/map_files/RandomRuins/LavaRuins/lavaland_biodome_winter.dmm
##RESPAWN
#_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm
Binary file not shown.

Before

Width:  |  Height:  |  Size: 320 KiB

After

Width:  |  Height:  |  Size: 323 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

+2
View File
@@ -1955,6 +1955,7 @@
#include "code\modules\mob\living\simple_animal\hostile\netherworld.dm"
#include "code\modules\mob\living\simple_animal\hostile\pirate.dm"
#include "code\modules\mob\living\simple_animal\hostile\russian.dm"
#include "code\modules\mob\living\simple_animal\hostile\skeleton.dm"
#include "code\modules\mob\living\simple_animal\hostile\spaceworms.dm"
#include "code\modules\mob\living\simple_animal\hostile\statue.dm"
#include "code\modules\mob\living\simple_animal\hostile\syndicate.dm"
@@ -2335,6 +2336,7 @@
#include "code\modules\ruins\ruin_areas.dm"
#include "code\modules\ruins\lavalandruin_code\animal_hospital.dm"
#include "code\modules\ruins\lavalandruin_code\ash_walker_den.dm"
#include "code\modules\ruins\lavalandruin_code\clown_planet.dm"
#include "code\modules\ruins\lavalandruin_code\dead_ratvar.dm"
#include "code\modules\ruins\lavalandruin_code\fountain_hall.dm"
#include "code\modules\ruins\lavalandruin_code\hermit.dm"