From 16d76061c321df348ce9c095fa2b4fcc6708234d Mon Sep 17 00:00:00 2001 From: EgorDinamit Date: Wed, 7 Feb 2024 19:23:01 +0300 Subject: [PATCH] Adds OBS trade station, more updates --- baystation12.dme | 1 + code/__defines/culture.dm | 3 ++ code/game/jobs/access_datum.dm | 14 +++++++ .../game/objects/effects/decals/contraband.dm | 3 ++ code/modules/item_worth/worths_list.dm | 8 ++-- code/modules/trading_stations/_faction.dm | 41 +++++++++++++++++++ .../trading_station_types/3_very_rare/obs.dm | 35 ++++++++++++++++ 7 files changed, 101 insertions(+), 4 deletions(-) create mode 100644 code/modules/trading_stations/trading_station_types/3_very_rare/obs.dm diff --git a/baystation12.dme b/baystation12.dme index d8715a19098..2a4419fa114 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -3294,6 +3294,7 @@ #include "code\modules\trading_stations\trading_station_types\0_always_spawn\medical.dm" #include "code\modules\trading_stations\trading_station_types\0_always_spawn\security.dm" #include "code\modules\trading_stations\trading_station_types\2_rare\weapons.dm" +#include "code\modules\trading_stations\trading_station_types\3_very_rare\obs.dm" #include "code\modules\trusted-players\procs.dm" #include "code\modules\turbolift\_turbolift.dm" #include "code\modules\turbolift\turbolift.dm" diff --git a/code/__defines/culture.dm b/code/__defines/culture.dm index 97961cdc80e..7c0e7610208 100644 --- a/code/__defines/culture.dm +++ b/code/__defines/culture.dm @@ -23,8 +23,11 @@ #define FACTION_TERRASENATE_OBS "Order of the Black Sun" // Not exactly a faction within senate, but it exists // End < #define FACTION_ISC "Independent Space Confederation" +// Members of ISC > #define FACTION_NANOTRASEN "NanoTrasen" #define FACTION_CYBERSUN "Cybersun Industries" +#define FACTION_REBORN_CHRISTIAN_CHURCH "Reborn Christian Church" +// End < #define FACTION_FREETRADE "Free Trade Union" #define FACTION_HEPHAESTUS "Hephaestus Industries" #define FACTION_XYNERGY "Xynergy" diff --git a/code/game/jobs/access_datum.dm b/code/game/jobs/access_datum.dm index 7891737d45f..8388fabcd1a 100644 --- a/code/game/jobs/access_datum.dm +++ b/code/game/jobs/access_datum.dm @@ -513,3 +513,17 @@ desc = "Supply Console - Cybersun Link" region = ACCESS_REGION_SUPPLY access_type = ACCESS_TYPE_NONE + +/var/const/access_supplylink_obs = "ACCESS_SUPPLY_LINK_OBS" +/datum/access/supplylink_obs + id = access_supplylink_obs + desc = "Supply Console - OBS Link" + region = ACCESS_REGION_SUPPLY + access_type = ACCESS_TYPE_NONE + +/var/const/access_supplylink_reborn_church = "ACCESS_SUPPLY_LINK_REBORN_CHURCH" +/datum/access/supplylink_reborn_church + id = access_supplylink_reborn_church + desc = "Supply Console - Reborn Christian Church Link" + region = ACCESS_REGION_SUPPLY + access_type = ACCESS_TYPE_NONE diff --git a/code/game/objects/effects/decals/contraband.dm b/code/game/objects/effects/decals/contraband.dm index 5a43c71bdab..a1e4eaebc2a 100644 --- a/code/game/objects/effects/decals/contraband.dm +++ b/code/game/objects/effects/decals/contraband.dm @@ -75,6 +75,9 @@ return FALSE +/obj/item/contraband/poster/order_black_of_sun + poster_type = /decl/poster/illegal/order_black_of_sun + //############################## THE ACTUAL DECALS ########################### /obj/structure/sign/poster diff --git a/code/modules/item_worth/worths_list.dm b/code/modules/item_worth/worths_list.dm index f402809b985..db2f42adb94 100644 --- a/code/modules/item_worth/worths_list.dm +++ b/code/modules/item_worth/worths_list.dm @@ -221,7 +221,7 @@ var/list/worths = list( /obj/item/rcd = 1000, /obj/item/rcd_ammo = 50, /obj/item/rsf = 300, - /obj/item/teleportation_scroll = 1000, + /obj/item/teleportation_scroll = 2000, /obj/item/shield/buckler = 300, //More expensive because people don't make them anymore, /obj/item/shield/riot = 150, /obj/item/shield/energy = 1200, @@ -269,7 +269,7 @@ var/list/worths = list( //MELEE, /obj/item/melee/cultblade = 500, /obj/item/melee/energy/axe = 3400, - /obj/item/melee/energy = 1200, + /obj/item/melee/energy = 2000, /obj/item/melee/whip = 200, /obj/item/melee/whip/abyssal = 1025, /obj/item/melee/baton/cattleprod = 30, @@ -335,9 +335,9 @@ var/list/worths = list( /obj/item/clothing/glasses/sunglasses/prescription = 230, /obj/item/clothing/glasses/sunglasses/sechud/goggles = 550, /obj/item/clothing/glasses/sunglasses/sechud = 530, - /obj/item/clothing/glasses/thermal = 1990, - /obj/item/clothing/glasses = 150, + /obj/item/clothing/glasses/thermal = 2200, /obj/item/clothing/glasses/tacgoggles = 1200, + /obj/item/clothing/glasses = 150, //GLOVES, /obj/item/clothing/gloves/boxing = 60, /obj/item/clothing/gloves/color/white = 20, diff --git a/code/modules/trading_stations/_faction.dm b/code/modules/trading_stations/_faction.dm index e519e5126a4..65928863ffa 100644 --- a/code/modules/trading_stations/_faction.dm +++ b/code/modules/trading_stations/_faction.dm @@ -45,6 +45,8 @@ FACTION_ISC = FACTION_STATE_RIVAL, FACTION_NANOTRASEN = FACTION_STATE_ANIMOSITY, FACTION_CYBERSUN = FACTION_STATE_ANIMOSITY, + FACTION_REBORN_CHRISTIAN_CHURCH = FACTION_STATE_ENEMY, + FACTION_TERRASENATE_OBS = FACTION_STATE_ENEMY, ) access_required = access_supplylink_terragov @@ -56,6 +58,8 @@ FACTION_TERRAGOV = FACTION_STATE_RIVAL, FACTION_ISC = FACTION_STATE_RIVAL, FACTION_NANOTRASEN = FACTION_STATE_WELCOMING, + FACTION_REBORN_CHRISTIAN_CHURCH = FACTION_STATE_RIVAL, + FACTION_TERRASENATE_OBS = FACTION_STATE_WAR, ) access_required = access_supplylink_solgov @@ -67,6 +71,8 @@ FACTION_SOL_CENTRAL = FACTION_STATE_RIVAL, FACTION_NANOTRASEN = FACTION_STATE_ALLY, FACTION_CYBERSUN = FACTION_STATE_ALLY, + FACTION_REBORN_CHRISTIAN_CHURCH = FACTION_STATE_ALLY, + FACTION_TERRASENATE_OBS = FACTION_STATE_ENEMY, ) access_required = access_supplylink_isc @@ -80,6 +86,8 @@ FACTION_SOL_CENTRAL = FACTION_STATE_WELCOMING, FACTION_ISC = FACTION_STATE_ALLY, FACTION_CYBERSUN = FACTION_STATE_ALLY, + FACTION_REBORN_CHRISTIAN_CHURCH = FACTION_STATE_ALLY, + FACTION_TERRASENATE_OBS = FACTION_STATE_RIVAL, ) access_required = access_supplylink_nanotrasen @@ -91,9 +99,42 @@ FACTION_SOL_CENTRAL = FACTION_STATE_WELCOMING, FACTION_ISC = FACTION_STATE_ALLY, FACTION_NANOTRASEN = FACTION_STATE_ALLY, + FACTION_REBORN_CHRISTIAN_CHURCH = FACTION_STATE_ALLY, + FACTION_TERRASENATE_OBS = FACTION_STATE_ANIMOSITY, ) access_required = access_supplylink_cybersun // Member states of ISC +/datum/trade_faction/reborcn_church + name = FACTION_REBORN_CHRISTIAN_CHURCH + desc = "A part of the Reborn Christian Church, a fanatical state focused on enforcing the will of Pontifex Maximus." + relationship = list( + FACTION_INDEPENDENT = FACTION_STATE_ANIMOSITY, + FACTION_TERRAGOV = FACTION_STATE_ENEMY, + FACTION_SOL_CENTRAL = FACTION_STATE_RIVAL, + FACTION_ISC = FACTION_STATE_ALLY, + FACTION_NANOTRASEN = FACTION_STATE_ALLY, + FACTION_CYBERSUN = FACTION_STATE_ALLY, + FACTION_TERRASENATE_OBS = FACTION_STATE_ENEMY, + ) + access_required = access_supplylink_reborn_church + // Purely independent states + +// Misc + +/datum/trade_faction/obs + name = FACTION_TERRASENATE_OBS + desc = "A part of the Order of the Black Sun, a xenophobic ultra-nationalist terrorist group." + relationship = list( + FACTION_INDEPENDENT = FACTION_STATE_RIVAL, + FACTION_TERRAGOV = FACTION_STATE_ENEMY, + FACTION_SOL_CENTRAL = FACTION_STATE_WAR, + FACTION_ISC = FACTION_STATE_ENEMY, + FACTION_NANOTRASEN = FACTION_STATE_RIVAL, + // OBS trades more with Cybersun, + FACTION_CYBERSUN = FACTION_STATE_ANIMOSITY, + FACTION_REBORN_CHRISTIAN_CHURCH = FACTION_STATE_ENEMY, + ) + access_required = access_supplylink_obs diff --git a/code/modules/trading_stations/trading_station_types/3_very_rare/obs.dm b/code/modules/trading_stations/trading_station_types/3_very_rare/obs.dm new file mode 100644 index 00000000000..6199785e5ca --- /dev/null +++ b/code/modules/trading_stations/trading_station_types/3_very_rare/obs.dm @@ -0,0 +1,35 @@ +// Sells stolen shit; +// Unlocked inventory contains their own unique items +/datum/trading_station/obs + name_pool = list( + "FTB \"Eclipse\"" = "Free Trade Beacon \"Eclipse\": DATA MISSING | CONTACT SUP-#*@$! Glory to the Order and the new humanity!", + ) + uid = "obs" + unlock_favor = 10000 + faction = FACTION_TERRASENATE_OBS + spawn_probability = 15 + start_hidden = TRUE + markup = 1.5 + inventory = list( + TRADE_CAT_EQUIPMENT = list( + /obj/item/device/personal_shield = GOODS_DEFAULT, + /obj/item/silencer = GOODS_DEFAULT, + /obj/item/clothing/glasses/tacgoggles = GOODS_DEFAULT, + /obj/item/clothing/glasses/thermal = GOODS_DEFAULT, + /obj/item/clothing/glasses/night = GOODS_DEFAULT, + /obj/item/contraband/poster/order_black_of_sun = GOODS_DEFAULT, + ), + TRADE_CAT_CLOTHING = list( + /obj/item/clothing/gloves/thick/combat = GOODS_DEFAULT, + ), + TRADE_CAT_WEAPONS = list( + /obj/item/tank/phoron/onetankbomb = GOODS_DEFAULT, + /obj/item/grenade/frag = GOODS_DEFAULT, + ), + ) + hidden_inventory = list( + TRADE_CAT_VOIDSUIT = list( + /obj/item/clothing/suit/space/void/merc/obs = GOODS_DATA("eclipse void suit", list(1, 3), 4000), + /obj/item/clothing/head/helmet/space/void/merc/obs = GOODS_DATA("eclipse void suit helmet", list(1, 3), 3000), + ), + )