From 33b59118efbd91b6db261425ce769a256891b7ab Mon Sep 17 00:00:00 2001 From: Casey Date: Wed, 8 Mar 2023 12:58:34 -0500 Subject: [PATCH] Start With Backup Implant setting --- code/controllers/subsystems/ticker.dm | 8 ++++++++ code/modules/client/preference_setup/vore/09_misc.dm | 11 ++++++++--- code/modules/client/preferences_vr.dm | 1 + code/modules/mob/new_player/new_player.dm | 9 +++++++++ 4 files changed, 26 insertions(+), 3 deletions(-) diff --git a/code/controllers/subsystems/ticker.dm b/code/controllers/subsystems/ticker.dm index ea8873e717..cfb01df406 100644 --- a/code/controllers/subsystems/ticker.dm +++ b/code/controllers/subsystems/ticker.dm @@ -440,6 +440,14 @@ var/global/datum/controller/subsystem/ticker/ticker UpdateFactionList(player) //equip_custom_items(player) //VOREStation Removal //player.apply_traits() //VOREStation Removal + //VOREStation Addition Start + if(player.client) + if(player.client.prefs.auto_backup_implant) + var/obj/item/weapon/implant/backup/imp = new(src) + + if(imp.handle_implant(player,player.zone_sel.selecting)) + imp.post_implant(player) + //VOREStation Addition End if(captainless) for(var/mob/M in player_list) if(!istype(M,/mob/new_player)) diff --git a/code/modules/client/preference_setup/vore/09_misc.dm b/code/modules/client/preference_setup/vore/09_misc.dm index f73bdd80f5..0a4ac178f2 100644 --- a/code/modules/client/preference_setup/vore/09_misc.dm +++ b/code/modules/client/preference_setup/vore/09_misc.dm @@ -11,6 +11,7 @@ S["directory_ad"] >> pref.directory_ad S["sensorpref"] >> pref.sensorpref S["capture_crystal"] >> pref.capture_crystal + S["auto_backup_implant"] >> pref.auto_backup_implant /datum/category_item/player_setup_item/vore/misc/save_character(var/savefile/S) S["show_in_directory"] << pref.show_in_directory @@ -21,7 +22,7 @@ S["directory_ad"] << pref.directory_ad S["sensorpref"] << pref.sensorpref S["capture_crystal"] << pref.capture_crystal - + S["auto_backup_implant"] << pref.auto_backup_implant /datum/category_item/player_setup_item/vore/misc/copy_to_mob(var/mob/living/carbon/human/character) if(pref.sensorpref > 5 || pref.sensorpref < 1) @@ -37,6 +38,7 @@ pref.directory_erptag = sanitize_inlist(pref.directory_erptag, GLOB.char_directory_erptags, initial(pref.directory_erptag)) pref.sensorpref = sanitize_integer(pref.sensorpref, 1, sensorpreflist.len, initial(pref.sensorpref)) pref.capture_crystal = sanitize_integer(pref.capture_crystal, 0, 1, initial(pref.capture_crystal)) + pref.auto_backup_implant = sanitize_integer(pref.auto_backup_implant, 0, 1, initial(pref.auto_backup_implant)) /datum/category_item/player_setup_item/vore/misc/content(var/mob/user) . += "
" @@ -47,7 +49,8 @@ . += "Character Directory ERP Tag: [pref.directory_erptag]
" . += "Character Directory Advertisement: Set Directory Ad
" . += "Suit Sensors Preference: [sensorpreflist[pref.sensorpref]]
" - . += "Capture Crystal Preference [pref.capture_crystal ? "Yes" : "No"]
" + . += "Capture Crystal Preference: [pref.capture_crystal ? "Yes" : "No"]
" + . += "Spawn With Backup Implant: [pref.auto_backup_implant ? "Yes" : "No"]
" /datum/category_item/player_setup_item/vore/misc/OnTopic(var/href, var/list/href_list, var/mob/user) if(href_list["toggle_show_in_directory"]) @@ -93,5 +96,7 @@ else if(href_list["toggle_capture_crystal"]) pref.capture_crystal = pref.capture_crystal ? 0 : 1; return TOPIC_REFRESH - + else if(href_list["toggle_implant"]) + pref.auto_backup_implant = pref.auto_backup_implant ? 0 : 1; + return TOPIC_REFRESH return ..(); diff --git a/code/modules/client/preferences_vr.dm b/code/modules/client/preferences_vr.dm index 8ac78b09f0..d106b0dbad 100644 --- a/code/modules/client/preferences_vr.dm +++ b/code/modules/client/preferences_vr.dm @@ -9,6 +9,7 @@ var/directory_ad = "" //Advertisement stuff to show in character directory. var/sensorpref = 5 //Set character's suit sensor level var/capture_crystal = 1 //Whether or not someone is able to be caught with capture crystals + var/auto_backup_implant = FALSE //Whether someone starts with a backup implant or not. var/job_talon_high = 0 var/job_talon_med = 0 diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index 04a855e6e3..efebbe77aa 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -494,6 +494,7 @@ AnnounceArrival(character, rank, join_message, announce_channel, character.z) data_core.manifest_inject(character) ticker.minds += character.mind//Cyborgs and AIs handle this in the transform proc. //TODO!!!!! ~Carn +<<<<<<< HEAD var/gut = join_props["voreny"] var/mob/living/prey = join_props["prey"] //CHOMPEdit Start - Item TF @@ -520,6 +521,14 @@ if(gut) character.forceMove(gut) +======= + if(ishuman(character)) + if(character.client.prefs.auto_backup_implant) + var/obj/item/weapon/implant/backup/imp = new(src) + + if(imp.handle_implant(character,character.zone_sel.selecting)) + imp.post_implant(character) +>>>>>>> 94e05dd941... Merge pull request #14620 from Very-Soft/autoimplant qdel(src) // Delete new_player mob