Skip to content

Commit

Permalink
Remap: Beach (#585)
Browse files Browse the repository at this point in the history
<!-- Пишите **НИЖЕ** заголовков и **ВЫШЕ** комментариев, иначе что то
может пойти не так. -->
<!-- Вы можете прочитать Contributing.MD, если хотите узнать больше. -->

## Что этот PR делает
Порт ремапа пляжа с ТГ -
tgstation/tgstation#78568
По большей части он полноценный, за исключением следующих вещей:
Рыбалка и принадлежности для неё.
Пара мелочей на которые в целом похуй.

<!-- Вкратце опишите изменения, которые вносите. -->
<!-- Опишите **все** изменения, так как противное может сказаться на
рассмотрении этого PR'а! -->
<!-- Если вы исправляете Issue, добавьте "Fixes #1234" (где 1234 - номер
Issue) где-нибудь в описании PR'а. Это автоматически закроет Issue после
принятия PR'а. -->

## Почему это хорошо для игры
Пляж становится чуть более интересным и красивым.

<!-- Опишите, почему, по вашему, следует добавить эти изменения в игру.
-->

## Изображения изменений
![2023-10-27 12 34
06](https://github.com/ss220club/Paradise-SS220/assets/69762909/8d4e87f5-391e-4207-85d8-fe9300e1f18a)

<!-- Если вы не меняли карту или спрайты, можете опустить эту секцию.
Если хотите, можете вставить видео. -->

## Тестирование
В процессе, но вроде всё ок.

<!-- Как вы тестировали свой PR, если делали это вовсе? -->

## Changelog

:cl:
add: Если вам не повезло, и вы мало того что гейтер, так вам ещё и выпал
пляж, не расстраивайтесь, он теперь получше.
/:cl:

<!-- Оба :cl:'а должны быть на месте, что-бы чейнджлог работал! Вы
можете написать свой ник справа от первого :cl:, если хотите. Иначе
будет использован ваш ник на ГитХабе. -->
<!-- Вы можете использовать несколько записей с одинаковым префиксом
(Они используются только для иконки в игре) и удалить ненужные. Помните,
что чейнджлог должен быть понятен обычным игроком. -->
<!-- Если чейнджлог не влияет на игроков(например, это рефактор), вы
можете исключить всю секцию. -->
  • Loading branch information
AyIong authored Oct 27, 2023
1 parent 59f4ae4 commit 625d8ea
Show file tree
Hide file tree
Showing 29 changed files with 24,285 additions and 3,448 deletions.
27,303 changes: 23,863 additions & 3,440 deletions _maps/map_files220/RandomZLevels/beach.dmm

Large diffs are not rendered by default.

27 changes: 27 additions & 0 deletions modular_ss220/aesthetics/decals/code/decals.dm
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,16 @@
/obj/effect/turf_decal/siding/wood/end
icon_state = "siding_wood_end"

/obj/effect/turf_decal/siding/wood/alternative
icon_state = "siding_wood_line"
color = "#5d341f"

/obj/effect/turf_decal/siding/wood/alternative/corner
icon_state = "siding_wood_corner"

/obj/effect/turf_decal/siding/wood/alternative/end
icon_state = "siding_wood_end"

/obj/effect/turf_decal/siding/white
color = "#BCBCBC"

Expand All @@ -31,6 +41,15 @@
/obj/effect/turf_decal/siding/red/end
icon_state = "siding_end"

/obj/effect/turf_decal/siding/dark_red
color = "#B11111"

/obj/effect/turf_decal/siding/dark_red/corner
icon_state = "siding_corner"

/obj/effect/turf_decal/siding/dark_red/end
icon_state = "siding_end"

/obj/effect/turf_decal/siding/green
color = "#9FED58"

Expand Down Expand Up @@ -249,3 +268,11 @@ TILE_DECAL_SUBTYPE_HELPER(/obj/effect/turf_decal/tile/neutral)
icon_state = "dust"
base_icon_state = "dust"
mouse_opacity = FALSE

/* Fake Lattice */
/obj/effect/decal/fakelattice
name = "lattice"
desc = "A lightweight support lattice."
icon = 'icons/obj/smooth_structures/lattice.dmi'
icon_state = "lattice-255"
density = TRUE
Binary file modified modular_ss220/aesthetics/decals/icons/siding.dmi
Binary file not shown.
Binary file modified modular_ss220/aesthetics/floors/icons/floors.dmi
Binary file not shown.
93 changes: 93 additions & 0 deletions modular_ss220/aesthetics/sheets/code/sheets.dm
Original file line number Diff line number Diff line change
@@ -1,2 +1,95 @@
/obj/item/bedsheet
icon = 'modular_ss220/aesthetics/sheets/icons/sheets.dmi'

/obj/item/bedsheet/double
icon_state = "double_sheetwhite"

/obj/item/bedsheet/blue/double
icon_state = "double_sheetblue"

/obj/item/bedsheet/green/double
icon_state = "double_sheetgreen"

/obj/item/bedsheet/grey/double
icon_state = "double_sheetgrey"

/obj/item/bedsheet/orange/double
icon_state = "double_sheetorange"

/obj/item/bedsheet/purple/double
icon_state = "double_sheetpurple"

/obj/item/bedsheet/patriot/double
icon_state = "double_sheetUSA"

/obj/item/bedsheet/rainbow/double
icon_state = "double_sheetrainbow"

/obj/item/bedsheet/red/double
icon_state = "double_sheetred"

/obj/item/bedsheet/yellow/double
icon_state = "double_sheetyellow"

/obj/item/bedsheet/mime/double
icon_state = "double_sheetmime"

/obj/item/bedsheet/clown/double
icon_state = "double_sheetclown"

/obj/item/bedsheet/captain/double
icon_state = "double_sheetcaptain"

/obj/item/bedsheet/rd/double
icon_state = "double_sheetrd"

/obj/item/bedsheet/medical/double
icon_state = "double_sheetmedical"

/obj/item/bedsheet/cmo/double
icon_state = "double_sheetcmo"

/obj/item/bedsheet/hos/double
icon_state = "double_sheethos"

/obj/item/bedsheet/hop/double
icon_state = "double_sheethop"

/obj/item/bedsheet/ce/double
icon_state = "double_sheetce"

/obj/item/bedsheet/qm/double
icon_state = "double_sheetqm"

/obj/item/bedsheet/chaplain/double
icon_state = "double_sheetchap"

/obj/item/bedsheet/brown/double
icon_state = "double_sheetbrown"

/obj/item/bedsheet/black/double
icon_state = "double_sheetblack"

/obj/item/bedsheet/centcom/double
icon_state = "double_sheetcentcom"

/obj/item/bedsheet/syndie/double
icon_state = "double_sheetsyndie"

/obj/item/bedsheet/cult/double
icon_state = "double_sheetcult"

/obj/item/bedsheet/wiz/double
icon_state = "double_sheetwiz"

/obj/item/bedsheet/rev/double
icon_state = "double_sheetrev"

/obj/item/bedsheet/nanotrasen/double
icon_state = "double_sheetNT"

/obj/item/bedsheet/ian/double
icon_state = "double_sheetian"

/obj/item/bedsheet/cosmos/double
icon_state = "double_sheetcosmos"
Binary file modified modular_ss220/aesthetics/sheets/icons/sheets.dmi
Binary file not shown.
12 changes: 12 additions & 0 deletions modular_ss220/maps220/code/directions.dm
Original file line number Diff line number Diff line change
Expand Up @@ -673,6 +673,18 @@
dir = 8

/* Posters */
/obj/structure/sign/poster/random/south
pixel_y = -32

/obj/structure/sign/poster/random/north
pixel_y = 32

/obj/structure/sign/poster/random/west
pixel_x = -32

/obj/structure/sign/poster/random/east
pixel_x = 32

/obj/structure/sign/poster/contraband/random/south
pixel_y = -32

Expand Down
16 changes: 16 additions & 0 deletions modular_ss220/maps220/code/effects.dm
Original file line number Diff line number Diff line change
Expand Up @@ -60,3 +60,19 @@
icon_state = "sol_logo1"
layer = TURF_LAYER
desc = "Glory to humanity!"

/* Beach */
/obj/item/toy/seashell
name = "ракушка"
desc = "Пусть у вас всегда будет ракушка в кармане и песок в ботинках. Что бы это ни значило."
icon = 'modular_ss220/maps220/icons/decals.dmi'
icon_state = "shell1"
var/static/list/possible_colors = list("" = 2, COLOR_PURPLE_GRAY = 1, COLOR_OLIVE = 1, COLOR_PALE_BLUE_GRAY = 1, COLOR_RED_GRAY = 1)

/obj/item/toy/seashell/Initialize(mapload)
. = ..()
pixel_x = rand(-5, 5)
pixel_y = rand(-5, 5)
icon_state = "shell[rand(1,3)]"
color = pickweight(possible_colors)
setDir(pick(GLOB.cardinal))
50 changes: 50 additions & 0 deletions modular_ss220/maps220/code/floors.dm
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,56 @@
if(isliving(mover) || mover.density)
return FALSE

/turf/simulated/floor/beach/away/sand_alternative
icon = 'modular_ss220/maps220/icons/floors.dmi'
icon_state = "sand"
base_icon_state = "sand"
mouse_opacity = MOUSE_OPACITY_ICON
water_overlay_image = null
baseturf = /turf/simulated/floor/beach/away/sand_alternative

/turf/simulated/floor/beach/away/sand_alternative/Initialize(mapload)
. = ..()
if(prob(15))
icon_state = "sand[rand(1,4)]"

/turf/simulated/floor/beach/away/sand_alternative/remove_plating(mob/user)
return

/turf/simulated/floor/beach/away/sand_alternative/crowbar_act(mob/user, obj/item/I)
return

/turf/simulated/floor/beach/away/sand_alternative/try_replace_tile(obj/item/stack/tile/T, mob/user, params)
return

/turf/simulated/floor/beach/away/coastline/alternative
icon = 'modular_ss220/maps220/icons/floors.dmi'
icon_state = "beach"
base_icon_state = "beach"
water_overlay_image = null
baseturf = /turf/simulated/floor/beach/away/coastline/alternative

/turf/simulated/floor/beach/away/coastline/beachcorner/alternative
icon = 'modular_ss220/maps220/icons/floors.dmi'
icon_state = "beach-corner"
base_icon_state = "beach-corner"
water_overlay_image = null
baseturf = /turf/simulated/floor/beach/away/coastline/beachcorner/alternative

/turf/simulated/floor/beach/away/water/drop_no_overlay
name = "Water"
icon = 'icons/turf/floors/seadrop.dmi'
icon_state = "seadrop-0"
base_icon_state = "seadrop"
water_overlay_image = null
smoothing_flags = SMOOTH_BITMASK
canSmoothWith = list(SMOOTH_GROUP_BEACH_WATER)
baseturf = /turf/simulated/floor/beach/away/water/drop_no_overlay

/turf/simulated/floor/beach/away/water/drop_no_overlay/dense
density = TRUE
baseturf = /turf/simulated/floor/beach/away/water/drop_no_overlay/dense

/* Lavaland */
/turf/simulated/floor/plasteel/lavaland_air
name = "floor"
Expand Down
1 change: 0 additions & 1 deletion modular_ss220/maps220/code/objects.dm
Original file line number Diff line number Diff line change
Expand Up @@ -301,4 +301,3 @@
flags = NODROP
to_chat(user, span_danger("[name] туго обвивается вокруг твоего пальца!"))
SEND_SOUND (user, sound('modular_ss220/aesthetics_sounds/sound/creepy/demon2.ogg'))

Binary file modified modular_ss220/maps220/icons/decals.dmi
Binary file not shown.
Binary file modified modular_ss220/maps220/icons/floors.dmi
Binary file not shown.
11 changes: 8 additions & 3 deletions modular_ss220/objects/_objects.dm
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,20 @@
// Maybe it would be better, if i didn't make it modular, because i can't change order in the recipe list :catDespair:
/datum/modpack/objects/initialize()
GLOB.metal_recipes += list(
new /datum/stack_recipe("metal platform", /obj/structure/platform, 4, time = 30,one_per_turf = TRUE, on_floor = TRUE),
new /datum/stack_recipe("metal platform", /obj/structure/platform, 4, time = 3 SECONDS,one_per_turf = TRUE, on_floor = TRUE),
new /datum/stack_recipe("metal platform corner", /obj/structure/platform/corner, 2, time = 20, one_per_turf = TRUE, on_floor = TRUE)
)

GLOB.plasteel_recipes += list(
new /datum/stack_recipe("reinforced plasteel platform", /obj/structure/platform/reinforced, 4, time = 40,one_per_turf = TRUE, on_floor = TRUE),
new /datum/stack_recipe("reinforced plasteel platform", /obj/structure/platform/reinforced, 4, time = 4 SECONDS,one_per_turf = TRUE, on_floor = TRUE),
new /datum/stack_recipe("reinforced plasteel platform corner", /obj/structure/platform/reinforced/corner, 2, time = 30,one_per_turf = TRUE, on_floor = TRUE)
)

GLOB.wood_recipes += list(
new /datum/stack_recipe("tribune", /obj/structure/tribune, 5, time = 50, one_per_turf = TRUE, on_floor = TRUE)
new /datum/stack_recipe("tribune", /obj/structure/tribune, 5, time = 5 SECONDS, one_per_turf = TRUE, on_floor = TRUE)
)

GLOB.plastic_recipes += list(
new /datum/stack_recipe("пластиковый стул", /obj/structure/chair/plastic, time = 2 SECONDS, one_per_turf = TRUE, on_floor = TRUE),
)

4 changes: 4 additions & 0 deletions modular_ss220/objects/_objects.dme
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,13 @@

#include "code/closets.dm"
#include "code/mattress.dm"
#include "code/big_bed.dm"
#include "code/miscellaneous.dm"
#include "code/officetoys.dm"
#include "code/papershredder.dm"
#include "code/platform.dm"
#include "code/tribune.dm"
#include "code/weapons.dm"
#include "code/beach_umbrella.dm"
#include "code/billboard.dm"
#include "code/plastic_chair.dm"
23 changes: 23 additions & 0 deletions modular_ss220/objects/code/beach_umbrella.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
/obj/structure/fluff/beach_umbrella
name = "пляжный зонтик"
desc = "Зонтик, предназначенный для защиты от солнца на пляже."
icon = 'modular_ss220/objects/icons/umbrella.dmi'
icon_state = "brella"
density = FALSE
anchored = TRUE
deconstructible = FALSE

/obj/structure/fluff/beach_umbrella/security
icon_state = "hos_brella"

/obj/structure/fluff/beach_umbrella/science
icon_state = "rd_brella"

/obj/structure/fluff/beach_umbrella/engine
icon_state = "ce_brella"

/obj/structure/fluff/beach_umbrella/cap
icon_state = "cap_brella"

/obj/structure/fluff/beach_umbrella/syndi
icon_state = "syndi_brella"
20 changes: 20 additions & 0 deletions modular_ss220/objects/code/big_bed.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
// Double Beds, for luxurious sleeping, i.e. the captain and maybe heads- if people use this for ERP, send them to skyrat
/obj/structure/bed/double
name = "double bed"
desc = "A luxurious double bed, for those too important for small dreams."
icon = 'modular_ss220/objects/icons/bed.dmi'
icon_state = "bed_double"
buildstackamount = 4
max_buckled_mobs = 2
/// The mob who buckled to this bed second, to avoid other mobs getting pixel-shifted before he unbuckles.
var/mob/living/goldilocks

/obj/structure/bed/double/post_buckle_mob(mob/living/target)
if(buckled_mobs.len > 1 && !goldilocks) // Push the second buckled mob a bit higher from the normal lying position
target.pixel_y = target.pixel_y + 12
goldilocks = target

/obj/structure/bed/double/post_unbuckle_mob(mob/living/target)
target.pixel_y = target.pixel_y + target.get_standard_pixel_y_offset()
if(target == goldilocks)
goldilocks = null
Loading

0 comments on commit 625d8ea

Please sign in to comment.