Golem ship remap and equipment tweaking. (#29294)

This commit is contained in:
warriorstar-orion
2025-05-17 13:18:47 +00:00
committed by GitHub
parent 5cec6a1cdd
commit 1ace49ec1a
15 changed files with 1068 additions and 815 deletions
File diff suppressed because it is too large Load Diff
@@ -152,8 +152,8 @@ a
a
a
a
a
a
H
x
a
"}
(5,1,1) = {"
@@ -185,9 +185,9 @@ a
a
a
a
a
a
a
H
x
x
a
"}
(6,1,1) = {"
@@ -220,8 +220,8 @@ a
a
a
a
a
a
x
H
a
"}
(7,1,1) = {"
@@ -253,9 +253,9 @@ a
a
a
a
a
a
a
x
x
x
a
"}
(8,1,1) = {"
@@ -287,9 +287,9 @@ a
a
a
a
a
a
a
x
x
x
a
"}
(9,1,1) = {"
@@ -321,8 +321,8 @@ a
a
a
a
a
a
x
x
a
a
"}
@@ -920,11 +920,11 @@ a
a
a
a
H
x
x
x
x
a
a
a
a
a
a
a
a
@@ -953,12 +953,12 @@ a
a
a
a
H
x
x
x
x
x
a
a
a
a
a
a
a
a
a
@@ -988,10 +988,10 @@ a
a
a
a
x
H
x
x
a
a
a
a
a
a
a
+6
View File
@@ -747,6 +747,12 @@ do { \
//! The number of seconds between the start of the UNIX and BYOND epochs.
#define BYOND_EPOCH_UNIX 946702800
// Use this define to register something as a purchasable!
// * n — The proper name of the purchasable
// * o — The object type path of the purchasable to spawn
// * p — The price of the purchasable in mining points
#define EQUIPMENT(n, o, p) n = new /datum/data/mining_equipment(n, o, p)
#define BRIDGE_SPAWN_SUCCESS 0
#define BRIDGE_SPAWN_TOO_WIDE 1
#define BRIDGE_SPAWN_TOO_NARROW 2
-17
View File
@@ -69,23 +69,6 @@
if(..())
qdel(src)
//free golem blueprints, like permit but can claim as much as needed
/obj/item/areaeditor/golem
name = "Golem Land Claim"
desc = "Used to define new areas in space."
fluffnotice = "Praise the Liberator!"
/obj/item/areaeditor/golem/attack_self__legacy__attackchain(mob/user)
. = ..()
var/area/our_area = get_area(src)
if(get_area_type() == AREA_STATION)
. += "<p>According to [src], you are now in <b>\"[sanitize(our_area.name)]\"</b>.</p>"
var/datum/browser/popup = new(user, "blueprints", "[src]", 700, 500)
popup.set_content(.)
popup.open()
onclose(usr, "blueprints")
//Station blueprints!!!
/obj/item/areaeditor/blueprints
name = "station blueprints"
@@ -618,17 +618,6 @@
new /obj/item/reagent_containers/cooking/bowl(src)
new /obj/item/reagent_containers/cooking/bowl(src)
//crates of gear in the free golem ship
/obj/structure/closet/crate/golemgear/populate_contents()
new /obj/item/storage/backpack/industrial(src)
new /obj/item/shovel(src)
new /obj/item/pickaxe(src)
new /obj/item/t_scanner/adv_mining_scanner/lesser(src)
new /obj/item/storage/bag/ore(src)
new /obj/item/clothing/glasses/meson(src)
new /obj/item/card/id/golem(src)
new /obj/item/flashlight/lantern(src)
#define RECURSION_PANIC_AMOUNT 10
/obj/structure/closet/crate/surplus
@@ -0,0 +1,135 @@
/obj/item/storage/firstaid/freegolem
name = "golem emergency treatment kit"
desc = "A box of essential medical supplies, formulated for golems' hard skin."
icon_state = "medbriefcase"
/obj/item/storage/firstaid/freegolem/populate_contents()
new /obj/item/healthanalyzer(src)
new /obj/item/reagent_containers/patch/styptic/small(src)
new /obj/item/reagent_containers/patch/styptic/small(src)
new /obj/item/reagent_containers/patch/silver_sulf/small(src)
new /obj/item/reagent_containers/patch/silver_sulf/small(src)
new /obj/item/reagent_containers/hypospray/autoinjector/epinephrine(src)
/obj/structure/closet/freegolem
name = "free golem equipment locker"
icon_state = "freegolem"
/obj/structure/closet/freegolem/populate_contents()
new /obj/item/storage/backpack/industrial(src)
new /obj/item/shovel(src)
new /obj/item/pickaxe(src)
new /obj/item/t_scanner/adv_mining_scanner/lesser(src)
new /obj/item/storage/bag/ore(src)
new /obj/item/clothing/glasses/meson(src)
new /obj/item/card/id/golem(src)
new /obj/item/flashlight/lantern(src)
new /obj/item/resonator/upgraded(src)
new /obj/item/storage/firstaid/freegolem(src)
/**
* # Ore Redemption Machine (Golem)
*
* Golem variant of the ORM.
*/
/obj/machinery/mineral/ore_redemption/golem
req_access = list(ACCESS_FREE_GOLEMS)
req_access_claim = ACCESS_FREE_GOLEMS
/obj/machinery/mineral/ore_redemption/golem/Initialize(mapload)
. = ..()
component_parts = list()
component_parts += new /obj/item/circuitboard/ore_redemption/golem(null)
component_parts += new /obj/item/stock_parts/matter_bin(null)
component_parts += new /obj/item/stock_parts/manipulator(null)
component_parts += new /obj/item/stock_parts/micro_laser(null)
component_parts += new /obj/item/assembly/igniter(null)
component_parts += new /obj/item/stack/sheet/glass(null)
RefreshParts()
/obj/machinery/mineral/ore_redemption/golem/RefreshParts()
var/P = 0.65
var/S = 0.65
for(var/obj/item/stock_parts/micro_laser/M in component_parts)
P += 0.35 * M.rating
for(var/obj/item/stock_parts/matter_bin/M in component_parts)
S += 0.35 * M.rating
// Manipulators do nothing
// Update our values
point_upgrade = P
sheet_per_ore = S
SStgui.update_uis(src)
/**********************Mining Equiment Vendor (Golem)**************************/
/obj/machinery/mineral/equipment_vendor/golem
name = "golem ship equipment vendor"
/obj/machinery/mineral/equipment_vendor/golem/Initialize(mapload)
. = ..()
component_parts = list()
component_parts += new /obj/item/circuitboard/mining_equipment_vendor/golem(null)
component_parts += new /obj/item/stock_parts/matter_bin(null)
component_parts += new /obj/item/stock_parts/matter_bin(null)
component_parts += new /obj/item/stock_parts/matter_bin(null)
component_parts += new /obj/item/stack/sheet/glass(null)
RefreshParts()
desc += "\nIt seems a few selections have been added."
prize_list["Extra"] += list(
EQUIPMENT("Free Golem ID", /obj/item/card/id/golem, 250),
EQUIPMENT("Science Backpack", /obj/item/storage/backpack/science, 250),
EQUIPMENT("Full Toolbelt", /obj/item/storage/belt/utility/full/multitool, 250),
EQUIPMENT("Monkey Cube", /obj/item/food/monkeycube, 250),
EQUIPMENT("Royal Cape of the Liberator", /obj/item/bedsheet/rd/royal_cape, 500),
EQUIPMENT("Grey Slime Extract", /obj/item/slime_extract/grey, 1000),
EQUIPMENT("KA Trigger Modification Kit", /obj/item/borg/upgrade/modkit/trigger_guard, 1000),
EQUIPMENT("Shuttle Console Board", /obj/item/circuitboard/shuttle/golem_ship, 2000),
EQUIPMENT("The Liberator's Legacy", /obj/item/storage/box/rndboards, 2000),
EQUIPMENT("The Liberator's Fabricator", /obj/item/storage/box/smithboards, 1000),
)
/// Free golem blueprints, like permit but can claim as much as needed.
/obj/item/areaeditor/golem
name = "Golem Land Claim"
desc = "Used to define new areas in space."
fluffnotice = "Praise the Liberator!"
/obj/item/areaeditor/golem/attack_self__legacy__attackchain(mob/user)
. = ..()
var/area/our_area = get_area(src)
if(get_area_type() == AREA_STATION)
. += "<p>According to [src], you are now in <b>\"[sanitize(our_area.name)]\"</b>.</p>"
var/datum/browser/popup = new(user, "blueprints", "[src]", 700, 500)
popup.set_content(.)
popup.open()
onclose(usr, "blueprints")
/obj/item/disk/design_disk/golem_shell
name = "golem creation disk"
desc = "A gift from the Liberator."
icon_state = "datadisk1"
/obj/item/disk/design_disk/golem_shell/Initialize(mapload)
. = ..()
var/datum/design/golem_shell/G = new
blueprint = G
/obj/machinery/computer/shuttle/golem_ship
name = "Golem Ship Console"
desc = "Used to control the Golem Ship."
circuit = /obj/item/circuitboard/shuttle/golem_ship
shuttleId = "freegolem"
possible_destinations = "freegolem_lavaland;freegolem_space;freegolem_ussp"
/obj/machinery/computer/shuttle/golem_ship/attack_hand(mob/user)
if(!isgolem(user) && !isobserver(user))
to_chat(user, "<span class='notice'>The console is unresponsive. Seems only golems can use it.</span>")
return
..()
/obj/machinery/computer/shuttle/golem_ship/recall
name = "golem ship recall terminal"
desc = "Used to recall the Golem Ship."
possible_destinations = "freegolem_lavaland"
resistance_flags = INDESTRUCTIBLE
@@ -33,6 +33,7 @@
name = "upgraded resonator"
desc = "An upgraded version of the resonator that can produce more fields at once, as well as having no damage penalty for bursting a resonance field early. It also allows you to set 'Resonance matrixes', that detonate after someone (or something) walks over it."
icon_state = "resonator_u"
item_state = "resonator_u"
origin_tech = "materials=4;powerstorage=3;engineering=3;magnets=3"
fieldlimit = 6
quick_burst_mod = 1
-33
View File
@@ -75,39 +75,6 @@
component_parts += new /obj/item/stack/sheet/glass(null)
RefreshParts()
/**
* # Ore Redemption Machine (Golem)
*
* Golem variant of the ORM.
*/
/obj/machinery/mineral/ore_redemption/golem
req_access = list(ACCESS_FREE_GOLEMS)
req_access_claim = ACCESS_FREE_GOLEMS
/obj/machinery/mineral/ore_redemption/golem/Initialize(mapload)
. = ..()
component_parts = list()
component_parts += new /obj/item/circuitboard/ore_redemption/golem(null)
component_parts += new /obj/item/stock_parts/matter_bin(null)
component_parts += new /obj/item/stock_parts/manipulator(null)
component_parts += new /obj/item/stock_parts/micro_laser(null)
component_parts += new /obj/item/assembly/igniter(null)
component_parts += new /obj/item/stack/sheet/glass(null)
RefreshParts()
/obj/machinery/mineral/ore_redemption/golem/RefreshParts()
var/P = 0.65
var/S = 0.65
for(var/obj/item/stock_parts/micro_laser/M in component_parts)
P += 0.35 * M.rating
for(var/obj/item/stock_parts/matter_bin/M in component_parts)
S += 0.35 * M.rating
// Manipulators do nothing
// Update our values
point_upgrade = P
sheet_per_ore = S
SStgui.update_uis(src)
/**
* # Ore Redemption Machine (Labor Camp)
*
-35
View File
@@ -1,9 +1,3 @@
// Use this define to register something as a purchasable!
// * n — The proper name of the purchasable
// * o — The object type path of the purchasable to spawn
// * p — The price of the purchasable in mining points
#define EQUIPMENT(n, o, p) n = new /datum/data/mining_equipment(n, o, p)
/**********************Mining Equipment Vendor**************************/
/obj/machinery/mineral/equipment_vendor
@@ -308,35 +302,6 @@
return ..()
/**********************Mining Equiment Vendor (Golem)**************************/
/obj/machinery/mineral/equipment_vendor/golem
name = "golem ship equipment vendor"
/obj/machinery/mineral/equipment_vendor/golem/Initialize(mapload)
. = ..()
component_parts = list()
component_parts += new /obj/item/circuitboard/mining_equipment_vendor/golem(null)
component_parts += new /obj/item/stock_parts/matter_bin(null)
component_parts += new /obj/item/stock_parts/matter_bin(null)
component_parts += new /obj/item/stock_parts/matter_bin(null)
component_parts += new /obj/item/stack/sheet/glass(null)
RefreshParts()
desc += "\nIt seems a few selections have been added."
prize_list["Extra"] += list(
EQUIPMENT("Extra ID", /obj/item/card/id/golem, 250),
EQUIPMENT("Science Backpack", /obj/item/storage/backpack/science, 250),
EQUIPMENT("Full Toolbelt", /obj/item/storage/belt/utility/full/multitool, 250),
EQUIPMENT("Monkey Cube", /obj/item/food/monkeycube, 250),
EQUIPMENT("Royal Cape of the Liberator", /obj/item/bedsheet/rd/royal_cape, 500),
EQUIPMENT("Grey Slime Extract", /obj/item/slime_extract/grey, 1000),
EQUIPMENT("KA Trigger Modification Kit", /obj/item/borg/upgrade/modkit/trigger_guard, 1000),
EQUIPMENT("Shuttle Console Board", /obj/item/circuitboard/shuttle/golem_ship, 2000),
EQUIPMENT("The Liberator's Legacy", /obj/item/storage/box/rndboards, 2000),
EQUIPMENT("The Liberator's Fabricator", /obj/item/storage/box/smithboards, 1000),
)
/**********************Mining Equiment Vendor (Gulag)**************************/
/obj/machinery/mineral/equipment_vendor/labor
-10
View File
@@ -449,16 +449,6 @@ datum/tech/robotics
desc = default_desc
blueprint = null
/obj/item/disk/design_disk/golem_shell
name = "golem creation disk"
desc = "A gift from the Liberator."
icon_state = "datadisk1"
/obj/item/disk/design_disk/golem_shell/Initialize(mapload)
. = ..()
var/datum/design/golem_shell/G = new
blueprint = G
/datum/research/autolathe/syndicate/New()
// Used by syndi autolathe in syndie space base ruin. Removes methods of contacting main station.
. = ..()
-19
View File
@@ -1122,25 +1122,6 @@
possible_destinations = "trade_sol_base;trade_dock"
shuttleId = "trade_sol"
/obj/machinery/computer/shuttle/golem_ship
name = "Golem Ship Console"
desc = "Used to control the Golem Ship."
circuit = /obj/item/circuitboard/shuttle/golem_ship
shuttleId = "freegolem"
possible_destinations = "freegolem_lavaland;freegolem_space;freegolem_ussp"
/obj/machinery/computer/shuttle/golem_ship/attack_hand(mob/user)
if(!isgolem(user) && !isobserver(user))
to_chat(user, "<span class='notice'>The console is unresponsive. Seems only golems can use it.</span>")
return
..()
/obj/machinery/computer/shuttle/golem_ship/recall
name = "golem ship recall terminal"
desc = "Used to recall the Golem Ship."
possible_destinations = "freegolem_lavaland"
resistance_flags = INDESTRUCTIBLE
//#undef DOCKING_PORT_HIGHLIGHT
/turf/proc/copyTurf(turf/T)
Binary file not shown.

Before

Width:  |  Height:  |  Size: 102 KiB

After

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 100 KiB

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 48 KiB

+1
View File
@@ -1778,6 +1778,7 @@
#include "code\modules\awaymissions\mission_code\ruins\abandoned_engi_sat.dm"
#include "code\modules\awaymissions\mission_code\ruins\deepstorage.dm"
#include "code\modules\awaymissions\mission_code\ruins\derelict5.dm"
#include "code\modules\awaymissions\mission_code\ruins\freegolems.dm"
#include "code\modules\awaymissions\mission_code\ruins\gps_ruin.dm"
#include "code\modules\awaymissions\mission_code\ruins\moonoutpost19.dm"
#include "code\modules\awaymissions\mission_code\ruins\nian_freighter.dm"