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

feat: Photocopier blanks and TGUI port #117

Closed
wants to merge 22 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4,569 changes: 4,569 additions & 0 deletions _maps/map_files/RandomRuins/SpaceRuins/mechtransport_new.dmm

Large diffs are not rendered by default.

19,154 changes: 19,154 additions & 0 deletions _maps/map_files/RandomRuins/SpaceRuins/space_wildwest.dmm

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions config/example/config.toml
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ ipc_screens = [
# Enable/disable the database on a whole
sql_enabled = false
# SQL version. If this is a mismatch, round start will be delayed
sql_version = 502204
sql_version = 502203
# SQL server address. Can be an IP or DNS name
sql_address = "127.0.0.1"
# SQL server port
Expand Down Expand Up @@ -622,8 +622,8 @@ active_space_ruins = [
"_maps/map_files/RandomRuins/SpaceRuins/wizardcrash.dmm",
"_maps/map_files/RandomRuins/SpaceRuins/voyager.dmm",
"_maps/map_files/RandomRuins/SpaceRuins/wreckedcargoship.dmm",
"_maps/map_files220/RandomRuins/SpaceRuins/space_wildwest.dmm",
"_maps/map_files220/RandomRuins/SpaceRuins/mechtransport_new.dmm",
"_maps/map_files/RandomRuins/SpaceRuins/space_wildwest.dmm",
"_maps/map_files/RandomRuins/SpaceRuins/mechtransport_new.dmm",

### The following ruins are based from past pre-spawned Zlevel content ###
"_maps/map_files/RandomRuins/SpaceRuins/abandonedtele.dmm",
Expand Down
10 changes: 3 additions & 7 deletions modular_ss220/_maps220/_maps220.dme
Original file line number Diff line number Diff line change
@@ -1,11 +1,7 @@
#include "_maps220.dm"

#include "code/Areas/station.dm"
#include "code/Areas/away.dm"
#include "code/Station/cyberiad.dm"
#include "code/RandomRuins/lavaland_ruins.dm"
#include "code/RandomRuins/space_ruins.dm"
#include "code/Station/cyberiad.dm"
#include "code/mobs.dm"
#include "code/spawners.dm"
#include "code/helpers.dm"
#include "code/walls.dm"
#include "code/Areas/areas.dm"
#include "code/Mobs/mobs.dm"
31 changes: 31 additions & 0 deletions modular_ss220/_maps220/code/Areas/areas.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
/area/awaymission/wwspace
name = "Wild West"
report_alerts = FALSE
icon_state = "away"
requires_power = FALSE
dynamic_lighting = DYNAMIC_LIGHTING_FORCED

/area/awaymission/wwspace/wwmines
name = "\improper Wild West Mines"
icon_state = "awaycontent1"

/area/awaymission/wwspace/wwvaultdoors
name = "\improper Wild West Vault Doors"
icon_state = "awaycontent2"

/area/awaymission/wwspace/wwrefine
name = "\improper Wild West Refinery"
icon_state = "awaycontent3"

/area/awaymission/wwspace/wwvault
name = "\improper Wild West Vault"
icon_state = "awaycontent3"

/area/ruin/space/unpowered/unpowered_structures
always_unpowered = TRUE
report_alerts = FALSE

/area/ruin/space/powered/requires_power_space
requires_power = TRUE
report_alerts = FALSE

136 changes: 136 additions & 0 deletions modular_ss220/_maps220/code/Mobs/mobs.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,136 @@
//Scavengers
/mob/living/simple_animal/hostile/scavengers
name = "Scavenger"
desc = "One of the many random looters or bandits of the frontiers."
icon = 'modular_ss220/_maps220/icons/simple_human.dmi'
icon_state = "scav"
icon_living = "scav"
icon_dead = "scavdead"
mob_biotypes = MOB_ORGANIC | MOB_HUMANOID
sentience_type = SENTIENCE_OTHER
speak_chance = 0
turns_per_move = 5
speed = 0
stat_attack = UNCONSCIOUS
robust_searching = 1
maxHealth = 75
health = 75
harm_intent_damage = 8
melee_damage_lower = 10
melee_damage_upper = 10
attacktext = "punches"
attack_sound = 'sound/weapons/punch1.ogg'
a_intent = INTENT_HARM
unsuitable_atmos_damage = 10
faction = list("scavengers")
check_friendly_fire = TRUE
status_flags = CANPUSH
del_on_death = TRUE
footstep_type = FOOTSTEP_MOB_SHOE

/mob/living/simple_animal/hostile/scavengers/meele
name = "Scrapper Scavenger"
desc = "One of the many random looters or bandits of the frontiers. This one is carrying a pipe."
icon_state = "scavmeelepipe"
icon_living = "scavmeelepipe"
icon_dead = "scavdead"
maxHealth = 90
health = 90
harm_intent_damage = 8
melee_damage_lower = 15
melee_damage_upper = 15
rapid_melee = 2
attack_sound = 'sound/weapons/genhit1.ogg'
attacktext = "bashing"

/mob/living/simple_animal/hostile/scavengers/meele/crusher
name = "Heavy Scavenger"
desc = "One of the many random looters or bandits of the frontiers. This one is carrying a KC."
icon_state = "scavmeelecrush"
icon_living = "scavmeelecrush"
icon_dead = "scavdead"
maxHealth = 100
health = 100
rapid_melee = 0
harm_intent_damage = 8
melee_damage_lower = 20
melee_damage_upper = 20
attack_sound = 'sound/weapons/bladeslice.ogg'
attacktext = "smashes"

/mob/living/simple_animal/hostile/scavengers/meele/axe
name = "Shipbreaker Scavenger"
desc = "A shipbreaker scavenger. This one is carrying a axe."
icon_state = "scavmeeleaxe"
icon_living = "scavmeeleaxe"
icon_dead = "scavdead"
maxHealth = 120
health = 120
rapid_melee = 0
harm_intent_damage = 8
melee_damage_lower = 20
melee_damage_upper = 25
attack_sound = 'sound/weapons/bladeslice.ogg'
attacktext = "cuts"
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)
minbodytemp = 0
wander = FALSE

/mob/living/simple_animal/hostile/scavengers/laser
name = " Scavenger Gunslinger"
desc = "A bandit scum, who has learned to shoot accurately and quickly."
icon_state = "scavpistol"
icon_living = "scavpistol"
icon_dead = "scavdead"
maxHealth = 100
health = 100
ranged = 1
retreat_distance = 5
minimum_distance = 5
rapid = 2
melee_damage_lower = 10
melee_damage_upper = 10
projectiletype = /obj/item/projectile/beam/laser
projectilesound = 'sound/weapons/laser.ogg'

/mob/living/simple_animal/hostile/scavengers/laser/spacelaser
name = "Spacetrooper Scavenger"
desc = "A shipbreaker scavenger. This one is carrying a laser gun."
icon_state = "scavlaser"
icon_living = "scavlaser"
icon_dead = "scavdead"
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)
minbodytemp = 0
rapid = 3
wander = FALSE

/mob/living/simple_animal/hostile/scavengers/gun
name = "Scavenger Gunman"
desc = "A bandit scum with a shotgun."
icon_state = "scavshotgun"
icon_living = "scavshotgun"
icon_dead = "scavdead"
maxHealth = 100
health = 100
ranged = 1
retreat_distance = 5
minimum_distance = 5
rapid = 0
melee_damage_lower = 10
melee_damage_upper = 10
casingtype = /obj/item/ammo_casing/shotgun
projectilesound = 'sound/weapons/gunshots/gunshot_shotgun.ogg'

/mob/living/simple_animal/hostile/scavengers/gun/spacegun
name = "Spacetrooper Scavenger"
desc = "A shipbreaker scavenger. This one is carrying a submachine gun."
icon_state = "scavm90"
icon_living = "scavm90"
icon_dead = "scavdead"
casingtype = /obj/item/ammo_casing/a556
rapid = 2
projectilesound = 'sound/weapons/gunshots/gunshot_smg.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)
minbodytemp = 0
wander = FALSE

32 changes: 13 additions & 19 deletions modular_ss220/_maps220/code/RandomRuins/space_ruins.dm
Original file line number Diff line number Diff line change
Expand Up @@ -3,36 +3,30 @@
name = "example" // Имя руины
id = "example_id" // ID руины
description = "Пример описания" // Описание руины. Видно только админам.
prefix = "_maps/map_files220/RandomRuins/SpaceRuins/" // Путь до карты, обязательно оставлять таким.
suffix = "" // .dmm файл руины, вписывать название полностью, пример: suffix = "example.dmm". Саму карту закидывать в путь префикса.
suffix = "" // .dmm файл руины, вписывать название полностью, пример: suffix = "example.dmm". Саму карту закидывать в "_maps\map_files\RandomRuins\SpaceRuins"
cost = 5 // Вес руины, чем он больше, тем меньше шанс что она заспавнится
allow_duplicates = FALSE // Разрешает/Запрещает дубликаты руины. TRUE - могут быть дубликаты. FALSE - дубликатов не будет.
always_place = TRUE // Если вписать эту строчку, руина будет спавнится всегда. Использовать ТОЛЬКО для теста! После удалить.
always_place = TRUE // Если вписать эту строчку, руина будет спавнится всегда.
ci_exclude = /datum/map_template/ruin/space/example // Это не использовать.

// Добавлять свои руины под этими комментариями. Делать это по примеру выше!
// Комментарии УДАЛИТЬ если копируешь пример.

/datum/map_template/ruin/space/space_wildwest
name = "Space Wild West"
id = "space_wildwest"
description = "A captured mining outpost on a lonely asteroid. There are rumors that a horrible structure is entombed in its depths."
suffix = "space_wildwest.dmm"
cost = 5
allow_duplicates = FALSE
always_place = FALSE

/datum/map_template/ruin/space/mechtransport_new
name = "Mechtransport"
id = "mechtransport_new"
description = "An abandoned unarmed transport ship, a perfect target for the bandit scum."
prefix = "_maps/map_files220/RandomRuins/SpaceRuins/"
suffix = "mechtransport_new.dmm"
cost = 3
allow_duplicates = FALSE
always_place = FALSE

// Тут код гейтов которые перенесли в космос, делать можно по приверу ниже.
// Сам gateaway не трогать, это группа которая не позволяет спавнится сразу нескольким "гейтам"
/datum/map_template/ruin/space/gateaway
prefix = "_maps/map_files220/RandomRuins/SpaceRuins/"
cost = 10
allow_duplicates = FALSE
always_place = TRUE
ci_exclude = /datum/map_template/ruin/space/gateaway

// Ниже этого комментария - гейты.
/datum/map_template/ruin/space/gateaway/space_wildwest
name = "Space Wild West"
id = "space_wildwest"
description = "A captured mining outpost on a lonely asteroid. There are rumors that a horrible structure is entombed in its depths."
suffix = "space_wildwest.dmm"
118 changes: 116 additions & 2 deletions modular_ss220/aesthetics/walls/code/walls.dm
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,119 @@
/obj/structure/falsewall/reinforced
icon = 'modular_ss220/aesthetics/walls/icons/reinforced_wall.dmi'

/turf/simulated/wall/indestructible/riveted
icon = 'modular_ss220/aesthetics/walls/icons/reinforced_wall.dmi'
//indestructible
/turf/simulated/wall/indestructible/rock/mineral
name = "dense rock"
desc = "An extremely densely-packed rock, Most mining tools or explosives would never get through this."
icon = 'icons/turf/walls//smoothrocks.dmi'
icon_state = "smoothrocks-0"
base_icon_state = "smoothrocks"
color = COLOR_ANCIENT_ROCK
smoothing_flags = SMOOTH_BITMASK | SMOOTH_BORDER
smoothing_groups = list(SMOOTH_GROUP_SIMULATED_TURFS, SMOOTH_GROUP_MINERAL_WALLS)
canSmoothWith = list(SMOOTH_GROUP_MINERAL_WALLS)

/turf/simulated/wall/indestructible/cult
name = "runed metal wall"
icon = 'icons/turf/walls/cult_wall.dmi'
icon_state = "cult_wall-0"
base_icon_state = "cult_wall"
smoothing_flags = SMOOTH_BITMASK
canSmoothWith = list(SMOOTH_GROUP_WALLS, SMOOTH_GROUP_CULT_WALLS)

//indestructible whiteshuttle walls
/turf/simulated/wall/indestructible/whiteshuttle
name = "wall"
desc = "A light-weight titanium wall used in shuttles."
icon = 'icons/turf/walls/plastinum_wall.dmi'
icon_state = "plastinum_wall-0"
base_icon_state = "plastinum_wall"
explosion_block = 3
flags_2 = CHECK_RICOCHET_2
sheet_type = /obj/item/stack/sheet/mineral/titanium
smoothing_flags = SMOOTH_BITMASK | SMOOTH_DIAGONAL_CORNERS
smoothing_groups = list(SMOOTH_GROUP_TITANIUM_WALLS, SMOOTH_GROUP_WINDOW_FULLTILE_SHUTTLE)
canSmoothWith = list(SMOOTH_GROUP_TITANIUM_WALLS, SMOOTH_GROUP_AIRLOCK, SMOOTH_GROUP_SHUTTLE_PARTS, SMOOTH_GROUP_WINDOW_FULLTILE_SHUTTLE)

/turf/simulated/wall/indestructible/whiteshuttle/nodiagonal
icon_state = "map-shuttle_nd"
smoothing_flags = SMOOTH_BITMASK

/turf/simulated/wall/indestructible/whiteshuttle/nosmooth
smoothing_flags = NONE

/turf/simulated/wall/indestructible/whiteshuttle/overspace
icon_state = "map-overspace"
smoothing_flags = SMOOTH_BITMASK | SMOOTH_DIAGONAL_CORNERS
fixed_underlay = list("space" = TRUE)

//sub-type to be used for interior shuttle walls
//won't get an underlay of the destination turf on shuttle move
/turf/simulated/wall/indestructible/whiteshuttle/interior/copyTurf(turf/T)
if(T.type != type)
T.ChangeTurf(type)
if(underlays.len)
T.underlays = underlays
if(T.icon_state != icon_state)
T.icon_state = icon_state
if(T.icon != icon)
T.icon = icon
if(color)
T.atom_colours = atom_colours.Copy()
T.update_atom_colour()
if(T.dir != dir)
T.setDir(dir)
T.transform = transform
return T

/turf/simulated/wall/indestructible/whiteshuttle/copyTurf(turf/T)
. = ..()
T.transform = transform

//indestructible syndishuttle walls
/turf/simulated/wall/indestructible/syndishuttle
name = "wall"
desc = "An evil wall of plasma and titanium."
icon = 'icons/turf/walls/plastitanium_wall.dmi'
icon_state = "plastitanium_wall-0"
base_icon_state = "plastitanium_wall"
explosion_block = 4
sheet_type = /obj/item/stack/sheet/mineral/plastitanium
smoothing_flags = SMOOTH_BITMASK | SMOOTH_DIAGONAL_CORNERS
smoothing_groups = list(SMOOTH_GROUP_PLASTITANIUM_WALLS)
canSmoothWith = list(SMOOTH_GROUP_PLASTITANIUM_WALLS, SMOOTH_GROUP_AIRLOCK, SMOOTH_GROUP_SHUTTLE_PARTS)

/turf/simulated/wall/indestructible/syndishuttle/nodiagonal
icon_state = "map-shuttle_nd"
base_icon_state = "plastitanium_wall"
smoothing_flags = SMOOTH_BITMASK

/turf/simulated/wall/indestructible/syndishuttle/nosmooth
smoothing_flags = NONE

/turf/simulated/wall/indestructible/syndishuttle/overspace
icon_state = "map-overspace"
smoothing_flags = SMOOTH_BITMASK | SMOOTH_DIAGONAL_CORNERS
fixed_underlay = list("space" = TRUE)

/turf/simulated/wall/indestructible/syndishuttle/interior/copyTurf(turf/T)
if(T.type != type)
T.ChangeTurf(type)
if(underlays.len)
T.underlays = underlays
if(T.icon_state != icon_state)
T.icon_state = icon_state
if(T.icon != icon)
T.icon = icon
if(color)
T.atom_colours = atom_colours.Copy()
T.update_atom_colour()
if(T.dir != dir)
T.setDir(dir)
T.transform = transform
return T

/turf/simulated/wall/indestructible/syndishuttle/copyTurf(turf/T)
. = ..()
T.transform = transform

4 changes: 4 additions & 0 deletions modular_ss220/bureaucracy/bureaucracy.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
/datum/modpack/bureaucracy
name = "Бюрократия"
desc = "Добавляет бланки в ксероксе"
author = "Aylong220, RV666"
4 changes: 4 additions & 0 deletions modular_ss220/bureaucracy/bureaucracy.dme
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#include "bureaucracy.dm"

#include "code/paper.dm"
#include "code/photocopier.dm"
Loading
Loading