Integrate free golems as a lavaland ruin

This commit is contained in:
datlo
2019-05-31 09:30:03 +01:00
parent 42c0702a6a
commit 32812736ee
15 changed files with 1581 additions and 1962 deletions
@@ -0,0 +1,71 @@
"a" = (/turf/template_noop,/area/template_noop)
"b" = (/turf/simulated/wall/mineral/titanium,/area/ruin/powered/golem_ship)
"c" = (/obj/structure/fans/tiny,/obj/machinery/door/airlock/shuttle,/turf/simulated/floor/plating,/area/ruin/powered/golem_ship)
"d" = (/obj/structure/closet/crate/golemgear,/turf/simulated/floor/plating,/area/ruin/powered/golem_ship)
"e" = (/obj/item/storage/toolbox/mechanical,/obj/item/reagent_containers/spray/cleaner,/turf/simulated/floor/plating,/area/ruin/powered/golem_ship)
"f" = (/turf/simulated/floor/plating,/area/ruin/powered/golem_ship)
"g" = (/obj/structure/reagent_dispensers/watertank/high,/turf/simulated/floor/plating,/area/ruin/powered/golem_ship)
"h" = (/obj/structure/shuttle/engine/heater{icon_state = "heater"; dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/shuttle/plating,/area/ruin/powered/golem_ship)
"i" = (/obj/structure/shuttle/engine/propulsion{dir = 4; icon_state = "burst_l"},/turf/simulated/shuttle/plating,/area/ruin/powered/golem_ship)
"j" = (/obj/machinery/light/small,/turf/simulated/floor/plating,/area/ruin/powered/golem_ship)
"k" = (/obj/structure/reagent_dispensers/watertank,/turf/simulated/floor/plating,/area/ruin/powered/golem_ship)
"l" = (/obj/machinery/door/airlock/shuttle,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"m" = (/obj/machinery/vending/hydronutrients,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"n" = (/obj/machinery/vending/hydroseeds,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"o" = (/obj/machinery/light{dir = 1; on = 1},/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"p" = (/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"q" = (/obj/machinery/light{dir = 1; on = 1},/obj/effect/mob_spawn/human/golem/adamantine,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"r" = (/obj/effect/mob_spawn/human/golem/adamantine,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"s" = (/obj/machinery/vending/coffee/free,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"t" = (/obj/machinery/mineral/equipment_vendor/golem,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"u" = (/obj/machinery/door/airlock/shuttle,/obj/structure/fans/tiny,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"v" = (/obj/item/resonator,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"w" = (/obj/machinery/door/airlock/shuttle,/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/ruin/powered/golem_ship)
"x" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"y" = (/obj/machinery/mineral/ore_redemption/golem,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"z" = (/obj/structure/window/full/shuttle{icon_state = "16"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/ruin/powered/golem_ship)
"A" = (/obj/structure/statue/gold/rd{name = "statue of the Liberator"},/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/ruin/powered/golem_ship)
"B" = (/obj/structure/computerframe,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"C" = (/obj/machinery/light{dir = 1},/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"D" = (/obj/structure/extinguisher_cabinet{pixel_y = 30},/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"E" = (/obj/structure/window/full/shuttle{icon_state = "15"},/obj/structure/grille,/turf/simulated/shuttle/plating,/area/ruin/powered/golem_ship)
"F" = (/obj/structure/window/reinforced{dir = 4; pixel_x = 0},/obj/structure/table/wood,/obj/item/bedsheet/rd/royal_cape{layer = 3; pixel_x = 5; pixel_y = 9},/obj/item/book/manual/research_and_development{name = "Sacred Text of the Liberator"; pixel_x = -4; pixel_y = 3},/turf/simulated/shuttle/floor{icon_state = "floor5"},/area/ruin/powered/golem_ship)
"G" = (/obj/machinery/light,/obj/structure/chair/comfy/purp{icon_state = "comfychair"; dir = 1},/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"H" = (/obj/machinery/light/small,/obj/structure/extinguisher_cabinet{pixel_y = -30},/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"I" = (/obj/structure/fans/tiny,/obj/machinery/door/airlock/shuttle,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"J" = (/turf/simulated/wall/mineral/titanium/interior,/area/ruin/powered/golem_ship)
"K" = (/obj/item/resonator/upgraded,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"L" = (/obj/machinery/autolathe,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"M" = (/obj/structure/table/wood,/obj/machinery/reagentgrinder,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"N" = (/obj/machinery/computer/arcade/orion_trail,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"O" = (/obj/machinery/computer/arcade/battle,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"P" = (/obj/machinery/light,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"Q" = (/obj/machinery/light,/obj/effect/mob_spawn/human/golem/adamantine,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"R" = (/obj/machinery/vending/snack/free,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"S" = (/obj/structure/table/wood,/obj/item/storage/firstaid/brute,/obj/item/storage/firstaid/brute,/obj/item/storage/firstaid/brute,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"T" = (/obj/structure/table/wood,/obj/item/storage/firstaid/fire,/obj/item/storage/firstaid/fire,/obj/item/storage/firstaid/fire,/obj/machinery/light,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"U" = (/obj/structure/table/wood,/obj/item/storage/firstaid/adv,/obj/item/storage/firstaid/adv,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"V" = (/obj/structure/table/wood,/obj/item/areaeditor/golem,/obj/item/disk/design_disk/golem_shell,/turf/simulated/floor/mineral/titanium/purple,/area/ruin/powered/golem_ship)
"W" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/ruin/powered/golem_ship)
"X" = (/obj/structure/reagent_dispensers/fueltank,/turf/simulated/floor/plating,/area/ruin/powered/golem_ship)
"Y" = (/obj/structure/ore_box,/turf/simulated/floor/plating,/area/ruin/powered/golem_ship)
"Z" = (/turf/simulated/wall/mineral/titanium/nodiagonal,/area/ruin/powered/golem_ship)
(1,1,1) = {"
aaaaabbbbbbbbbbccbbb
aaaaabddddddddeffghi
aaaaabffjffjfffjfkhi
aabbbbllbbbbllbbbbbb
aabmnoppqrbspppopthi
aaupppppvvlppppppphi
bbbwwbbbbbbxpppppyZZ
zABppppCpplpppppppDu
EFGppppppplpppppppHI
bbbllJbbbbbxppppKLZZ
aaupppppvvlppppppMhi
aabNOPppQrbRppSTUVhi
aabbbbllbbbbllbbbbbb
aaaaabffWffWfffWfXhi
aaaaabYYYYYYYYeffXhi
aaaaabbbbbbbbbbccbbb
"}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+26 -37
View File
@@ -15,8 +15,8 @@
},
/area/djstation/solars)
"ad" = (
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/space/nearstation)
"ae" = (
/obj/structure/lattice,
@@ -76,8 +76,8 @@
d2 = 8;
icon_state = "2-8"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/djstation/solars)
"ao" = (
/obj/structure/grille{
@@ -93,8 +93,8 @@
d2 = 2;
icon_state = "1-2"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/djstation/solars)
"aq" = (
/obj/structure/cable{
@@ -125,8 +125,8 @@
d2 = 2;
icon_state = "1-2"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/djstation)
"at" = (
/obj/structure/lattice,
@@ -312,8 +312,8 @@
d2 = 4;
icon_state = "1-4"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/djstation)
"aR" = (
/obj/structure/cable{
@@ -331,8 +331,8 @@
d2 = 4;
icon_state = "1-4"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/djstation/solars)
"aS" = (
/obj/structure/cable{
@@ -340,8 +340,8 @@
d2 = 8;
icon_state = "4-8"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/djstation/solars)
"aT" = (
/obj/structure/cable{
@@ -359,8 +359,8 @@
d2 = 8;
icon_state = "2-8"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/djstation/solars)
"aU" = (
/obj/item/storage/toolbox/mechanical{
@@ -386,8 +386,8 @@
d2 = 8;
icon_state = "2-8"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/djstation)
"aW" = (
/turf/simulated/floor/plasteel{
@@ -4602,8 +4602,8 @@
d2 = 8;
icon_state = "2-8"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/derelict/solar_control)
"jL" = (
/obj/structure/table/wood,
@@ -6693,8 +6693,8 @@
d2 = 2;
icon_state = "1-2"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/derelict/solar_control)
"oT" = (
/obj/machinery/atmospherics/pipe/simple/hidden{
@@ -7751,8 +7751,8 @@
d2 = 8;
icon_state = "4-8"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/derelict/solar_control)
"rn" = (
/obj/structure/cable{
@@ -7765,8 +7765,8 @@
d2 = 8;
icon_state = "1-8"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/derelict/solar_control)
"ro" = (
/obj/structure/window/reinforced,
@@ -7993,8 +7993,8 @@
d2 = 8;
icon_state = "1-8"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/derelict/solar_control)
"rG" = (
/obj/structure/closet/crate/secure/loot,
@@ -8029,8 +8029,8 @@
/turf/space,
/area/derelict/crew_quarters)
"rJ" = (
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/derelict/solar_control)
"rK" = (
/obj/machinery/power/tracker,
@@ -8272,8 +8272,8 @@
d2 = 4;
icon_state = "2-4"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/derelict/solar_control)
"si" = (
/obj/structure/cable{
@@ -9006,8 +9006,8 @@
d2 = 8;
icon_state = "2-8"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/derelict/solar_control)
"tF" = (
/obj/structure/sign/greencross,
@@ -9040,8 +9040,8 @@
d2 = 8;
icon_state = "2-8"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/derelict/solar_control)
"tI" = (
/obj/structure/cable{
@@ -9563,8 +9563,8 @@
d2 = 8;
icon_state = "1-8"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/derelict/solar_control)
"uJ" = (
/turf/space,
@@ -9895,8 +9895,8 @@
d2 = 4;
icon_state = "1-4"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/derelict/solar_control)
"vn" = (
/obj/item/shard{
@@ -10462,8 +10462,8 @@
d2 = 8;
icon_state = "1-8"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/derelict/solar_control)
"wm" = (
/obj/structure/cable{
@@ -10476,8 +10476,8 @@
d2 = 4;
icon_state = "1-4"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/derelict/solar_control)
"wn" = (
/obj/structure/closet/jcloset,
@@ -10502,8 +10502,8 @@
d2 = 8;
icon_state = "2-8"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/derelict/solar_control)
"wp" = (
/obj/structure/cable{
@@ -10521,8 +10521,8 @@
d2 = 4;
icon_state = "1-4"
},
/turf/space,
/obj/structure/lattice/catwalk,
/turf/space,
/area/derelict/solar_control)
"wq" = (
/obj/structure/cable{
@@ -10540,20 +10540,9 @@
d2 = 8;
icon_state = "1-8"
},
/turf/space,
/obj/structure/lattice/catwalk,
/area/derelict/solar_control)
"wr" = (
/obj/docking_port/stationary{
dir = 8;
dwidth = 8;
height = 20;
id = "freegolem_z6";
name = "Near USSP Station";
width = 16
},
/turf/space,
/area/space)
/area/derelict/solar_control)
"ws" = (
/obj/effect/landmark/burnturf,
/turf/simulated/floor/plasteel/airless{
@@ -53934,7 +53923,7 @@ aa
aa
aa
aa
wr
aa
aa
aa
aa
-9
View File
@@ -75,9 +75,6 @@
var/auto_cryo_ssd_mins = 0
var/ssd_warning = 0
var/prob_free_golems = 75 //chance for free golems spawners to appear roundstart
var/unrestricted_free_golems = FALSE //if true, free golems can appear on all roundtypes
var/traitor_objectives_amount = 2
var/shadowling_max_age = 0
@@ -305,12 +302,6 @@
if("jobs_have_minimal_access")
config.jobs_have_minimal_access = 1
if("prob_free_golems")
config.prob_free_golems = text2num(value)
if("unrestricted_free_golems")
config.unrestricted_free_golems = TRUE
if("shadowling_max_age")
config.shadowling_max_age = text2num(value)
+9
View File
@@ -38,6 +38,15 @@ datum/map_template/ruin/lavaland/ash_walker
cost = 20
allow_duplicates = FALSE
/datum/map_template/ruin/lavaland/free_golem
name = "Free Golem Ship"
id = "golem-ship"
description = "Lumbering humanoids, made out of precious metals, move inside this ship. They frequently leave to mine more minerals, which they somehow turn into more of them. \
Seem very intent on research and individual liberty, and also geology based naming?"
cost = 20
suffix = "lavaland_surface_golem_ship.dmm"
allow_duplicates = FALSE
/datum/map_template/ruin/lavaland/animal_hospital
name = "Animal Hospital"
id = "animal-hospital"
+1
View File
@@ -18,6 +18,7 @@
/area/ruin/powered/golem_ship
name = "Free Golem Ship"
icon_state = "dk_yellow"
xenobiology_compatible = TRUE
/area/ruin/powered/greed
icon_state = "dk_yellow"
-1
View File
@@ -14,7 +14,6 @@ var/list/blob_nodes = list()
required_enemies = 1
recommended_enemies = 1
restricted_jobs = list("Cyborg", "AI")
free_golems_disabled = TRUE
var/declared = 0
var/burst = 0
-1
View File
@@ -43,7 +43,6 @@ var/global/list/all_cults = list()
required_players = 30
required_enemies = 3
recommended_enemies = 4
free_golems_disabled = TRUE
var/datum/mind/sacrifice_target = null
var/finished = 0
-8
View File
@@ -27,7 +27,6 @@
var/recommended_enemies = 0
var/newscaster_announcements = null
var/ert_disabled = 0
var/free_golems_disabled = FALSE
var/uplink_welcome = "Syndicate Uplink Console:"
var/uplink_uses = 20
@@ -81,7 +80,6 @@
// feedback_set_details("revision","[revdata.revision]")
feedback_set_details("server_ip","[world.internet_address]:[world.port]")
generate_station_goals()
check_free_golems()
start_state = new /datum/station_state()
start_state.count()
return 1
@@ -513,12 +511,6 @@ proc/display_roundstart_logout_report()
var/datum/station_goal/G = V
G.print_result()
/datum/game_mode/proc/check_free_golems() //check config and gamemode for free golems setting and run the prob to check if the round will have free golems spawned or not
if((config.unrestricted_free_golems || !free_golems_disabled) && prob(config.prob_free_golems))
for(var/obj/effect/landmark/free_golem_spawn/L in GLOB.landmarks_list)
if(isturf(L.loc))
new /obj/effect/mob_spawn/human/golem/adamantine(L.loc)
/datum/game_mode/proc/update_eventmisc_icons_added(datum/mind/mob_mind)
var/datum/atom_hud/antag/antaghud = huds[ANTAG_HUD_EVENTMISC]
antaghud.join_hud(mob_mind.current)
-1
View File
@@ -12,7 +12,6 @@ proc/issyndicate(mob/living/M as mob)
required_players = 30 // 30 players - 5 players to be the nuke ops = 25 players remaining
required_enemies = 5
recommended_enemies = 5
free_golems_disabled = TRUE
var/const/agents_possible = 5 //If we ever need more syndicate agents.
-1
View File
@@ -7,7 +7,6 @@
required_players = 20
required_enemies = 1
recommended_enemies = 1
free_golems_disabled = TRUE
var/use_huds = 0
var/finished = 0
@@ -334,9 +334,6 @@
/obj/item/circuitboard/white_ship
name = "circuit Board (White Ship)"
build_path = /obj/machinery/computer/shuttle/white_ship
/obj/item/circuitboard/golem_ship
name = "circuit Board (Golem Ship)"
build_path = /obj/machinery/computer/shuttle/golem_ship
/obj/item/circuitboard/shuttle/syndicate
name = "circuit board (Syndicate Shuttle)"
build_path = /obj/machinery/computer/shuttle/syndicate
+1 -15
View File
@@ -503,7 +503,7 @@
SSair.remove_from_active(T1)
T1.CalculateAdjacentTurfs()
SSair.add_to_active(T1,1)
T1.lighting_build_overlay()
T0.ChangeTurf(turf_type)
@@ -836,20 +836,6 @@
shuttleId = "whiteship"
possible_destinations = "whiteship_away;whiteship_home;whiteship_z4"
/obj/machinery/computer/shuttle/golem_ship
name = "Golem Ship Console"
desc = "Used to control the Golem Ship."
circuit = /obj/item/circuitboard/golem_ship
shuttleId = "freegolem"
possible_destinations = "freegolem_z3;freegolem_z5;freegolem_z1;freegolem_z6"
resistance_flags = INDESTRUCTIBLE
/obj/machinery/computer/shuttle/golem_ship/attack_hand(mob/user)
if(!isgolem(user))
to_chat(user, "<span class='notice'>The console is unresponsive. Seems only golems can use it.</span>")
return
..()
/obj/machinery/computer/shuttle/engineering
name = "Engineering Shuttle Console"
desc = "Used to call and send the engineering shuttle."
-6
View File
@@ -109,12 +109,6 @@ PROBABILITY ABDUCTION 0
PROBABILITY DEVIL 0
PROBABILITY DEVILAGENTS 0
## Probability in % for Free Golems to spawn at roundstart, set to 0 for no golems
PROB_FREE_GOLEMS 75
## Uncomment to allow free golems on all roundtypes. Otherwise, disabled on cult, wiz, raging mages, blob, and nuclear.
#UNRESTRICTED_FREE_GOLEMS
## Maximum cycles shadowlings can remain unhatched before they take damage. 1800 = 60 minutes, 900 = 30 minutes, 0 = feature disabled.
SHADOWLING_MAX_AGE 0