New redgate Islands map

Added a new redgate islands map. This consists of two Z-levels: An ocean with a few islands to visit, many with vore mobs on them. An underwater Z-level with lots of things to find hidden around the ocean floor, a little more sparse on vore mobs.

Added a new underwater turf. Standing on this turf feeds you CO2 instead of air, suffocating you. It is a subset of water turfs, and therefore interacts with aquatic, which also allows you to breathe on these turfs. This does mean that you can use the "dive" ability of aquatic under the water too, but it can be treated as though you are swimming up above the sea floor.

Added a "diving" subset of the ocean turf, which allows you to dive down to the turf beneath it, or to swim up from below. Uses normal move up/down verbs.

Added a bunch of underwater flora.

Added a collapsed ships mast prop.

Added a new variation of Fake_Sun that applies a new underwater weather effect and has only one option for the colour and brightness.

Added a new "vorny" variation of the great white carp. This one is very hard to escape from and digests quickly, but is stunned if you manage to do so to give you a chance to flee.

Added a new water resistant and friendly hiveless hivebot called Harry.

Added a couple of creative commons 0 sound effects for the ocean and underwater areas.
This commit is contained in:
SatinIsle
2023-08-30 14:51:00 +01:00
parent b7ae14e27a
commit ee1baecdba
24 changed files with 44565 additions and 8 deletions
@@ -640,3 +640,48 @@
/obj/structure/flora/sif/frostbelle/get_harvestable_desc()
return "<span class='notice'>\The [src] seems to be budding.</span>"
//Start of underwater plants
/obj/structure/flora/underwater
name = "underwater plant"
desc = "A plant that thrives deep under water."
icon = 'icons/obj/flora/underwaterflora.dmi'
icon_state = "plant-1"
/obj/structure/flora/underwater/plant1
icon_state = "plant-1"
/obj/structure/flora/underwater/plant2
icon_state = "plant-2"
/obj/structure/flora/underwater/plant3
icon_state = "plant-3"
/obj/structure/flora/underwater/plant4
icon_state = "plant-4"
/obj/structure/flora/underwater/plant5
icon_state = "plant-5"
/obj/structure/flora/underwater/seaweed1
icon_state = "seaweed-1"
/obj/structure/flora/underwater/seaweed2
icon_state = "seaweed-2"
/obj/structure/flora/underwater/seaweed3
icon_state = "seaweed-3"
/obj/structure/flora/underwater/grass1
icon_state = "grass-1"
/obj/structure/flora/underwater/grass2
icon_state = "grass-2"
/obj/structure/flora/underwater/grass3
icon_state = "grass-3"
/obj/structure/flora/underwater/grass4
icon_state = "grass-4"
@@ -21,6 +21,15 @@
/obj/structure/prop/statue/statue5
icon_state = "artwork_statue_5"
//sunken ship mast
/obj/structure/prop/statue/sunkensail
name = "sail mast"
desc = "A long since collapsed mast with a sail draped over it."
icon = 'icons/obj/props/decor64x64.dmi'
icon_state = "sunkensail"
density = FALSE
//TGMC Ship Mast
/obj/structure/prop/statue/stump_plaque
+96
View File
@@ -0,0 +1,96 @@
/turf/simulated/floor/water/underwater
name = "sea floor"
desc = "It's the bottom of the sea, there's water all over the place!"
icon = 'icons/turf/outdoors.dmi'
icon_state = "seafloor" // So it shows up in the map editor as water.
water_state = "seafloor"
edge_blending_priority = -1
movement_cost = 4
can_be_plated = FALSE
outdoors = OUTDOORS_YES
flags = TURF_ACID_IMMUNE
can_dirty = FALSE // It's water
depth = 10 // Higher numbers indicates deeper water, 10 is unused right now, but may be useful for adding effects in the future.
reagent_type = "water"
/turf/simulated/floor/water/underwater/return_air_for_internal_lifeform(var/mob/living/L)
if(L.can_breathe_water()) // For squid.
var/datum/gas_mixture/water_breath = new()
var/datum/gas_mixture/above_air = return_air()
var/amount = 300
water_breath.adjust_gas("oxygen", amount) // Assuming water breathes just extract the oxygen directly from the water.
water_breath.temperature = above_air.temperature
return water_breath
else
var/gasid = "carbon_dioxide"
if(ishuman(L))
var/mob/living/carbon/human/H = L
if(H.species && H.species.exhale_type)
gasid = H.species.exhale_type
var/datum/gas_mixture/water_breath = new()
var/datum/gas_mixture/above_air = return_air()
water_breath.adjust_gas(gasid, BREATH_MOLES) // They have no oxygen, but non-zero moles and temp
water_breath.temperature = above_air.temperature
return water_breath
/turf/simulated/floor/water/underwater/Entered(atom/movable/AM, atom/oldloc)
if(istype(AM, /mob/living))
var/mob/living/L = AM
L.update_water()
if(L.check_submerged() <= 0)
return
if(!istype(oldloc, /turf/simulated/floor/water/underwater))
to_chat(L, "<span class='warning'>You get drenched in water from entering \the [src]!</span>")
AM.water_act(5)
..()
/turf/simulated/floor/water/underwater/Exited(atom/movable/AM, atom/newloc)
if(istype(AM, /mob/living))
var/mob/living/L = AM
L.update_water()
if(L.check_submerged() <= 0)
return
if(!istype(newloc, /turf/simulated/floor/water/underwater))
to_chat(L, "<span class='warning'>You climb out of \the [src].</span>")
..()
/turf/simulated/floor/water/deep/ocean/diving
/turf/simulated/floor/water/deep/ocean/diving/CanZPass(atom, direction)
return 1
//Variations of underwater icons
/turf/simulated/floor/water/underwater/cult
icon = 'icons/turf/flooring/cult.dmi'
icon_state = "cult" // So it shows up in the map editor as water.
water_icon = 'icons/turf/flooring/cult.dmi'
water_state = "cult"
/turf/simulated/floor/water/underwater/ruins
icon = 'maps/atoll/icons/turfs/marble.dmi'
icon_state = "1" // So it shows up in the map editor as water.
water_icon = 'maps/atoll/icons/turfs/marble.dmi'
water_state = "1"
/turf/simulated/floor/water/underwater/sand
icon = 'icons/misc/beach.dmi'
icon_state = "sand" // So it shows up in the map editor as water.
water_icon = 'icons/misc/beach.dmi'
water_state = "sand"
/turf/simulated/floor/water/underwater/wood
icon = 'icons/turf/flooring/wood_vr.dmi'
icon_state = "wood" // So it shows up in the map editor as water.
water_icon = 'icons/turf/flooring/wood_vr.dmi'
water_state = "wood"
/turf/simulated/floor/water/underwater/woodbroken
icon = 'icons/turf/flooring/wood_vr.dmi'
icon_state = "wood-broken0" // So it shows up in the map editor as water.
water_icon = 'icons/turf/flooring/wood_vr.dmi'
water_state = "wood-broken0"