Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

the great beach gateway revamp #13122

Closed
wants to merge 18 commits into from
Closed
Show file tree
Hide file tree
Changes from 3 commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
5a95630
the great beach gateway revamp
Darkmight9 Mar 14, 2020
5c72fd5
Merge branch 'master' of https://github.com/ParadiseSS13/Paradise int…
Darkmight9 Mar 14, 2020
6cb4580
updates the host's access to the new deffine access list
Darkmight9 Mar 14, 2020
327ed4f
Merge branch 'master' into revamp_beach_gateway
Darkmight9 Mar 25, 2020
cfd20b5
Merge branch 'master' of https://github.com/ParadiseSS13/Paradise int…
Darkmight9 Mar 25, 2020
76c88b8
Merge branch 'master' of https://github.com/ParadiseSS13/Paradise int…
Darkmight9 Oct 1, 2020
0093b29
Deconflicted and updated!
Darkmight9 Oct 7, 2020
2ff0779
HY
Darkmight9 Oct 7, 2020
ddcd628
Implements Lemon's suggestion about the brass walls and floors
Darkmight9 Oct 7, 2020
6166d09
Merge branch 'master' of https://github.com/ParadiseSS13/Paradise int…
Darkmight9 Oct 16, 2020
4bd03eb
Deconflicts and implements Steel's changes
Darkmight9 Oct 16, 2020
1018a49
Fixes icons and the map, the point of sale had been removed and was i…
Darkmight9 Oct 17, 2020
5a0928e
Merge branch 'master' of https://github.com/ParadiseSS13/Paradise int…
Darkmight9 Oct 20, 2020
c2e572f
Merge branch 'master' of https://github.com/ParadiseSS13/Paradise int…
Darkmight9 Oct 20, 2020
528808f
Gateway now for certain connects to the station and made some minor e…
Darkmight9 Oct 22, 2020
cdfb90c
Merge branch 'master' of https://github.com/ParadiseSS13/Paradise int…
Darkmight9 Oct 22, 2020
8e338f0
Merge branch 'master' of https://github.com/ParadiseSS13/Paradise int…
Darkmight9 Nov 18, 2020
dc5c497
Deconflicts and implements feedback
Darkmight9 Nov 18, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
33,114 changes: 18,134 additions & 14,980 deletions _maps/map_files/RandomZLevels/beach.dmm

Large diffs are not rendered by default.

5 changes: 5 additions & 0 deletions code/game/area/Space Station 13 areas.dm
Expand Up @@ -2174,6 +2174,11 @@ var/list/ghostteleportlocs = list()
requires_power = FALSE
ambientsounds = list('sound/ambience/shore.ogg', 'sound/ambience/seag1.ogg','sound/ambience/seag2.ogg','sound/ambience/seag2.ogg')

/area/awaymission/beach/boundry
Darkmight9 marked this conversation as resolved.
Show resolved Hide resolved

/area/awaymission/beach/offshore
name = "Offshore location"

/area/awaymission/undersea
name = "Undersea"
icon_state = "undersea"
Expand Down
10 changes: 10 additions & 0 deletions code/game/machinery/door_control.dm
Expand Up @@ -124,3 +124,13 @@
icon_state = "doorctrl-p"
else
icon_state = "doorctrl0"

/obj/machinery/door_control/brass
name = "brass door-control"
desc = "A brass remote control-switch for a door."
icon = 'icons/obj/clockwork_objects.dmi'

/obj/machinery/door_control/brass/beach_brass_temple_switch/Initialize()
. = ..()
id = pick(list("brassbeachtempledoor1", "brassbeachtempledoor2", "brassbeachtempledoor3", "brassbeachtempledoor4", "brassbeachtempledoor5", "brassbeachtempledoor6", "brassbeachtempledoor7", "brassbeachtempledoor8",
"brassbeachtempledoor9", "brassbeachtempledoor10", "brassbeachtempledoor11", "brassbeachtempledoor12", "brassbeachtempledoor13", "brassbeachtempledoor14", "brassbeachtempledoor15", "brassbeachtempledoor16"))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A better option of writing this would be to do:

id = "brassbeachtempledoor[rand(1, 16)]"

Cuts down on copy and paste should you need to make adjustments to the list.

10 changes: 10 additions & 0 deletions code/game/machinery/doors/poddoor.dm
Expand Up @@ -124,3 +124,13 @@
icon = 'icons/obj/doors/1x2blast_hor.dmi'
width = 2
dir = EAST

/obj/machinery/door/poddoor/brass
name = "brass blast door"
desc = "A great brass blast door. It looks like it can withstand a lot of punishment."
icon = 'icons/obj/doors/blastdoor_brass.dmi'

/obj/machinery/door/poddoor/brass/beach_brass_temple/Initialize()
. = ..()
id_tag = pick(list("brassbeachtempledoor1", "brassbeachtempledoor2", "brassbeachtempledoor3", "brassbeachtempledoor4", "brassbeachtempledoor5", "brassbeachtempledoor6", "brassbeachtempledoor7", "brassbeachtempledoor8",
"brassbeachtempledoor9", "brassbeachtempledoor10", "brassbeachtempledoor11", "brassbeachtempledoor12", "brassbeachtempledoor13", "brassbeachtempledoor14", "brassbeachtempledoor15", "brassbeachtempledoor16"))
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ditto for what I said about the list in door_control.dm.

10 changes: 8 additions & 2 deletions code/game/machinery/telecomms/presets.dm
Expand Up @@ -30,6 +30,12 @@
toggled = 0
autolinkers = list("e_relay")

/obj/machinery/telecomms/relay/preset/beachresort
id = "Beach Resort"
hide = 1
toggled = 0
autolinkers = list("b_relay")

/obj/machinery/telecomms/relay/preset/centcom
id = "Centcom Relay"
hide = 1
Expand All @@ -44,15 +50,15 @@
/obj/machinery/telecomms/hub/preset
id = "Hub"
network = "tcommsat"
autolinkers = list("hub", "relay", "c_relay", "s_relay", "m_relay", "r_relay", "e_relay", "science", "medical",
autolinkers = list("hub", "relay", "c_relay", "s_relay", "m_relay", "r_relay", "e_relay", "b_relay", "science", "medical",
"supply", "service", "common", "command", "engineering", "security",
"receiverA", "receiverB", "broadcasterA", "broadcasterB")

/obj/machinery/telecomms/hub/preset_cent
id = "CentComm Hub"
network = "tcommsat"
use_power = NO_POWER_USE
autolinkers = list("hub_cent", "c_relay", "s_relay", "m_relay", "r_relay", "e_relay",
autolinkers = list("hub_cent", "c_relay", "s_relay", "m_relay", "r_relay", "e_relay", "b_relay",
"centcomm", "receiverCent", "broadcasterCent")

//Receivers
Expand Down
12 changes: 10 additions & 2 deletions code/game/objects/effects/mapping_helpers.dm
Expand Up @@ -42,6 +42,14 @@
name = "beach sand baseturf editor"
baseturf = /turf/simulated/floor/beach/sand

/obj/effect/baseturf_helper/beach/roughsand
name = "beach sand baseturf editor"
baseturf =/turf/simulated/floor/beach/roughsand

/obj/effect/baseturf_helper/beach/dense_roughsand
name = "beach sand baseturf editor"
baseturf =/turf/simulated/floor/beach/roughsand/dense
Comment on lines +45 to +51
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Spacing

Suggested change
/obj/effect/baseturf_helper/beach/roughsand
name = "beach sand baseturf editor"
baseturf =/turf/simulated/floor/beach/roughsand
/obj/effect/baseturf_helper/beach/dense_roughsand
name = "beach sand baseturf editor"
baseturf =/turf/simulated/floor/beach/roughsand/dense
/obj/effect/baseturf_helper/beach/roughsand
name = "beach sand baseturf editor"
baseturf = /turf/simulated/floor/beach/roughsand
/obj/effect/baseturf_helper/beach/dense_roughsand
name = "beach sand baseturf editor"
baseturf = /turf/simulated/floor/beach/roughsand/dense


/obj/effect/baseturf_helper/beach/water
name = "water baseturf editor"
baseturf = /turf/simulated/floor/beach/water
Expand All @@ -61,7 +69,7 @@

/obj/effect/mapping_helpers/Initialize(mapload)
..()

return late ? INITIALIZE_HINT_LATELOAD : qdel(src) // INITIALIZE_HINT_QDEL <-- Doesn't work

/obj/effect/mapping_helpers/no_lava
Expand All @@ -83,7 +91,7 @@
airlock.unres_sides ^= dir
else
log_world("### MAP WARNING, [src] failed to find an airlock at [AREACOORD(src)]")
..()
..()
/obj/effect/mapping_helpers/no_lava/New()
var/turf/T = get_turf(src)
T.flags |= NO_LAVA_GEN
Expand Down
18 changes: 18 additions & 0 deletions code/game/objects/effects/spawners/lootdrop.dm
Expand Up @@ -402,3 +402,21 @@
/obj/effect/spawner/lootdrop/three_course_meal/New()
loot = list(pick(soups) = 1,pick(salads) = 1,pick(mains) = 1)
. = ..()

/obj/effect/spawner/lootdrop/brass_temple_spawner
name = "brass temple spawner"
lootdoubles = 0
Darkmight9 marked this conversation as resolved.
Show resolved Hide resolved

loot = list(
/obj/item/clockwork/component/geis_capacitor/fallen_armor = 1, //you got lucky in a bad way
/obj/item/clockwork/alloy_shards/large = 1,
/obj/item/clockwork/alloy_shards/pinion_lock = 1,
/obj/item/clockwork/alloy_shards/clockgolem_remains = 1,
/obj/item/stack/tile/brass = 8, //general loot
/obj/item/stack/tile/brass/five =6,
/mob/living/simple_animal/hostile/asteroid/basilisk/watcher/ocular_warden = 6, //your prize is a fight yay!
/obj/structure/clockwork/decorative/obelisk = 4,
/obj/item/stack/tile/brass/twenty =2, //jackpot
/obj/item/storage/toolbox/brass =2,
/obj/item/storage/toolbox/brass/prefilled = 1,
/obj/item/clockwork/weapon/ratvarian_spear = 1)
14 changes: 14 additions & 0 deletions code/game/objects/items/stacks/sheets/sheet_types.dm
Expand Up @@ -170,6 +170,9 @@ var/global/list/datum/stack_recipe/wood_recipes = list(
new /datum/stack_recipe("wood floor tile", /obj/item/stack/tile/wood, 1, 4, 20),
new /datum/stack_recipe("wood table frame", /obj/structure/table_frame/wood, 2, time = 10), \
new /datum/stack_recipe("wooden chair", /obj/structure/chair/wood, 3, time = 10, one_per_turf = 1, on_floor = 1),
new /datum/stack_recipe("beach chair, blue", /obj/structure/chair/beachchair, 3, time = 10, one_per_turf = 1, on_floor = 1),
new /datum/stack_recipe("beach chair, red", /obj/structure/chair/beachchair/red, 3, time = 10, one_per_turf = 1, on_floor = 1),
new /datum/stack_recipe("wooden lounge chair", /obj/structure/bed/wooden_lounge_chair, 5, time = 15, one_per_turf = 1, on_floor = 1),
new /datum/stack_recipe("wooden barricade", /obj/structure/barricade/wooden, 5, time = 50, one_per_turf = 1, on_floor = 1),
new /datum/stack_recipe("bookcase", /obj/structure/bookcase, 5, time = 50, one_per_turf = 1, on_floor = 1),
new /datum/stack_recipe("dresser", /obj/structure/dresser, 30, time = 50, one_per_turf = 1, on_floor = 1),
Expand Down Expand Up @@ -408,6 +411,11 @@ var/global/list/datum/stack_recipe/brass_recipes = list (\
new/datum/stack_recipe/window("fulltile brass window", /obj/structure/window/reinforced/clockwork/fulltile, 2, time = 0, on_floor = TRUE, window_checks = TRUE), \
new/datum/stack_recipe("brass chair", /obj/structure/chair/brass, 1, time = 0, one_per_turf = TRUE, on_floor = TRUE), \
new/datum/stack_recipe("brass table frame", /obj/structure/table_frame/brass, 1, time = 5, one_per_turf = TRUE, on_floor = TRUE), \
new/datum/stack_recipe("prolonging prism", /obj/structure/clockwork/decorative/prolonging_prism, 3, time = 5, one_per_turf = TRUE, on_floor = TRUE), \
new/datum/stack_recipe("mania motor", /obj/structure/clockwork/decorative/mania_motor, 3, time = 5, one_per_turf = TRUE, on_floor = TRUE), \
new/datum/stack_recipe("brass obelisk", /obj/structure/clockwork/decorative/obelisk, 3, time = 5, one_per_turf = TRUE, on_floor = TRUE), \
new/datum/stack_recipe("tinkerers cache", /obj/structure/clockwork/decorative/tinkerers_cache, 3, time = 5, one_per_turf = TRUE, on_floor = TRUE), \
new/datum/stack_recipe("brass relay", /obj/structure/clockwork/decorative/relay, 3, time = 5, one_per_turf = TRUE, on_floor = TRUE), \
)

/obj/item/stack/tile/brass
Expand All @@ -433,6 +441,12 @@ var/global/list/datum/stack_recipe/brass_recipes = list (\
pixel_x = 0
pixel_y = 0

/obj/item/stack/tile/brass/five
amount = 5

/obj/item/stack/tile/brass/twenty
amount = 20

/obj/item/stack/tile/brass/fifty
amount = 50

Expand Down
4 changes: 2 additions & 2 deletions code/game/objects/structures/ladders.dm
Expand Up @@ -177,7 +177,7 @@

/obj/structure/ladder/unbreakable/dive_point/buoy
name = "diving point buoy"
desc = "A buoy marking the location of an underwater dive area."
desc = "A buoy marking the location of an underwater dive area. <span class='notice'>You can pull people and objects along with you</span>" //the notice is because several people didn't know you could do this and I feel it's important people knew
icon = 'icons/misc/beach.dmi'
icon_state = "buoy"
id = "dive"
Expand All @@ -187,7 +187,7 @@

/obj/structure/ladder/unbreakable/dive_point/anchor
name = "diving point anchor"
desc = "An anchor tethered to the buoy at the surface, to keep the dive area marked."
desc = "An anchor tethered to the buoy at the surface, to keep the dive area marked. <span class='notice'>You can pull people and objects along with you</span>"
icon = 'icons/misc/beach.dmi'
icon_state = "anchor"
id = "dive"
Expand Down
14 changes: 14 additions & 0 deletions code/game/objects/structures/stool_bed_chair_nest/bed.dm
Expand Up @@ -31,6 +31,20 @@
icon_state = "psychbed"
buildstackamount = 5

/obj/structure/bed/wooden_lounge_chair
name = "wooden lounge chair"
desc = "Time to lay back and soak in the solar rays."
icon_state = "wooden_lounge_chair"
can_buckle = TRUE
anchored = TRUE
buckle_lying = TRUE
resistance_flags = FLAMMABLE
max_integrity = 100
integrity_failure = 30
buildstacktype = /obj/item/stack/sheet/wood
buildstackamount = 5


/obj/structure/bed/alien
name = "resting contraption"
desc = "This looks similar to contraptions from Earth. Could aliens be stealing our technology?"
Expand Down
13 changes: 13 additions & 0 deletions code/game/objects/structures/stool_bed_chair_nest/chairs.dm
Expand Up @@ -165,6 +165,19 @@
icon_state = "wooden_chair_wings"
item_chair = /obj/item/chair/wood/wings

/obj/structure/chair/beachchair
name = "beach chair"
desc = "Time to take a load off and relax."
icon_state = "beach_chair"
resistance_flags = FLAMMABLE
max_integrity = 50
buildstackamount = 3
buildstacktype = /obj/item/stack/sheet/wood
item_chair = null

/obj/structure/chair/beachchair/red
icon_state = "beach_chair_red"

/obj/structure/chair/comfy
name = "comfy chair"
desc = "It looks comfy."
Expand Down
36 changes: 33 additions & 3 deletions code/game/turfs/simulated/floor/misc_floor.dm
Expand Up @@ -42,14 +42,43 @@
/turf/simulated/floor/beach
name = "beach"
icon = 'icons/misc/beach.dmi'
var/water_overlay_image = null
Darkmight9 marked this conversation as resolved.
Show resolved Hide resolved

/turf/simulated/floor/beach/pry_tile(obj/item/C, mob/user, silent = FALSE)
/turf/simulated/floor/beach/crowbar_act()
return

/turf/simulated/floor/beach/sand
name = "sand"
icon_state = "sand"

/turf/simulated/floor/beach/roughsand
name = "Sand"
icon_state = "desert"

/turf/simulated/floor/beach/roughsand/dense //made simulated versions to fix lighting issues
density = 1
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
density = 1
density = TRUE


/turf/simulated/floor/beach/roughsand/New() //a simulated version of the unsimulated beach sand
icon_state = pick("desert", "desert0", "desert1", "desert2", "desert3", "desert4")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can use the same trick here you did with the IDs of the temple doors. You'll have to make the base icon "desert0" instead of "desert" though. Or start at 1 and go to 6. You get the idea.

Suggested change
icon_state = pick("desert", "desert0", "desert1", "desert2", "desert3", "desert4")
icon_state = "desert[rand(0, 5]"

..()

/turf/simulated/floor/beach/roughcoastline/New()
..()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
..()
. = ..()

if(water_overlay_image)
var/image/overlay_image = image('icons/misc/beach.dmi', icon_state = water_overlay_image, layer = ABOVE_MOB_LAYER)
overlay_image.plane = GAME_PLANE
overlays += overlay_image
Darkmight9 marked this conversation as resolved.
Show resolved Hide resolved

/turf/simulated/floor/beach/roughcoastline
name = "Coastline"
//icon = 'icons/misc/beach2.dmi'
//icon_state = "sandwater"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a reason these are commented out?

icon_state = "beach"
water_overlay_image = "water_coast"

/turf/simulated/floor/beach/roughcoastline/dense //for boundary "walls"
density = 1
Darkmight9 marked this conversation as resolved.
Show resolved Hide resolved

/turf/simulated/floor/beach/coastline
name = "coastline"
icon = 'icons/misc/beach2.dmi'
Expand Down Expand Up @@ -131,10 +160,11 @@
/turf/simulated/floor/clockwork
name = "clockwork floor"
desc = "Tightly-pressed brass tiles. They emit minute vibration."
icon_state = "plating"
icon = 'icons/obj/clockwork_objects.dmi'
icon_state = "clockwork_floor"
baseturf = /turf/simulated/floor/clockwork
var/dropped_brass
var/uses_overlay = TRUE
var/uses_overlay = FALSE //disabled the overlay cause it doesn't remove itself
var/obj/effect/clockwork/overlay/floor/realappearence

/turf/simulated/floor/clockwork/Initialize(mapload)
Expand Down
30 changes: 7 additions & 23 deletions code/game/turfs/simulated/walls_misc.dm
Expand Up @@ -55,6 +55,8 @@
/turf/simulated/wall/clockwork
name = "clockwork wall"
desc = "A huge chunk of warm metal. The clanging of machinery emanates from within."
icon = 'icons/obj/clockwork_objects.dmi'
icon_state = "clockwork_wall"
explosion_block = 2
hardness = 10
slicing_duration = 80
Expand All @@ -63,8 +65,8 @@
girder_type = /obj/structure/clockwork/wall_gear
baseturf = /turf/simulated/floor/clockwork/reebe
var/heated
var/obj/effect/clockwork/overlay/wall/realappearance

//var/obj/effect/clockwork/overlay/wall/realappearance //disabled the fancy build overlay because I can't figure out how to get it to go away when deconstructed
Darkmight9 marked this conversation as resolved.
Show resolved Hide resolved
/*
/turf/simulated/wall/clockwork/Initialize()
. = ..()
new /obj/effect/temp_visual/ratvar/wall(src)
Expand All @@ -78,7 +80,7 @@
realappearance = null

return ..()

*/
/turf/simulated/wall/clockwork/ReplaceWithLattice()
..()
for(var/obj/structure/lattice/L in src)
Expand All @@ -92,24 +94,6 @@
animate(src, color = previouscolor, time = 8)
addtimer(CALLBACK(src, /atom/proc/update_atom_colour), 8)

/turf/simulated/wall/clockwork/dismantle_wall(devastated=0, explode=0)
marlyn-x86 marked this conversation as resolved.
Show resolved Hide resolved
if(devastated)
devastate_wall()
ChangeTurf(baseturf)
else
playsound(src, 'sound/items/welder.ogg', 100, 1)
var/newgirder = break_wall()
if(newgirder) //maybe we want a gear!
transfer_fingerprints_to(newgirder)
ChangeTurf(baseturf)

for(var/obj/O in src) //Eject contents!
if(istype(O, /obj/structure/sign/poster))
var/obj/structure/sign/poster/P = O
P.roll_and_drop(src)
else
O.forceMove(src)

/turf/simulated/wall/clockwork/devastate_wall()
for(var/i in 1 to 2)
new/obj/item/clockwork/alloy_shards/large(src)
Expand Down Expand Up @@ -139,11 +123,11 @@
heated = TRUE
hardness = -100 //Lower numbers are tougher, so this makes the wall essentially impervious to smashing
slicing_duration = 150
animate(realappearance, color = "#FFC3C3", time = 5)
animate(color = "#FFC3C3", time = 5)
else
name = initial(name)
visible_message("<span class='notice'>[src] cools down.</span>")
heated = FALSE
hardness = initial(hardness)
slicing_duration = initial(slicing_duration)
animate(realappearance, color = initial(realappearance.color), time = 25)
animate(color = initial(color), time = 25)