diff --git a/config/example/config.toml b/config/example/config.toml index d895384ba86b..25311d096ea9 100644 --- a/config/example/config.toml +++ b/config/example/config.toml @@ -306,7 +306,7 @@ disable_ambient_noise = false # Enable this if you want to disable the popup alert for people on the same CID disable_cid_warning_popup = false # Amount of loadout points people should get -base_loadout_points = 5 +base_loadout_points = 4 # Respawnability loss penalty if you cryo below this threshold (Minutes) cryo_penalty_period = 30 # Enable twitter emojis in OOC? diff --git a/modular_ss220/donor/code/client_procs.dm b/modular_ss220/donor/code/client_procs.dm index 9b7d06f47e17..a4aa3850a165 100644 --- a/modular_ss220/donor/code/client_procs.dm +++ b/modular_ss220/donor/code/client_procs.dm @@ -1,3 +1,5 @@ +#define MAX_SAVE_SLOTS_SS220 3 + /datum/client_login_processor/donator_check/process_result(datum/db_query/Q, client/C) if(IsGuestKey(C.ckey)) return @@ -21,6 +23,7 @@ if(10000 to INFINITY) C.donator_level = DONATOR_LEVEL_MAX C.donor_loadout_points() + C.donor_character_slots() /datum/client_login_processor/donator_check/get_query(client/C) var/datum/db_query/query = SSdbcore.NewQuery({" @@ -33,3 +36,43 @@ "}, list("ckey" = C.ckey)) return query + +/client/donor_loadout_points() + if(!prefs) + return + + prefs.max_gear_slots = GLOB.configuration.general.base_loadout_points + + switch(donator_level) + if(1) + prefs.max_gear_slots += 2 + if(2) + prefs.max_gear_slots += 4 + if(3) + prefs.max_gear_slots += 8 + if(4) + prefs.max_gear_slots += 12 + if(5) + prefs.max_gear_slots += 16 + +/client/proc/donor_character_slots() + if(!prefs) + return + + prefs.max_save_slots = MAX_SAVE_SLOTS_SS220 + + switch(donator_level) + if(1) + prefs.max_save_slots += 2 + if(2) + prefs.max_save_slots += 4 + if(3) + prefs.max_save_slots += 6 + if(4) + prefs.max_save_slots += 8 + if(5) + prefs.max_save_slots += 10 + + prefs.character_saves.len = prefs.max_save_slots + +#undef MAX_SAVE_SLOTS_SS220 diff --git a/modular_ss220/loadout/_loadout.dme b/modular_ss220/loadout/_loadout.dme index 9853029c9d8d..0f4bc51cc5c2 100644 --- a/modular_ss220/loadout/_loadout.dme +++ b/modular_ss220/loadout/_loadout.dme @@ -3,3 +3,4 @@ #include "code/donor.dm" #include "code/shoes.dm" #include "code/suit.dm" +#include "code/donor_items.dm" diff --git a/modular_ss220/loadout/code/donor.dm b/modular_ss220/loadout/code/donor.dm index 9d3d44c6ed01..60abcf1cd4f1 100644 --- a/modular_ss220/loadout/code/donor.dm +++ b/modular_ss220/loadout/code/donor.dm @@ -57,3 +57,48 @@ path = /obj/item/clothing/suit/hooded/vi_arcane donator_tier = 3 cost = 2 + +/datum/gear/donor/wallet + display_name = "Бумажник" + path = /obj/item/storage/wallet + cost = 12 + +/datum/gear/donor/firefirstaid + display_name = "Набор первой медицинской помощи от премиальной страховки" + path = /obj/item/storage/firstaid/regular/donor + cost = 12 + +/datum/gear/donor/airtank + display_name = "Спаренный балон от премиальной страховки" + path = /obj/item/tank/internals/emergency_oxygen/double + cost = 3 + +/datum/gear/donor/toolbelt + display_name = "Дедушкин пояс с инструментами" + path = /obj/item/storage/belt/utility + cost = 8 + +/datum/gear/donor/bruise_pack + display_name = "Медицинские бинты" + path = /obj/item/stack/medical/bruise_pack + cost = 2 + +/datum/gear/donor/ointment + display_name = "Мазь от ожогов" + path = /obj/item/stack/medical/ointment + cost = 2 + +/datum/gear/donor/charcoal + display_name = "Активированный уголь" + path = /obj/item/reagent_containers/syringe/charcoal + cost = 2 + +/datum/gear/donor/epinephrine + display_name = "Эпинефрин" + path = /obj/item/reagent_containers/hypospray/autoinjector/epinephrine + cost = 2 + +/datum/gear/donor/healthanalyzer + display_name = "Медицинский анализатор" + path = /obj/item/healthanalyzer + cost = 2 diff --git a/modular_ss220/loadout/code/donor_items.dm b/modular_ss220/loadout/code/donor_items.dm new file mode 100644 index 000000000000..5c0709ff29d8 --- /dev/null +++ b/modular_ss220/loadout/code/donor_items.dm @@ -0,0 +1,10 @@ +/obj/item/storage/firstaid/regular/donor + desc = "Набор первой медицинской помощи за оформление страховки" + icon_state = "firstaid" + +/obj/item/storage/firstaid/regular/donor/populate_contents() + new /obj/item/reagent_containers/food/pill/patch/styptic(src) + new /obj/item/reagent_containers/food/pill/salicylic(src) + new /obj/item/reagent_containers/food/pill/patch/silver_sulf(src) + new /obj/item/healthanalyzer(src) + new /obj/item/reagent_containers/hypospray/autoinjector/epinephrine(src)