From eaaca202a66b1a8c2f35bcf01b65aee7b188ea19 Mon Sep 17 00:00:00 2001 From: Dahlular <55758850+Dahlular@users.noreply.github.com> Date: Wed, 6 Jul 2022 16:38:30 -0600 Subject: [PATCH] Revert "(CONFIG CHANGE) Updating Economy: Adding Paychecks, and makes Bank Accounts easier to work with" --- code/__DEFINES/economy.dm | 11 ---- code/__DEFINES/subsystems.dm | 61 +++++++++--------- .../configuration/entries/game_options.dm | 52 --------------- code/controllers/subsystem/job.dm | 19 ++---- code/game/machinery/computer/card.dm | 2 +- code/game/objects/items.dm | 5 +- code/game/objects/items/cards_ids.dm | 7 +- code/game/objects/items/cigs_lighters.dm | 1 - code/game/objects/items/mesmetron.dm | 2 +- code/game/objects/items/stacks/cash.dm | 2 +- code/game/objects/items/storage/belt.dm | 2 +- code/game/objects/items/storage/boxes.dm | 6 +- code/game/objects/items/storage/fancy.dm | 9 ++- code/game/objects/items/tools/weldingtool.dm | 3 +- .../antagonists/bloodsucker/bloodsucker_ui.dm | 2 +- code/modules/clothing/gloves/color.dm | 9 +-- code/modules/clothing/head/jobs.dm | 3 +- code/modules/clothing/masks/hailer.dm | 3 +- code/modules/clothing/neck/_neck.dm | 3 +- code/modules/clothing/shoes/miscellaneous.dm | 3 +- code/modules/clothing/suits/jobs.dm | 2 +- code/modules/clothing/suits/miscellaneous.dm | 3 +- code/modules/clothing/under/jobs/civilian.dm | 2 +- code/modules/clothing/under/jobs/security.dm | 8 +-- code/modules/food_and_drinks/drinks/drinks.dm | 17 ++--- .../food_and_drinks/drinks/drinks/bottle.dm | 3 +- .../drinks/drinks/drinkingglass.dm | 5 +- .../modules/food_and_drinks/food/condiment.dm | 3 +- code/modules/food_and_drinks/food/snacks.dm | 2 - .../food_and_drinks/food/snacks_other.dm | 5 +- .../food_and_drinks/food/snacks_vend.dm | 14 ++-- code/modules/jobs/job_types/assistant.dm | 1 + code/modules/jobs/job_types/captain.dm | 2 - code/modules/jobs/job_types/cargo_service.dm | 12 +--- code/modules/jobs/job_types/civilian.dm | 4 -- .../jobs/job_types/civilian_chaplain.dm | 1 - code/modules/jobs/job_types/engineering.dm | 2 - code/modules/jobs/job_types/job.dm | 37 +++++------ code/modules/jobs/job_types/medical.dm | 3 - code/modules/jobs/job_types/science.dm | 2 - code/modules/jobs/job_types/security.dm | 5 -- .../mob/living/carbon/human/human_defines.dm | 1 + .../reagents/reagent_containers/glass.dm | 2 +- .../reagents/reagent_containers/pill.dm | 11 ++-- code/modules/vending/_vending.dm | 18 +++--- config/game_options.txt | 45 ------------- .../code/controllers/subsystem/economy.dm | 60 ++--------------- .../code/game/objects/items/cosmetics.dm | 3 +- .../code/game/objects/items/lovedice.dm | 5 +- hyperstation/code/modules/economy/account.dm | 58 ++++++----------- hyperstation/code/obj/condom.dm | 4 +- hyperstation/code/obj/economy.dm | 25 ++++--- hyperstation/code/obj/fleshlight.dm | 23 +++---- hyperstation/code/obj/kinkyclothes.dm | 12 ++-- hyperstation/code/obj/rope.dm | 3 +- hyperstation/code/obj/sounding.dm | 4 +- hyperstation/code/obj/vibrator.dm | 2 +- .../items/devices/radio/shockcollar.dm | 3 +- sound/machines/twobeep_high.ogg | Bin 5576 -> 0 bytes tgstation.dme | 1 - 60 files changed, 187 insertions(+), 431 deletions(-) delete mode 100644 code/__DEFINES/economy.dm delete mode 100644 sound/machines/twobeep_high.ogg diff --git a/code/__DEFINES/economy.dm b/code/__DEFINES/economy.dm deleted file mode 100644 index e87b19bc4..000000000 --- a/code/__DEFINES/economy.dm +++ /dev/null @@ -1,11 +0,0 @@ -#define ECONOMY_TYPE_ROOKIE "Rookie" -#define ECONOMY_TYPE_DANGEROUS "Dangerous" -#define ECONOMY_TYPE_COMMAND "Command" - -#define ECONOMY_PRICE_DEFAULT 1 -#define ECONOMY_PRICE_LOW 2 -#define ECONOMY_PRICE_HIGH 3 -#define ECONOMY_PRICE_EROTIC 4 -#define ECONOMY_PRICE_EXPENSIVE 5 -#define ECONOMY_PRICE_EXPENSIVE_AF 6 -#define ECONOMY_PRICE_FORCED_FREE 7 //i sure do love force_free'd-ing with items :) diff --git a/code/__DEFINES/subsystems.dm b/code/__DEFINES/subsystems.dm index 57900a9f6..43d17deaa 100644 --- a/code/__DEFINES/subsystems.dm +++ b/code/__DEFINES/subsystems.dm @@ -90,38 +90,37 @@ // Subsystem fire priority, from lowest to highest priority // If the subsystem isn't listed here it's either DEFAULT or PROCESS (if it's a processing subsystem child) -#define FIRE_PRIORITY_PING 10 -#define FIRE_PRIORITY_IDLE_NPC 10 -#define FIRE_PRIORITY_SERVER_MAINT 10 -#define FIRE_PRIORITY_RESEARCH 10 -#define FIRE_PRIORITY_VIS 10 -#define FIRE_PRIORITY_VORE 10 -#define FIRE_PRIORITY_GARBAGE 15 -#define FIRE_PRIORITY_ECONOMY 20 -#define FIRE_PRIORITY_WET_FLOORS 20 -#define FIRE_PRIORITY_AIR 20 -#define FIRE_PRIORITY_PROCESS 25 -#define FIRE_PRIORITY_THROWING 25 -#define FIRE_PRIORITY_SPACEDRIFT 30 -#define FIRE_PRIORITY_FIELDS 30 -#define FIRE_PRIOTITY_SMOOTHING 35 -#define FIRE_PRIORITY_NETWORKS 40 -#define FIRE_PRIORITY_OBJ 40 -#define FIRE_PRIORITY_ACID 40 -#define FIRE_PRIOTITY_BURNING 40 -#define FIRE_PRIORITY_AIR_TURFS 40 -#define FIRE_PRIORITY_DEFAULT 50 -#define FIRE_PRIORITY_PARALLAX 65 -#define FIRE_PRIORITY_NPC 80 -#define FIRE_PRIORITY_FLIGHTPACKS 80 -#define FIRE_PRIORITY_MOBS 100 -#define FIRE_PRIORITY_TGUI 110 -#define FIRE_PRIORITY_TICKER 200 +#define FIRE_PRIORITY_PING 10 +#define FIRE_PRIORITY_IDLE_NPC 10 +#define FIRE_PRIORITY_SERVER_MAINT 10 +#define FIRE_PRIORITY_RESEARCH 10 +#define FIRE_PRIORITY_VIS 10 +#define FIRE_PRIORITY_VORE 10 +#define FIRE_PRIORITY_GARBAGE 15 +#define FIRE_PRIORITY_WET_FLOORS 20 +#define FIRE_PRIORITY_AIR 20 +#define FIRE_PRIORITY_NPC 80 +#define FIRE_PRIORITY_PROCESS 25 +#define FIRE_PRIORITY_THROWING 25 +#define FIRE_PRIORITY_SPACEDRIFT 30 +#define FIRE_PRIORITY_FIELDS 30 +#define FIRE_PRIOTITY_SMOOTHING 35 +#define FIRE_PRIORITY_NETWORKS 40 +#define FIRE_PRIORITY_OBJ 40 +#define FIRE_PRIORITY_ACID 40 +#define FIRE_PRIOTITY_BURNING 40 +#define FIRE_PRIORITY_AIR_TURFS 40 +#define FIRE_PRIORITY_DEFAULT 50 +#define FIRE_PRIORITY_PARALLAX 65 +#define FIRE_PRIORITY_FLIGHTPACKS 80 +#define FIRE_PRIORITY_MOBS 100 +#define FIRE_PRIORITY_TGUI 110 +#define FIRE_PRIORITY_TICKER 200 #define FIRE_PRIORITY_ATMOS_ADJACENCY 300 -#define FIRE_PRIORITY_STATPANEL 390 -#define FIRE_PRIORITY_CHAT 400 -#define FIRE_PRIORITY_OVERLAYS 500 -#define FIRE_PRIORITY_INPUT 1000 // This must always always be the max highest priority. Player input must never be lost. +#define FIRE_PRIORITY_STATPANEL 390 +#define FIRE_PRIORITY_CHAT 400 +#define FIRE_PRIORITY_OVERLAYS 500 +#define FIRE_PRIORITY_INPUT 1000 // This must always always be the max highest priority. Player input must never be lost. // SS runlevels diff --git a/code/controllers/configuration/entries/game_options.dm b/code/controllers/configuration/entries/game_options.dm index f9fa2cdec..1965d4d89 100644 --- a/code/controllers/configuration/entries/game_options.dm +++ b/code/controllers/configuration/entries/game_options.dm @@ -384,55 +384,3 @@ min_val = 0 /datum/config_entry/flag/dynamic_mode - -/datum/config_entry/number/economy_base_payment - config_entry_value = 60 - min_val = 0 - -/datum/config_entry/number/economy_base_pay_ratio - config_entry_value = 6 - min_val = 1 - -/datum/config_entry/number/economy_price_multiplier - config_entry_value = 1 - min_val = 0 - -/datum/config_entry/number/economy_price_low - config_entry_value = 8 - min_val = 0 - -/datum/config_entry/number/economy_price_default - config_entry_value = 15 - min_val = 0 - -/datum/config_entry/number/economy_price_high - config_entry_value = 30 - min_val = 0 - -/datum/config_entry/number/economy_price_erotic - config_entry_value = 25 - min_val = 0 - -/datum/config_entry/number/economy_price_expensive - config_entry_value = 60 - min_val = 0 - -/datum/config_entry/number/economy_price_expensive_af - config_entry_value = 90 - min_val = 0 - -/datum/config_entry/number/economy_job_rate_default - config_entry_value = 1.2 - min_val = 0 - -/datum/config_entry/keyed_list/economy_job_rate - key_mode = KEY_MODE_TEXT - value_mode = VALUE_MODE_NUM - lowercase = FALSE - splitter = "," - -/datum/config_entry/keyed_list/economy_job_rate_area - key_mode = KEY_MODE_TEXT - value_mode = VALUE_MODE_NUM - lowercase = FALSE - splitter = "," diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index e1cc553bd..03c4b69da 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -14,16 +14,9 @@ SUBSYSTEM_DEF(job) var/overflow_role = "Assistant" - var/static/list/economy_multipliers_by_job - var/static/list/economy_multipliers_by_type - /datum/controller/subsystem/job/Initialize(timeofday) SSmapping.HACK_LoadMapConfig() - if(!economy_multipliers_by_job) - economy_multipliers_by_job = CONFIG_GET(keyed_list/economy_job_rate) - if(!economy_multipliers_by_type) - economy_multipliers_by_type = CONFIG_GET(keyed_list/economy_job_rate_area) if(!occupations.len) SetupOccupations() if(CONFIG_GET(flag/load_jobs_from_txt)) @@ -338,7 +331,7 @@ SUBSYSTEM_DEF(job) if((job.title in GLOB.silly_positions) && (player.client.prefs.sillyroles == FALSE)) JobDebug("DO is not whitelisted, Player: [player], Job:[job.title]") - continue + continue if(!job.player_old_enough(player.client)) JobDebug("DO player not old enough, Player: [player], Job:[job.title]") @@ -477,13 +470,13 @@ SUBSYSTEM_DEF(job) job.after_spawn(H, M, joined_late) - //Account ID. ID is handled by outfit initialization + //Account ID. ID is handled by human initialization if(ishuman(H)) var/mob/living/carbon/human/wageslave = H - if(wageslave.wear_id) - var/obj/item/card/id/id_card = wageslave.wear_id - to_chat(M, "Your account ID is [id_card.registered_account.account_id]") - to_chat(M, "You do not have a pin, can set your pin at an ATM.") + to_chat(M, "Your account ID is [wageslave.account_id]") + to_chat(M, "You do not have a pin, can set your pin at an ATM.") + if(H.mind) + H.mind.memory += "Your account ID is [wageslave.account_id].
" return H diff --git a/code/game/machinery/computer/card.dm b/code/game/machinery/computer/card.dm index 1a71a47df..21e10ab86 100644 --- a/code/game/machinery/computer/card.dm +++ b/code/game/machinery/computer/card.dm @@ -254,7 +254,7 @@ GLOBAL_VAR_INIT(time_last_changed_position, 0) else if(mode == 4) dat += {"Return "} - for(var/datum/bank_account/account as anything in SSeconomy.bank_accounts) + for(var/datum/bank_account/account in SSeconomy.bank_accounts) dat += {"" dat += "" diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index c4e7dfee9..0daccde53 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -118,9 +118,8 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) var/list/grind_results //A reagent list containing the reagents this item produces when ground up in a grinder - this can be an empty list to allow for reagent transferring only var/list/juice_results //A reagent list containing blah blah... but when JUICED in a grinder! - //Hyper Economy - var/economy_type = 0 - var/economy_price_mul = 1 + //Hyper economy + var/price = 0 //Hyper, for clothes that reveal your behind! butt stuff, you know how it is. var/do_not_cover_butt = FALSE diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm index 7178b7fa7..550a461ed 100644 --- a/code/game/objects/items/cards_ids.dm +++ b/code/game/objects/items/cards_ids.dm @@ -171,10 +171,10 @@ var/registered_name = null // The name registered_name on the card var/assignment = null var/access_txt // mapping aid + var/datum/bank_account/registered_account var/uses_overlays = TRUE var/uses_assignment = TRUE var/icon/cached_flat_icon - var/datum/bank_account/registered_account /obj/item/card/id/Initialize(mapload) . = ..() @@ -200,9 +200,6 @@ if(mining_points) . += "There's [mining_points] mining equipment redemption point\s loaded onto this card." -/obj/item/card/id/proc/create_bank_account(owner, job_assignment) - registered_account = new/datum/bank_account(owner, job_assignment, src) - /obj/item/card/id/GetAccess() return access @@ -646,7 +643,7 @@ icon_state = "retrosci" uses_overlays = FALSE uses_assignment = FALSE - + /obj/item/card/id/away/snowdin/med name = "Arctic Station Doctor's ID card" desc = "A faded Arctic Station ID card. You can make out the rank \"Doctor\"." diff --git a/code/game/objects/items/cigs_lighters.dm b/code/game/objects/items/cigs_lighters.dm index 16c65e254..f9e4d5ca3 100644 --- a/code/game/objects/items/cigs_lighters.dm +++ b/code/game/objects/items/cigs_lighters.dm @@ -510,7 +510,6 @@ CIGARETTE PACKETS ARE IN FANCY.DM resistance_flags = FIRE_PROOF price = 1 light_color = LIGHT_COLOR_FIRE - var/lit = 0 var/fancy = TRUE var/overlay_state diff --git a/code/game/objects/items/mesmetron.dm b/code/game/objects/items/mesmetron.dm index d3cd77ac1..05eb013fa 100644 --- a/code/game/objects/items/mesmetron.dm +++ b/code/game/objects/items/mesmetron.dm @@ -7,9 +7,9 @@ w_class = WEIGHT_CLASS_SMALL throw_range = 7 throw_speed = 3 - economy_type = ECONOMY_PRICE_EROTIC var/mob/living/carbon/subject = null var/closed = FALSE + price = 10 //Hypnotize someone diff --git a/code/game/objects/items/stacks/cash.dm b/code/game/objects/items/stacks/cash.dm index 8b9f89ed1..e7de4e6a1 100644 --- a/code/game/objects/items/stacks/cash.dm +++ b/code/game/objects/items/stacks/cash.dm @@ -20,7 +20,7 @@ /obj/item/stack/spacecash/proc/update_desc() var/total_worth = amount*value - desc = "An outdated form of currency, It's worth [total_worth] credit[( total_worth > 1 ) ? "s" : ""]" + desc = "A outdated form of currency, It's worth [total_worth] credit[( total_worth > 1 ) ? "s" : ""]" /obj/item/stack/spacecash/merge(obj/item/stack/S) diff --git a/code/game/objects/items/storage/belt.dm b/code/game/objects/items/storage/belt.dm index eb7447f77..0196daee0 100644 --- a/code/game/objects/items/storage/belt.dm +++ b/code/game/objects/items/storage/belt.dm @@ -240,7 +240,7 @@ desc = "Holds a variety of gear for \"alternative\" peacekeeping." icon_state = "slutbelt" item_state = "slut" - economy_type = ECONOMY_PRICE_EROTIC + price = 5 obj/item/storage/belt/slut/ComponentInitialize() . = ..() diff --git a/code/game/objects/items/storage/boxes.dm b/code/game/objects/items/storage/boxes.dm index b2acc45d8..899617fd1 100644 --- a/code/game/objects/items/storage/boxes.dm +++ b/code/game/objects/items/storage/boxes.dm @@ -418,8 +418,7 @@ desc = "Instructions:Heat in microwave. Product will cool if not eaten within seven minutes." icon_state = "donkpocketbox" illustration=null - economy_type = ECONOMY_PRICE_EXPENSIVE_AF - economy_price_mul = 0.85 + price = 10 var/donktype = /obj/item/reagent_containers/food/snacks/donkpocket var/warmtype = /obj/item/reagent_containers/food/snacks/donkpocket/warm @@ -676,10 +675,9 @@ item_state = "zippo" w_class = WEIGHT_CLASS_TINY slot_flags = ITEM_SLOT_BELT + price = 2 drop_sound = 'sound/items/handling/matchbox_drop.ogg' pickup_sound = 'sound/items/handling/matchbox_pickup.ogg' - economy_type = ECONOMY_PRICE_LOW - economy_price_mul = 0.5 /obj/item/storage/box/matches/ComponentInitialize() . = ..() diff --git a/code/game/objects/items/storage/fancy.dm b/code/game/objects/items/storage/fancy.dm index fb4ccdeed..2d1b0b57a 100644 --- a/code/game/objects/items/storage/fancy.dm +++ b/code/game/objects/items/storage/fancy.dm @@ -136,7 +136,7 @@ slot_flags = ITEM_SLOT_BELT icon_type = "cigarette" spawn_type = /obj/item/clothing/mask/cigarette/space_cigarette - economy_type = ECONOMY_PRICE_LOW + price = 5 /obj/item/storage/fancy/cigarettes/ComponentInitialize() . = ..() @@ -231,7 +231,7 @@ desc = "Smoked by the truly robust." icon_state = "robustg" spawn_type = /obj/item/clothing/mask/cigarette/robustgold - economy_price_mul = 1.5 + price = 6 /obj/item/storage/fancy/cigarettes/cigpack_carp name = "\improper Carp Classic packet" @@ -283,7 +283,7 @@ icon_state = "cig_paper_pack" icon_type = "rolling paper" spawn_type = /obj/item/rollingpaper - economy_price_mul = 0.25 + price = 2 /obj/item/storage/fancy/rollingpapers/ComponentInitialize() . = ..() @@ -308,8 +308,7 @@ w_class = WEIGHT_CLASS_NORMAL icon_type = "premium cigar" spawn_type = /obj/item/clothing/mask/cigarette/cigar - economy_type = ECONOMY_PRICE_EXPENSIVE - economy_price_mul = 0.75 + price = 8 /obj/item/storage/fancy/cigarettes/cigars/ComponentInitialize() . = ..() diff --git a/code/game/objects/items/tools/weldingtool.dm b/code/game/objects/items/tools/weldingtool.dm index ea1708a47..876f890c5 100644 --- a/code/game/objects/items/tools/weldingtool.dm +++ b/code/game/objects/items/tools/weldingtool.dm @@ -343,8 +343,7 @@ item_state = "upindwelder" max_fuel = 80 materials = list(MAT_METAL=70, MAT_GLASS=120) - economy_type = ECONOMY_PRICE_EXPENSIVE_AF - economy_price_mul = 1.5 + price = 10 /obj/item/weldingtool/experimental name = "experimental welding tool" diff --git a/code/modules/antagonists/bloodsucker/bloodsucker_ui.dm b/code/modules/antagonists/bloodsucker/bloodsucker_ui.dm index e1436daf2..c72ad2ca9 100644 --- a/code/modules/antagonists/bloodsucker/bloodsucker_ui.dm +++ b/code/modules/antagonists/bloodsucker/bloodsucker_ui.dm @@ -93,7 +93,7 @@ dat += "
Bank Accounts
[account.account_holder] - [account.account_id]"} dat += "Assign to ID
" dat += "" if(onstation && C && C.registered_account) - dat += "Balance: $[account.balance]" + dat += "Balance: $[account.account_balance]" if(istype(src, /obj/machinery/vending/snack)) dat += "

Chef's Food Selection

" dat += "
" diff --git a/code/modules/clothing/gloves/color.dm b/code/modules/clothing/gloves/color.dm index 441e33847..9b82fc1e3 100644 --- a/code/modules/clothing/gloves/color.dm +++ b/code/modules/clothing/gloves/color.dm @@ -8,8 +8,7 @@ item_color="yellow" resistance_flags = NONE var/can_be_cut = 1 - economy_type = ECONOMY_PRICE_EXPENSIVE_AF - economy_price_mul = 0.85 + price = 10 /obj/item/clothing/gloves/color/yellow/ce //funky looking, basically combat gloves desc = "Special Insulated gloves with pricy thermal shielding normally only found in combat gloves." @@ -35,8 +34,7 @@ item_color="yellow" resistance_flags = NONE var/can_be_cut = 1 - economy_type = ECONOMY_PRICE_LOW - economy_price_mul = 1.2 + price = 5 /obj/item/clothing/gloves/color/fyellow/New() ..() @@ -131,8 +129,7 @@ siemens_coefficient = 0 permeability_coefficient = 0.05 resistance_flags = NONE - economy_type = ECONOMY_PRICE_EXPENSIVE_AF - economy_price_mul = 0.85 + price = 12 /obj/item/clothing/gloves/color/rainbow name = "rainbow gloves" diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm index dab47cd05..3acdb8335 100644 --- a/code/modules/clothing/head/jobs.dm +++ b/code/modules/clothing/head/jobs.dm @@ -260,8 +260,7 @@ name = "security's bitch beret" desc = "A softer beret with the word 'BITCH' embroidered on it in pink thread." icon_state = "bitchberet" - economy_type = ECONOMY_PRICE_EROTIC - economy_price_mul = 0.85 + price = 5 //Curator /obj/item/clothing/head/fedora/curator diff --git a/code/modules/clothing/masks/hailer.dm b/code/modules/clothing/masks/hailer.dm index 4860e809e..5d53688cd 100644 --- a/code/modules/clothing/masks/hailer.dm +++ b/code/modules/clothing/masks/hailer.dm @@ -45,8 +45,7 @@ item_state = "sluthailer" aggressiveness = 0 //can't have your pets being mean! actions_types = list(/datum/action/item_action/halt) - economy_type = ECONOMY_PRICE_EXPENSIVE - economy_price_mul = 0.85 + price = 5 /obj/item/clothing/mask/gas/sechailer/slut/attack_hand(mob/user) if(iscarbon(user)) diff --git a/code/modules/clothing/neck/_neck.dm b/code/modules/clothing/neck/_neck.dm index 3c1ff4615..3f7909b1e 100644 --- a/code/modules/clothing/neck/_neck.dm +++ b/code/modules/clothing/neck/_neck.dm @@ -302,5 +302,4 @@ icon = 'icons/obj/clothing/neck.dmi' icon_state = "bling" item_color = "bling" - economy_type = ECONOMY_PRICE_EXPENSIVE - economy_price_mul = 1.25 + price = 30 \ No newline at end of file diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index 2f8ce402d..13eb8eacc 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -137,8 +137,7 @@ desc = "A pair of knee-high jackboots, complete with heels. All style, all the time." icon_state = "jackboots-tall" item_state = "jackboots-tall" - economy_type = ECONOMY_PRICE_DEFAULT - economy_price_mul = 0.75 + price = 5 /obj/item/clothing/shoes/jackboots/fast slowdown = -1 diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index a59c1db0f..e193aa3e4 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -169,7 +169,7 @@ cold_protection = CHEST|LEGS|ARMS heat_protection = CHEST|LEGS|ARMS mutantrace_variation = NO_MUTANTRACE_VARIATION //you don't need it - economy_type = ECONOMY_PRICE_EXPENSIVE + price = 5 //Surgeon /obj/item/clothing/suit/apron/surgical diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index 23a6c63aa..b56cb7a95 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -670,8 +670,7 @@ icon_state = "coatsecuritypink" item_state = "coatsecuritypink" hoodtype = /obj/item/clothing/head/hooded/winterhood/security/pink - economy_type = ECONOMY_PRICE_EXPENSIVE - economy_price_mul = 0.85 + price = 5 /obj/item/clothing/suit/hooded/wintercoat/security/Initialize() . = ..() diff --git a/code/modules/clothing/under/jobs/civilian.dm b/code/modules/clothing/under/jobs/civilian.dm index 94efb5686..6b5eea68b 100644 --- a/code/modules/clothing/under/jobs/civilian.dm +++ b/code/modules/clothing/under/jobs/civilian.dm @@ -381,7 +381,7 @@ item_state = "b_suit" item_color = "galaxy_blue" can_adjust = FALSE - economy_type = ECONOMY_PRICE_DEFAULT + price = 10 /obj/item/clothing/under/lawyer/galaxy_red name = "\improper Pulsar Gonne" diff --git a/code/modules/clothing/under/jobs/security.dm b/code/modules/clothing/under/jobs/security.dm index be6a42bae..722c71640 100644 --- a/code/modules/clothing/under/jobs/security.dm +++ b/code/modules/clothing/under/jobs/security.dm @@ -30,8 +30,7 @@ icon_state = "rsecuritypink" item_state = "r_suit" item_color = "rsecuritypink" - economy_type = ECONOMY_PRICE_DEFAULT - economy_price_mul = 1.35 + price = 3 /obj/item/clothing/under/rank/security/skirt name = "security jumpskirt" desc = "A \"tactical\" security jumpsuit with the legs replaced by a skirt." @@ -48,8 +47,7 @@ item_state = "secslutskirt" item_color = null //i dont understand what item_color even is, apparently setting it to null means it won't change color in a washing machine? mutantrace_variation = NO_MUTANTRACE_VARIATION //look at the first two comments in vg_under.dm - economy_type = ECONOMY_PRICE_EROTIC - economy_price_mul = 0.75 + price = 3 /obj/item/clothing/under/rank/security/skirt/slut/pink desc = "A \"\"\"tactical\"\"\" security jumpsuit with the legs replaced by a skirt. No matter how you adjust it, it always feels a little too small. This one seems to have an experimental color scheme." icon_state = "secslutskirtpink" @@ -63,7 +61,7 @@ can_adjust = FALSE body_parts_covered = CHEST|GROIN mutantrace_variation = NO_MUTANTRACE_VARIATION - economy_type = ECONOMY_PRICE_EROTIC + price = 5 /obj/item/clothing/under/rank/warden diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm index 2e4818df7..7cb5e3df4 100644 --- a/code/modules/food_and_drinks/drinks/drinks.dm +++ b/code/modules/food_and_drinks/drinks/drinks.dm @@ -217,7 +217,7 @@ resistance_flags = FREEZE_PROOF isGlass = FALSE foodtype = BREAKFAST - economy_type = ECONOMY_PRICE_LOW + price = 2 //Used by MREs /obj/item/reagent_containers/food/drinks/coffee/type2 @@ -241,7 +241,7 @@ icon_state = "tea" item_state = "coffee" spillable = TRUE - economy_type = ECONOMY_PRICE_LOW + price = 2 /* Doesn't exist lol /datum/chemical_reaction/catnip_tea @@ -252,7 +252,7 @@ */ /obj/item/reagent_containers/food/drinks/mug/on_reagent_change(changetype) - cut_overlays() + cut_overlays() if(reagents.total_volume) var/mutable_appearance/MA = mutable_appearance(icon,"mugoverlay") MA.color = mix_color_from_reagents(reagents.reagent_list) @@ -265,7 +265,7 @@ icon_state = "tea" desc = "An insult to Duke Purple is an insult to the Space Queen! Any proper gentleman will fight you, if you sully this tea." list_reagents = list(/datum/reagent/consumable/tea = 30) - economy_type = ECONOMY_PRICE_LOW + price = 2 /obj/item/reagent_containers/food/drinks/mug/coco name = "Dutch hot coco" @@ -284,8 +284,7 @@ list_reagents = list(/datum/reagent/consumable/dry_ramen = 30) foodtype = GRAIN isGlass = FALSE - economy_type = ECONOMY_PRICE_DEFAULT - economy_price_mul = 1.5 + price = 3 /obj/item/reagent_containers/food/drinks/beer name = "space beer" @@ -424,8 +423,7 @@ reagent_flags = NONE spillable = FALSE isGlass = FALSE - economy_type = ECONOMY_PRICE_LOW - economy_price_mul = 0.8 + price = 2 /obj/item/reagent_containers/food/drinks/soda_cans/suicide_act(mob/living/carbon/user) user.visible_message("[user] is trying to eat \the [src]! It looks like [user.p_theyre()] trying to commit suicide!") @@ -550,5 +548,4 @@ icon_state = "menergy" list_reagents = list(/datum/reagent/consumable/monkey_energy = 50) foodtype = SUGAR - economy_type = ECONOMY_PRICE_EXPENSIVE //same as insulated gloves but slightly cheaper given the nature of these - economy_price_mul = 0.75 + price = 3 diff --git a/code/modules/food_and_drinks/drinks/drinks/bottle.dm b/code/modules/food_and_drinks/drinks/drinks/bottle.dm index 1a2ebce8c..623179f8f 100644 --- a/code/modules/food_and_drinks/drinks/drinks/bottle.dm +++ b/code/modules/food_and_drinks/drinks/drinks/bottle.dm @@ -416,8 +416,7 @@ isGlass = FALSE list_reagents = list(/datum/reagent/consumable/cream = 100) foodtype = DAIRY - economy_type = ECONOMY_PRICE_LOW - economy_price_mul = 1.5 + price = 3 /obj/item/reagent_containers/food/drinks/bottle/tomatojuice name = "tomato juice" diff --git a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm index 86193090b..95b3e8dbc 100644 --- a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm +++ b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm @@ -93,11 +93,10 @@ /obj/item/reagent_containers/food/drinks/drinkingglass/filled/nuka_cola name = "Nuka Cola" list_reagents = list(/datum/reagent/consumable/nuka_cola = 50) - economy_type = ECONOMY_PRICE_DEFAULT - economy_price_mul = 1.5 + price = 7 /obj/item/reagent_containers/food/drinks/drinkingglass/filled/syndicatebomb - name = "Syndicate Bomb" + name = "Syndicat Bomb" list_reagents = list(/datum/reagent/consumable/ethanol/syndicatebomb = 50) /obj/item/reagent_containers/food/drinks/drinkingglass/attackby(obj/item/I, mob/user, params) diff --git a/code/modules/food_and_drinks/food/condiment.dm b/code/modules/food_and_drinks/food/condiment.dm index a33ac1eca..69d943681 100644 --- a/code/modules/food_and_drinks/food/condiment.dm +++ b/code/modules/food_and_drinks/food/condiment.dm @@ -186,8 +186,7 @@ righthand_file = 'icons/mob/inhands/equipment/kitchen_righthand.dmi' list_reagents = list(/datum/reagent/consumable/milk = 50) possible_states = list() - economy_type = ECONOMY_PRICE_LOW - economy_price_mul = 1.5 + price = 5 /obj/item/reagent_containers/food/condiment/flour name = "flour sack" diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm index e296d614f..895b51fc6 100644 --- a/code/modules/food_and_drinks/food/snacks.dm +++ b/code/modules/food_and_drinks/food/snacks.dm @@ -35,8 +35,6 @@ All foods are distributed among various categories. Use common sense. righthand_file = 'icons/mob/inhands/misc/food_righthand.dmi' obj_flags = UNIQUE_RENAME grind_results = list() //To let them be ground up to transfer their reagents - economy_type = ECONOMY_PRICE_LOW - economy_price_mul = 1.5 var/bitesize = 2 var/bitecount = 0 var/trash = null diff --git a/code/modules/food_and_drinks/food/snacks_other.dm b/code/modules/food_and_drinks/food/snacks_other.dm index c7493608e..08ff096af 100644 --- a/code/modules/food_and_drinks/food/snacks_other.dm +++ b/code/modules/food_and_drinks/food/snacks_other.dm @@ -59,8 +59,7 @@ tastes = list("chocolate" = 1) foodtype = JUNKFOOD | SUGAR dunkable = TRUE - economy_type = ECONOMY_PRICE_LOW - economy_price_mul = 1.5 + price = 2 /obj/item/reagent_containers/food/snacks/hugemushroomslice @@ -664,4 +663,4 @@ else if (icon_state != "marshmallowrburned") icon_state = "marshmallowburned" desc = "[initial(desc)] It looks just right for eating!" - tastes = list("marshmallow" = 1, "cream" = 1) + tastes = list("marshmallow" = 1, "cream" = 1) diff --git a/code/modules/food_and_drinks/food/snacks_vend.dm b/code/modules/food_and_drinks/food/snacks_vend.dm index a3aa7f9ea..e96e92d87 100644 --- a/code/modules/food_and_drinks/food/snacks_vend.dm +++ b/code/modules/food_and_drinks/food/snacks_vend.dm @@ -12,6 +12,7 @@ filling_color = "#D2691E" tastes = list("candy" = 1) foodtype = JUNKFOOD | SUGAR + price = 2 /obj/item/reagent_containers/food/snacks/sosjerky name = "\improper Scaredy's Private Reserve Beef Jerky" @@ -23,6 +24,7 @@ filling_color = "#8B0000" tastes = list("dried meat" = 1) foodtype = JUNKFOOD | MEAT | SUGAR + price = 3 /obj/item/reagent_containers/food/snacks/sosjerky/healthy name = "homemade beef jerky" @@ -41,6 +43,7 @@ filling_color = "#FFD700" tastes = list("salt" = 1, "crisps" = 1) foodtype = JUNKFOOD | FRIED + price = 2 /obj/item/reagent_containers/food/snacks/no_raisin name = "4no raisins" @@ -52,6 +55,7 @@ filling_color = "#8B0000" tastes = list("dried raisins" = 1) foodtype = JUNKFOOD | FRUIT | SUGAR + price = 2 /obj/item/reagent_containers/food/snacks/no_raisin/healthy name = "homemade raisins" @@ -68,6 +72,7 @@ junkiness = 25 filling_color = "#FFD700" foodtype = JUNKFOOD | GRAIN | SUGAR + price = 4 /obj/item/reagent_containers/food/snacks/cheesiehonkers name = "cheesie honkers" @@ -79,6 +84,7 @@ filling_color = "#FFD700" tastes = list("cheese" = 5, "crisps" = 2) foodtype = JUNKFOOD | DAIRY | SUGAR + price = 4 /obj/item/reagent_containers/food/snacks/soyfood name = "Soyfood" @@ -90,7 +96,7 @@ filling_color = "#FFD700" tastes = list("nanomachines" = 2, "soybeans" = 5) foodtype = JUNKFOOD | DAIRY | GRAIN - economy_price_mul = 2 + price = 3 /obj/item/reagent_containers/food/snacks/syndicake name = "syndi-cakes" @@ -101,7 +107,7 @@ filling_color = "#F5F5DC" tastes = list("sweetness" = 3, "cake" = 1) foodtype = GRAIN | FRUIT | VEGETABLES | ANTITOXIC - economy_price_mul = 2.5 + price = 5 /obj/item/reagent_containers/food/snacks/carbonnanotube_noodles name = "carbon nanotube noodles" @@ -113,7 +119,7 @@ filling_color = "#FFD700" tastes = list("charcoal" = 1, "spiciness" = 3, "soysauce" = 3) foodtype = GRAIN | VEGETABLES - economy_price_mul = 2.5 + price = 3 /obj/item/reagent_containers/food/snacks/bird_seed name = "Sunflower Seeds" @@ -124,4 +130,4 @@ filling_color = "#b497162f" tastes = list("olives" = 1, "Nuts" = 3, "spice" = 2) foodtype = GRAIN | VEGETABLES - economy_price_mul = 2.5 \ No newline at end of file + price = 3 \ No newline at end of file diff --git a/code/modules/jobs/job_types/assistant.dm b/code/modules/jobs/job_types/assistant.dm index cecc7d3e7..3cd6fc77a 100644 --- a/code/modules/jobs/job_types/assistant.dm +++ b/code/modules/jobs/job_types/assistant.dm @@ -15,6 +15,7 @@ Assistant outfit = /datum/outfit/job/assistant antag_rep = 7 + /datum/job/assistant/get_access() if(CONFIG_GET(flag/assistants_have_maint_access) || !CONFIG_GET(flag/jobs_have_minimal_access)) //Config has assistant maint access set . = ..() diff --git a/code/modules/jobs/job_types/captain.dm b/code/modules/jobs/job_types/captain.dm index 13ff8523c..f568378c1 100644 --- a/code/modules/jobs/job_types/captain.dm +++ b/code/modules/jobs/job_types/captain.dm @@ -16,7 +16,6 @@ Captain exp_requirements = 3000 exp_type = EXP_TYPE_COMMAND exp_type_department = EXP_TYPE_COMMAND - economy_type = ECONOMY_TYPE_COMMAND outfit = /datum/outfit/job/captain @@ -97,7 +96,6 @@ Head of Personnel exp_requirements = 1500 exp_type = EXP_TYPE_SERVICE exp_type_department = EXP_TYPE_SERVICE - economy_type = ECONOMY_TYPE_COMMAND outfit = /datum/outfit/job/hop diff --git a/code/modules/jobs/job_types/cargo_service.dm b/code/modules/jobs/job_types/cargo_service.dm index 6d6bd8c9c..9dec1a40a 100644 --- a/code/modules/jobs/job_types/cargo_service.dm +++ b/code/modules/jobs/job_types/cargo_service.dm @@ -15,7 +15,6 @@ Quartermaster is a real head fuck you minimal_player_age = 7 exp_type = EXP_TYPE_SUPPLY exp_type_department = EXP_TYPE_SUPPLY - economy_type = ECONOMY_TYPE_COMMAND exp_requirements = 1200 outfit = /datum/outfit/job/quartermaster @@ -89,7 +88,6 @@ Shaft Miner exp_requirements = 600 exp_type = EXP_TYPE_CREW exp_type_department = EXP_TYPE_SUPPLY - economy_type = ECONOMY_TYPE_DANGEROUS outfit = /datum/outfit/job/miner @@ -169,7 +167,6 @@ Bartender spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#bbe291" - economy_type = ECONOMY_TYPE_ROOKIE outfit = /datum/outfit/job/bartender @@ -202,15 +199,13 @@ Cook spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#bbe291" - economy_type = ECONOMY_TYPE_ROOKIE + var/cooks = 0 //Counts cooks amount outfit = /datum/outfit/job/cook access = list(ACCESS_HYDROPONICS, ACCESS_BAR, ACCESS_KITCHEN, ACCESS_MORGUE, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_KITCHEN, ACCESS_MORGUE, ACCESS_MINERAL_STOREROOM) - var/cooks = 0 //Counts cooks amount - /datum/outfit/job/cook name = "Cook" jobtype = /datum/job/cook @@ -257,7 +252,6 @@ Botanist spawn_positions = 2 supervisors = "the head of personnel" selection_color = "#bbe291" - economy_type = ECONOMY_TYPE_ROOKIE outfit = /datum/outfit/job/botanist @@ -296,15 +290,13 @@ Janitor spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#bbe291" - economy_type = ECONOMY_TYPE_ROOKIE + var/global/janitors = 0 outfit = /datum/outfit/job/janitor access = list(ACCESS_JANITOR, ACCESS_MAINT_TUNNELS, ACCESS_MINERAL_STOREROOM) minimal_access = list(ACCESS_JANITOR, ACCESS_MAINT_TUNNELS, ACCESS_MINERAL_STOREROOM) - var/global/janitors = 0 - /datum/outfit/job/janitor name = "Janitor" jobtype = /datum/job/janitor diff --git a/code/modules/jobs/job_types/civilian.dm b/code/modules/jobs/job_types/civilian.dm index 64c66734b..bceea3814 100644 --- a/code/modules/jobs/job_types/civilian.dm +++ b/code/modules/jobs/job_types/civilian.dm @@ -11,7 +11,6 @@ Clown spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#dddddd" - economy_type = ECONOMY_TYPE_ROOKIE outfit = /datum/outfit/job/clown @@ -79,7 +78,6 @@ Mime spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#dddddd" - economy_type = ECONOMY_TYPE_ROOKIE outfit = /datum/outfit/job/mime @@ -132,7 +130,6 @@ Curator spawn_positions = 1 supervisors = "the head of personnel" selection_color = "#dddddd" - economy_type = ECONOMY_TYPE_ROOKIE outfit = /datum/outfit/job/curator @@ -176,7 +173,6 @@ Lawyer spawn_positions = 2 supervisors = "the head of personnel" selection_color = "#dddddd" - economy_type = ECONOMY_TYPE_ROOKIE var/lawyers = 0 //Counts lawyer amount outfit = /datum/outfit/job/lawyer diff --git a/code/modules/jobs/job_types/civilian_chaplain.dm b/code/modules/jobs/job_types/civilian_chaplain.dm index 4b686924f..5f3daf1ba 100644 --- a/code/modules/jobs/job_types/civilian_chaplain.dm +++ b/code/modules/jobs/job_types/civilian_chaplain.dm @@ -13,7 +13,6 @@ Chaplain supervisors = "the head of personnel" selection_color = "#dddddd" custom_spawn_text = "You're playing a job that is essential for when the station deals with paranormal threats. While you have access to weapons, armor and tools such as your nullrod and bible, this does not mean you should hunt those threats unless warranted. If you have any questions, don't hesitate to ask mentors." - economy_type = ECONOMY_TYPE_ROOKIE outfit = /datum/outfit/job/chaplain diff --git a/code/modules/jobs/job_types/engineering.dm b/code/modules/jobs/job_types/engineering.dm index d7529e909..ce36edcc3 100644 --- a/code/modules/jobs/job_types/engineering.dm +++ b/code/modules/jobs/job_types/engineering.dm @@ -17,7 +17,6 @@ Chief Engineer exp_requirements = 1500 exp_type = EXP_TYPE_ENGINEERING exp_type_department = EXP_TYPE_ENGINEERING - economy_type = ECONOMY_TYPE_COMMAND outfit = /datum/outfit/job/ce @@ -190,7 +189,6 @@ Junior Engineer selection_color = "#fff5cc" exp_requirements = 120 exp_type = EXP_TYPE_CREW - economy_type = ECONOMY_TYPE_ROOKIE outfit = /datum/outfit/job/engineer/junior diff --git a/code/modules/jobs/job_types/job.dm b/code/modules/jobs/job_types/job.dm index ea7af49ea..79711fd1a 100644 --- a/code/modules/jobs/job_types/job.dm +++ b/code/modules/jobs/job_types/job.dm @@ -61,23 +61,11 @@ var/list/alt_titles = list() - /// A multiplier for how much a person gets each paycheck - var/base_paycheck_multiplier = 1.2 - /// The "type" of economy this job falls under - var/economy_type - var/override_roundstart_spawn = null //Where the player spawns at roundstart if defined //whitelisting var/whitelist_type = "" -/datum/job/New() - base_paycheck_multiplier = CONFIG_GET(number/economy_job_rate_default) - if(SSjob.economy_multipliers_by_job[title]) - base_paycheck_multiplier *= SSjob.economy_multipliers_by_job[title] - if(SSjob.economy_multipliers_by_type[economy_type]) - base_paycheck_multiplier *= SSjob.economy_multipliers_by_type[economy_type] - //Only override this proc //H is usually a human unless an /equip override transformed it /datum/job/proc/after_spawn(mob/living/H, mob/M, latejoin = FALSE) @@ -107,6 +95,15 @@ if(!H) return FALSE + if(!visualsOnly) + var/datum/bank_account/bank_account = new(H.real_name, src) + bank_account.account_holder = H.real_name + bank_account.account_job = src + bank_account.account_id = rand(111111,999999) //give account ID! + //bank_account.account_pin = rand(1000,9999) //give random pin! + bank_account.account_balance = 80 + H.account_id = bank_account.account_id + if(CONFIG_GET(flag/enforce_human_authority) && (title in GLOB.command_positions)) if(H.dna.species.id != "human") H.set_species(/datum/species/human) @@ -125,14 +122,14 @@ /datum/job/proc/get_access() if(!config) //Needed for robots. - return minimal_access.Copy() + return src.minimal_access.Copy() . = list() if(CONFIG_GET(flag/jobs_have_minimal_access)) - . = minimal_access.Copy() + . = src.minimal_access.Copy() else - . = access.Copy() + . = src.access.Copy() if(CONFIG_GET(flag/everyone_has_maint_access)) //Config has global maint access set . |= list(ACCESS_MAINT_TUNNELS) @@ -236,8 +233,8 @@ else H.real_name = "[J.title] #[rand(10000, 99999)]" - var/client/preference_source = H.client var/obj/item/card/id/C = H.wear_id + var/client/preference_source = H.client if(istype(C)) C.access = J.get_access() shuffle_inplace(C.access) // Shuffle access list to make NTNet passkeys less predictable @@ -248,8 +245,12 @@ else C.update_label() - C.create_bank_account(H, J) - + for(var/A in SSeconomy.bank_accounts) + var/datum/bank_account/B = A + if(B.account_id == H.account_id) + C.registered_account = B + B.bank_cards += C + break H.sec_hud_set_ID() var/obj/item/pda/PDA = H.get_item_by_slot(pda_slot) diff --git a/code/modules/jobs/job_types/medical.dm b/code/modules/jobs/job_types/medical.dm index a9c28619c..7c98d6640 100644 --- a/code/modules/jobs/job_types/medical.dm +++ b/code/modules/jobs/job_types/medical.dm @@ -17,7 +17,6 @@ Chief Medical Officer exp_requirements = 1500 exp_type = EXP_TYPE_MEDICAL exp_type_department = EXP_TYPE_MEDICAL - economy_type = ECONOMY_TYPE_COMMAND outfit = /datum/outfit/job/cmo @@ -238,7 +237,6 @@ Junior Doctor selection_color = "#ffeef0" exp_requirements = 120 exp_type = EXP_TYPE_CREW - economy_type = ECONOMY_TYPE_ROOKIE outfit = /datum/outfit/job/doctor/junior @@ -280,7 +278,6 @@ Psychologist selection_color = "#ffeef0" exp_requirements = 240 exp_type = EXP_TYPE_CREW - economy_type = ECONOMY_TYPE_ROOKIE outfit = /datum/outfit/job/doctor/psychologist diff --git a/code/modules/jobs/job_types/science.dm b/code/modules/jobs/job_types/science.dm index 30934b5ae..fd72fbfe2 100644 --- a/code/modules/jobs/job_types/science.dm +++ b/code/modules/jobs/job_types/science.dm @@ -17,7 +17,6 @@ Research Director exp_requirements = 1500 exp_type = EXP_TYPE_SCIENCE exp_type_department = EXP_TYPE_SCIENCE - economy_type = ECONOMY_TYPE_COMMAND outfit = /datum/outfit/job/rd @@ -155,7 +154,6 @@ Junior Scientist selection_color = "#ffeeff" exp_requirements = 120 exp_type = EXP_TYPE_CREW - economy_type = ECONOMY_TYPE_ROOKIE outfit = /datum/outfit/job/scientist/junior diff --git a/code/modules/jobs/job_types/security.dm b/code/modules/jobs/job_types/security.dm index 6b83b0e55..c199641ff 100644 --- a/code/modules/jobs/job_types/security.dm +++ b/code/modules/jobs/job_types/security.dm @@ -23,7 +23,6 @@ Head of Security exp_requirements = 2000 exp_type = EXP_TYPE_SECURITY exp_type_department = EXP_TYPE_SECURITY - economy_type = ECONOMY_TYPE_COMMAND outfit = /datum/outfit/job/hos @@ -92,7 +91,6 @@ Warden exp_requirements = 720 exp_type = EXP_TYPE_SECURITY exp_type_department = EXP_TYPE_SECURITY - economy_type = ECONOMY_TYPE_DANGEROUS outfit = /datum/outfit/job/warden @@ -152,7 +150,6 @@ Detective exp_requirements = 300 exp_type = EXP_TYPE_SECURITY exp_type_department = EXP_TYPE_SECURITY - economy_type = ECONOMY_TYPE_DANGEROUS outfit = /datum/outfit/job/detective @@ -210,7 +207,6 @@ Security Officer exp_requirements = 420 exp_type = EXP_TYPE_SECURITY exp_type_department = EXP_TYPE_SECURITY - economy_type = ECONOMY_TYPE_DANGEROUS outfit = /datum/outfit/job/security @@ -371,7 +367,6 @@ Junior Security Officer minimal_player_age = 3 exp_requirements = 300 exp_type = EXP_TYPE_CREW - economy_type = ECONOMY_TYPE_ROOKIE outfit = /datum/outfit/job/security/junior diff --git a/code/modules/mob/living/carbon/human/human_defines.dm b/code/modules/mob/living/carbon/human/human_defines.dm index 7225f0c28..486e6583c 100644 --- a/code/modules/mob/living/carbon/human/human_defines.dm +++ b/code/modules/mob/living/carbon/human/human_defines.dm @@ -79,5 +79,6 @@ var/static/list/can_ride_typecache = typecacheof(list(/mob/living/carbon/human, /mob/living/simple_animal/slime, /mob/living/simple_animal/parrot)) var/lastpuke = 0 var/last_fire_update + var/account_id can_be_held = "micro" appearance_flags = KEEP_TOGETHER|TILE_BOUND|PIXEL_SCALE|LONG_GLIDE \ No newline at end of file diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm index 463881e88..0a577dc44 100644 --- a/code/modules/reagents/reagent_containers/glass.dm +++ b/code/modules/reagents/reagent_containers/glass.dm @@ -336,7 +336,7 @@ volume = 50 amount_per_transfer_from_this = 10 container_HP = 1 - economy_type = ECONOMY_PRICE_LOW + price = 1 /obj/item/reagent_containers/glass/beaker/waterbottle/Initialize() beaker_weakness_bitflag |= TEMP_WEAK diff --git a/code/modules/reagents/reagent_containers/pill.dm b/code/modules/reagents/reagent_containers/pill.dm index 3394a515a..9a7404a98 100644 --- a/code/modules/reagents/reagent_containers/pill.dm +++ b/code/modules/reagents/reagent_containers/pill.dm @@ -269,20 +269,17 @@ /obj/item/reagent_containers/pill/penis_enlargement name = "penis enlargement pill" list_reagents = list(/datum/reagent/fermi/penis_enlarger = 10) + price = 4 icon_state = "pill_lewd" - economy_type = ECONOMY_PRICE_EROTIC - economy_price_mul = 0.25 /obj/item/reagent_containers/pill/breast_enlargement name = "breast enlargement pill" list_reagents = list(/datum/reagent/fermi/breast_enlarger = 10) + price = 4 icon_state = "pill_lewd" - economy_type = ECONOMY_PRICE_EROTIC - economy_price_mul = 0.25 /obj/item/reagent_containers/pill/butt_enlargement name = "butt enlargement pill" list_reagents = list(/datum/reagent/fermi/butt_enlarger = 10) - icon_state = "pill_lewd" - economy_type = ECONOMY_PRICE_EROTIC - economy_price_mul = 0.25 + price = 4 + icon_state = "pill_lewd" \ No newline at end of file diff --git a/code/modules/vending/_vending.dm b/code/modules/vending/_vending.dm index b2496308a..db6dd01d9 100644 --- a/code/modules/vending/_vending.dm +++ b/code/modules/vending/_vending.dm @@ -167,12 +167,14 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C var/datum/data/vending_product/R = new /datum/data/vending_product() R.name = initial(temp.name) R.product_path = typepath - if(!free) - R.price = FLOOR(baseprice * CONFIG_GET(number/economy_price_multiplier), 1) - if(product) //its a item! - var/product_price = SSeconomy.GetPrice(product) - if(!isnull(product_price)) - R.price = product_price + R.price = baseprice + if(product) //its a item! + if((initial(product.price))) + R.price = initial(product.price) + else + R.price = baseprice + if(free) + R.price = 0 if(!start_empty) R.amount = amount R.max_amount = amount @@ -495,8 +497,8 @@ IF YOU MODIFY THE PRODUCTS LIST OF A MACHINE, MAKE SURE TO UPDATE ITS RESUPPLY C updateUsrDialog() vend_ready = 1 if(bankid && R == buying) //if we have a bank id, and we are trying to buy the same thing! - if(bankid.balance >= R.price) - bankid.balance -= R.price //take the money from the account. + if(bankid.account_balance >= R.price) + bankid.account_balance -= R.price //take the money from the account. menu = 1 to_chat(usr, "You [R.name] via the provided bank account!") bankid = null //so noone can buy from your account after youve purchased stuff diff --git a/config/game_options.txt b/config/game_options.txt index 8bf910cd8..495040381 100644 --- a/config/game_options.txt +++ b/config/game_options.txt @@ -583,48 +583,3 @@ BOX_RANDOM_ENGINE Box TEG,2 BOX_RANDOM_ENGINE Box Empty,0 BOX_RANDOM_ENGINE Box Antimatter,0 BOX_RANDOM_ENGINE Box P.A.C.M.A.N,0 - -# -## HYPERSTATION -# - -## ECONOMY -# Paychecks get sent to each bank account, which is only initialized if the account holder spawned on the station. -# Bank Accounts are tied to the ID cards that players spawn with. If you have an unset pin, then that means anyone that gets the ID card has access to your money - -# The base amount of credits, before any math whatsoever gets involved, that paychecks give -ECONOMY_BASE_PAYMENT 60 - -# How many paychecks the crew gets when first joining the station. Adds 1 if this is the start of the round, because of how subsystems work -ECONOMY_BASE_PAY_RATIO 6 - -# The default multiplier for a paycheck if nothing is assigned to a specific job. -# You're allowed to set specific jobs a specific type of pay multiplier with ECONOMY_JOB_RATE -ECONOMY_JOB_RATE_DEFAULT 1.2 -# The multiplier that Rookies get. This should be slightly more than assistant but less than default. -ECONOMY_JOB_RATE_AREA Rookie, 1.1 -# The multiplier that Dangerous jobs get, such as Shaft Miner and Security. Should be somewhere between default and command pay rate -ECONOMY_JOB_RATE_AREA Dangerous, 1.3 -# The multiplier that Command roles get, including QM because they're a head :) -ECONOMY_JOB_RATE_AREA Command, 1.4 -# The multiplier for payment that the Captain gets. He controls the station, logically it's harder to do than all of the other jobs. -ECONOMY_JOB_RATE Captain, 1.5 - -# Examples for adding a single job datum. The value will be included if it falls in a category from ECONOMY_JOB_RATE -# This is a multiplier that Assistants get for their paycheck. This is less than 1 because assistants get the default multiplier added to them -ECONOMY_JOB_RATE Assistant, 0.83 -# This is a multiplier that Shaft Miners get for their paycheck. They count as a dangerous job, but they shouldn't get the same as security -ECONOMY_JOB_RATE Shaft Miner, 0.9 - - -# Default price for items that use these values -ECONOMY_PRICE_LOW 8 -ECONOMY_PRICE_DEFAULT 15 -ECONOMY_PRICE_HIGH 30 -ECONOMY_PRICE_EROTIC 25 -ECONOMY_PRICE_EXPENSIVE 60 -ECONOMY_PRICE_EXPENSIVE_AF 90 - -# A multiplier to the prices of items inside vendors. Avoid setting this higher than the Assistant's paycheck multiplier if possible -# This scales every item found in vendors. If you want to change an individual item, you have to change it through code -ECONOMY_PRICE_MULTIPLIER 1.35 diff --git a/hyperstation/code/controllers/subsystem/economy.dm b/hyperstation/code/controllers/subsystem/economy.dm index 7a71bc1fb..e30e05c76 100644 --- a/hyperstation/code/controllers/subsystem/economy.dm +++ b/hyperstation/code/controllers/subsystem/economy.dm @@ -1,62 +1,10 @@ SUBSYSTEM_DEF(economy) name = "Economy" wait = 5 MINUTES - priority = FIRE_PRIORITY_ECONOMY init_order = INIT_ORDER_ECONOMY - runlevels = RUNLEVEL_GAME | RUNLEVEL_POSTGAME - /// How many "paychecks" someone gets at the creation of the bank account + runlevels = RUNLEVEL_GAME + flags = SS_NO_FIRE //Let's not forget this. This subsystem does not use fire and was needlessly using CPU. var/roundstart_paychecks = 5 + var/budget_pool = 35000 + var/list/generated_accounts = list() var/list/bank_accounts = list() //List of normal accounts (not department accounts) - var/static/list/prices_by_type - -/// Updates the prices from the config. Assorted into this individual proc instead of Initialize() so testers can change the config mid-round -/// without having to initialize the economy SS again -/datum/controller/subsystem/economy/proc/UpdatePrices() - roundstart_paychecks - prices_by_type = list() - prices_by_type += CONFIG_GET(number/economy_price_default) //ECONOMY_PRICE_DEFAULT.. 1 - prices_by_type += CONFIG_GET(number/economy_price_low) //ECONOMY_PRICE_LOW.. 2 - prices_by_type += CONFIG_GET(number/economy_price_high) - prices_by_type += CONFIG_GET(number/economy_price_erotic) - prices_by_type += CONFIG_GET(number/economy_price_expensive) - prices_by_type += CONFIG_GET(number/economy_price_expensive_af) - prices_by_type += 0 //ECONOMY_PRICE_FORCED_FREE.. 7 - -/datum/controller/subsystem/economy/Initialize() - roundstart_paychecks = CONFIG_GET(number/economy_base_pay_ratio) - if(!prices_by_type) - UpdatePrices() - return ..() - -/datum/controller/subsystem/economy/fire() - for(var/datum/bank_account/account as anything in bank_accounts) - account.GivePaycheck(GetPaycheck(account, account.account_job)) - -/** - * Returns a value of the amount of money a bank account would be getting. It's just some simple multiplication. - * Both the bank account and job is allowed to be null here. - * - * Thanks to the ultimate nature of byond, colon accessors, :, get the default values of the bank account and - * job datums if the respective one is null. You can pass zero arguments here and you'd get the "default" amount of a paycheck. - */ -/datum/controller/subsystem/economy/proc/GetPaycheck(datum/bank_account/account, datum/job/job, multiplier=1) - return FLOOR(account:base_pay * job:base_paycheck_multiplier * multiplier, 1) - -/** - * Returns a price value from a subtype of an /obj/item, assuming it was compiled to use money. - * Otherwise, returns null if it does not use economy - */ -/datum/controller/subsystem/economy/proc/GetPrice(obj/item/costly_item) - var/economy_type - var/price_multiplier - - if(istype(costly_item)) - economy_type = costly_item.economy_type - price_multiplier = costly_item.economy_price_mul - else - economy_type = initial(costly_item.economy_type) - price_multiplier = initial(costly_item.economy_price_mul) - - if(!economy_type) - return - return FLOOR(prices_by_type[economy_type] * price_multiplier, 1) diff --git a/hyperstation/code/game/objects/items/cosmetics.dm b/hyperstation/code/game/objects/items/cosmetics.dm index fa55603a7..e30267472 100644 --- a/hyperstation/code/game/objects/items/cosmetics.dm +++ b/hyperstation/code/game/objects/items/cosmetics.dm @@ -7,9 +7,8 @@ icon_state = "nailcap" item_state = "nailpolish" w_class = WEIGHT_CLASS_SMALL - economy_type = ECONOMY_PRICE_LOW - economy_price_mul = 1.25 var/paint = "black" + price = 5 var/mutable_appearance/bottle //show the colour on the bottle. /obj/item/nailpolish/red diff --git a/hyperstation/code/game/objects/items/lovedice.dm b/hyperstation/code/game/objects/items/lovedice.dm index 2a1c72f8b..2048fce55 100644 --- a/hyperstation/code/game/objects/items/lovedice.dm +++ b/hyperstation/code/game/objects/items/lovedice.dm @@ -1,4 +1,4 @@ -/* +/* lover's dice: based off a really funny yakuza gif i saw on tumblr years ago these give suggestions for sex acts to perform. it's stupid but fun. @@ -12,8 +12,7 @@ sarcoph mar 2022 desc = "Contains all the intimate ideas you'll ever need. A game that everyone wins!" icon = 'hyperstation/icons/obj/toy.dmi' icon_state = "lovedicebag" - economy_type = ECONOMY_PRICE_EROTIC - economy_price_mul = 0.5 + price = 1 /obj/item/storage/pill_bottle/lovedice/Initialize() . = ..() diff --git a/hyperstation/code/modules/economy/account.dm b/hyperstation/code/modules/economy/account.dm index 9e0fda100..039ab4482 100644 --- a/hyperstation/code/modules/economy/account.dm +++ b/hyperstation/code/modules/economy/account.dm @@ -1,45 +1,29 @@ -/datum/bank_account - /// The name of whoever owns this account - var/account_holder = "Some pleboid" - /// The balance, in credits! - var/balance = 0 - /// Fluff for the ID of this card. Purely cosmetic, but unique for every account - var/account_id = 0 - /// The pin number that the owner wanted. Not set by default, so anyone can just steal your ID if you don't remember to set it - var/account_pin - /// The base amount of pay you get per paycheck - var/base_pay = 80 - /// The linked job datum for this bank account, for calculating unique base payment for each job - var/datum/job/account_job - /// The associated ID, for letting the card-holder know when a paycheck is processed - var/obj/item/card/id/associated_id +#define DUMPTIME 3000 -/datum/bank_account/New(mob/living/carbon/human/new_holder, datum/job/job, obj/item/card/id/id_card) - account_holder = new_holder.real_name +/datum/bank_account + var/account_holder = "Some pleb" + var/account_balance = 0 + var/account_offstation_balance = 0 + var/account_pin = 0 + var/account_dna = "" + var/datum/job/account_job + var/list/bank_cards = list() + var/add_to_accounts = TRUE + var/transferable = TRUE + var/account_id + var/withdrawDelay = 0 + +/datum/bank_account/New(newname, job) + if(add_to_accounts) + if(!SSeconomy) + log_world("Wack") + SSeconomy.bank_accounts += src + account_holder = newname account_job = job - associated_id = id_card account_id = rand(111111,999999) - if(!SSeconomy || !SSeconomy.initialized) - stack_trace("A new bank account was made without the economy subsystem being initialized first. If this is an issue, change the subsystem's init_order.") - return - - base_pay = CONFIG_GET(number/economy_base_payment) - - SSeconomy.bank_accounts += src - balance += SSeconomy.GetPaycheck(src, job, SSeconomy.roundstart_paychecks) - -/// Helper for whenever a paycheck gets processed into this account from the economy SS. Simply adds an amount to the account balance and notifies the user. -/datum/bank_account/proc/GivePaycheck(amount, silent=FALSE) - balance += amount - if(associated_id && !silent) - var/local_turf = get_turf(associated_id) - for(var/mob/M in get_hearers_in_view(1, local_turf)) - M.playsound_local(local_turf, 'sound/machines/twobeep_high.ogg', 50, vary = TRUE) - to_chat(M, "[icon2html(associated_id, M)] Paycheck processed, your account now holds [balance] credits.") - /datum/bank_account/Destroy() - if(SSeconomy) + if(add_to_accounts) SSeconomy.bank_accounts -= src return ..() diff --git a/hyperstation/code/obj/condom.dm b/hyperstation/code/obj/condom.dm index 642ab38d8..2c3122fe2 100644 --- a/hyperstation/code/obj/condom.dm +++ b/hyperstation/code/obj/condom.dm @@ -7,9 +7,9 @@ icon = 'hyperstation/icons/obj/condom.dmi' throwforce = 0 icon_state = "b_condom_wrapped" - var/unwrapped = 0 + var/unwrapped = 0 w_class = WEIGHT_CLASS_TINY - economy_type = ECONOMY_PRICE_LOW + price = 1 obj/item/condom/Initialize() create_reagents(300, DRAWABLE|NO_REACT) diff --git a/hyperstation/code/obj/economy.dm b/hyperstation/code/obj/economy.dm index 6eb632191..b33e2c35b 100644 --- a/hyperstation/code/obj/economy.dm +++ b/hyperstation/code/obj/economy.dm @@ -18,7 +18,6 @@ light_power = 0 light_range = 7 light_color = COLOR_VIVID_RED - var/pin = 0 /obj/machinery/atm/ui_interact(mob/user) @@ -40,7 +39,7 @@ if(idcard.registered_account) if(!idcard.registered_account.account_pin || pin == idcard.registered_account.account_pin) - dat += "

Balance: $[idcard.registered_account.balance]" + dat += "

Balance: $[idcard.registered_account.account_balance]" //dat += "

Offstation Balance: " dat += "

" dat += "Withdraw" @@ -73,15 +72,15 @@ user = idcard.registered_name pin = "" playsound(src, 'sound/machines/button.ogg', 50, FALSE) - ui_interact(usr) + src.ui_interact(usr) if(istype(I, /obj/item/stack/credits)) //feed money back into the machine! dont need a pin to donate stuff. if(held_card) var/obj/item/stack/credits/cred = I var/obj/item/card/id/idcard = held_card - idcard.registered_account.balance = (idcard.registered_account.balance+cred.amount) + idcard.registered_account.account_balance = (idcard.registered_account.account_balance+cred.amount) to_chat(usr, "You insert [cred] into the ATM.") - ui_interact(usr) + src.ui_interact(usr) del(cred) /obj/machinery/atm/Topic(href, href_list) @@ -107,29 +106,29 @@ var/pininput = input(user, "Input pin", "Pin Number") as num|null if(pininput) if(pininput > 9999 || pininput < 1000) - to_chat(usr, "[src] buzzes, you must input a 4 digit number between 1000 and 9999.") + to_chat(usr, "[src.name] buzzes, you must input a 4 digit number between 1000 and 9999.") return pin = max(min( round(text2num(pininput)), 9999),1000) //4 numbers or less. var/obj/item/card/id/idcard = held_card if(pin == idcard.registered_account.account_pin) - to_chat(usr, "[src] beeps, accepting the pin.") + to_chat(usr, "[src.name] beeps, accepting the pin.") else - to_chat(usr, "[src] buzzes, denying the pin.") + to_chat(usr, "[src.name] buzzes, denying the pin.") if(href_list["changepin"]) playsound(src, get_sfx("terminal_type"), 25, 1) var/pinchange = input(user, "Input pin", "Pin Number") as num|null if(pinchange > 9999 || pinchange < 1000) - to_chat(usr, "[src], you must have a 4 digit number for a pin and be between 1000 and 9999.") + to_chat(usr, "[src.name], you must have a 4 digit number for a pin and be between 1000 and 9999.") return if(pinchange) var/pinchange2 = input(user, "Confirm pin", "Confirm pin") as num|null //time to confirm! if(pinchange == pinchange2) var/obj/item/card/id/idcard = held_card idcard.registered_account.account_pin = pinchange - to_chat(usr, "[src] beeps, your pin has been changed to [pinchange]!.") + to_chat(usr, "[src.name] beeps, your pin has been changed to [pinchange]!.") else - to_chat(usr, "[src] buzzes, your pins did not match!") + to_chat(usr, "[src.name] buzzes, your pins did not match!") pin = "" if(href_list["withdraw"]) @@ -139,9 +138,9 @@ if(idcard.registered_account) var/amount = input(user, "Choose amount", "Withdraw") as num|null if(amount>0) - amount = max(min( round(text2num(amount)), idcard.registered_account.balance),0) //make sure they aint taking out more then what they have + amount = max(min( round(text2num(amount)), idcard.registered_account.account_balance),0) //make sure they aint taking out more then what they have to_chat(usr, "The machine prints out [amount] credits.") - idcard.registered_account.balance = (idcard.registered_account.balance-amount) //subtract the amount they took out. + idcard.registered_account.account_balance = (idcard.registered_account.account_balance-amount) //subtract the amount they took out. var/obj/item/stack/credits/C = new /obj/item/stack/credits/(loc) C.amount = amount if(usr.put_in_hands(C)) diff --git a/hyperstation/code/obj/fleshlight.dm b/hyperstation/code/obj/fleshlight.dm index 7349a0522..421cfb8f6 100644 --- a/hyperstation/code/obj/fleshlight.dm +++ b/hyperstation/code/obj/fleshlight.dm @@ -10,11 +10,10 @@ icon_state = "fleshlight_base" item_state = "fleshlight" w_class = WEIGHT_CLASS_SMALL - economy_type = ECONOMY_PRICE_EROTIC - economy_price_mul = 0.95 - var/inuse = 0 var/sleevecolor = "#ffcbd4" //pink + price = 8 var/mutable_appearance/sleeve + var/inuse = 0 /obj/item/fleshlight/examine(mob/user) . = ..() @@ -79,11 +78,10 @@ icon_state = "unpaired" item_state = "fleshlight" w_class = WEIGHT_CLASS_SMALL - economy_type = ECONOMY_PRICE_EROTIC - economy_price_mul = 1.2 var/partnercolor = "#ffcbd4" var/partnerbase = "normal" var/partnerorgan = "portal_vag" + price = 20 var/mutable_appearance/sleeve var/mutable_appearance/organ var/inuse = 0 @@ -98,7 +96,7 @@ else . += "The device is paired, and awaiting input. " -/obj/item/portallight/attack(mob/living/carbon/user, mob/living/holder) +/obj/item/portallight/attack(mob/living/carbon/user, mob/living/holder) if(inuse) //just to stop stacking and causing people to cum instantly return if(!UpdateUsability()) @@ -113,8 +111,8 @@ if(option == "Fuck" && !P.is_exposed()) to_chat(holder, "You don't see anywhere to use this on.") return - /* - WARMUP START - prevents spam/instant climax + /* + WARMUP START - prevents spam/instant climax */ inuse = TRUE if(user != holder) @@ -124,8 +122,8 @@ inuse = FALSE return inuse = FALSE - /* - WARMUP END - proceed with the action + /* + WARMUP END - proceed with the action */ switch(option) if("Fuck") @@ -142,7 +140,7 @@ user.adjustArousalLoss(20) target.adjustArousalLoss(20) target.do_jitter_animation() - if(target.can_orgasm() && prob(5)) + if(target.can_orgasm() && prob(5)) target.mob_climax_outside(target_genital, spillage=target_genital.is_exposed()) if(user.can_orgasm()) var/mob/living/carbon/human/O = user @@ -278,8 +276,7 @@ icon = 'hyperstation/icons/obj/fleshlight.dmi' desc = "A small silver box with Silver Love Co embossed." icon_state = "box" - economy_type = ECONOMY_PRICE_EROTIC - economy_price_mul = 1.5 + price = 15 // portal fleshlight box /obj/item/storage/box/portallight/PopulateContents() diff --git a/hyperstation/code/obj/kinkyclothes.dm b/hyperstation/code/obj/kinkyclothes.dm index b44bc41df..e7be65751 100644 --- a/hyperstation/code/obj/kinkyclothes.dm +++ b/hyperstation/code/obj/kinkyclothes.dm @@ -6,16 +6,14 @@ icon = 'hyperstation/icons/obj/clothing/gloves.dmi' alternate_worn_icon = 'hyperstation/icons/mobs/gloves.dmi' mutantrace_variation = NO_MUTANTRACE_VARIATION - economy_type = ECONOMY_PRICE_EROTIC - economy_price_mul = 0.75 + price = 5 /obj/item/clothing/gloves/latexsleeves/security name = "security sleeves" desc = "A pair of latex sleeves, with a band of red above the elbows denoting that the wearer is part of the security team." icon_state = "latexsec" item_state = "latexsec" - economy_type = ECONOMY_PRICE_EROTIC - economy_price_mul = 0.75 + price = 5 /obj/item/clothing/head/dominatrixcap name = "dominatrix cap" @@ -47,8 +45,7 @@ obj/item/clothing/neck/stole w_class = WEIGHT_CLASS_SMALL icon_state = "stole" item_state = "" //no inhands - economy_type = ECONOMY_PRICE_EXPENSIVE - economy_price_mul = 0.75 + price = 3 obj/item/clothing/neck/stole/black name = "black boa" @@ -58,8 +55,7 @@ obj/item/clothing/neck/stole/black icon_state = "stole" item_state = "" //no inhands color = "#3d3d3d" - economy_type = ECONOMY_PRICE_EXPENSIVE - economy_price_mul = 0.75 + price = 3 /obj/item/clothing/suit/fluffyhalfcrop name = "fluffy half-crop jacket" diff --git a/hyperstation/code/obj/rope.dm b/hyperstation/code/obj/rope.dm index d8cc0a6d6..4e029509a 100644 --- a/hyperstation/code/obj/rope.dm +++ b/hyperstation/code/obj/rope.dm @@ -10,8 +10,7 @@ item_state = "rope" //This sprite is in restraints.dmi until I figure out how to refrence somewhere else cuffsound = 'sound/weapons/cablecuff.ogg' armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 0, "acid" = 0) - economy_type = ECONOMY_PRICE_LOW - economy_price_mul = 1.25 + price = 2 /mob/living/proc/rope_add(source) //Check to see if the rope is on, and then add effects var/mob/living/carbon/M = source diff --git a/hyperstation/code/obj/sounding.dm b/hyperstation/code/obj/sounding.dm index 47e76a9fe..08715aa38 100644 --- a/hyperstation/code/obj/sounding.dm +++ b/hyperstation/code/obj/sounding.dm @@ -4,9 +4,9 @@ icon = 'hyperstation/icons/obj/sounding.dmi' throwforce = 0 icon_state = "sounding_wrapped" - var/unwrapped = 0 + var/unwrapped = 0 w_class = WEIGHT_CLASS_TINY - economy_type = ECONOMY_PRICE_LOW + price = 1 /obj/item/sounding/attack_self(mob/user) if(!istype(user)) diff --git a/hyperstation/code/obj/vibrator.dm b/hyperstation/code/obj/vibrator.dm index 247cc2440..40e1446e9 100644 --- a/hyperstation/code/obj/vibrator.dm +++ b/hyperstation/code/obj/vibrator.dm @@ -13,7 +13,7 @@ var/style = "long" var/inside = FALSE var/last = 0 - economy_type = ECONOMY_PRICE_EROTIC + price = 3 /obj/item/electropack/vibrator/Initialize() //give the device its own code . = ..() diff --git a/modular_citadel/code/game/objects/items/devices/radio/shockcollar.dm b/modular_citadel/code/game/objects/items/devices/radio/shockcollar.dm index a2179fb21..0b97815b6 100644 --- a/modular_citadel/code/game/objects/items/devices/radio/shockcollar.dm +++ b/modular_citadel/code/game/objects/items/devices/radio/shockcollar.dm @@ -11,8 +11,7 @@ strip_delay = 60 equip_delay_other = 60 materials = list(MAT_METAL=5000, MAT_GLASS=2000) - economy_type = ECONOMY_PRICE_EXPENSIVE - economy_price_mul = 0.75 + price = 5 var/tagname = null /datum/design/electropack/shockcollar diff --git a/sound/machines/twobeep_high.ogg b/sound/machines/twobeep_high.ogg deleted file mode 100644 index b97b39a4f01bde92153452322f240088ca3b3515..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5576 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 diff --git a/tgstation.dme b/tgstation.dme index 03f7a2973..bd40b91ac 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -43,7 +43,6 @@ #include "code\__DEFINES\cult.dm" #include "code\__DEFINES\diseases.dm" #include "code\__DEFINES\DNA.dm" -#include "code\__DEFINES\economy.dm" #include "code\__DEFINES\events.dm" #include "code\__DEFINES\exports.dm" #include "code\__DEFINES\fantasy_affixes.dm"