diff --git a/code/modules/client/preference_setup/loadout/gear_tweaks.dm b/code/modules/client/preference_setup/loadout/gear_tweaks.dm index 2b86685f17..7ddb6957a8 100644 --- a/code/modules/client/preference_setup/loadout/gear_tweaks.dm +++ b/code/modules/client/preference_setup/loadout/gear_tweaks.dm @@ -289,151 +289,3 @@ if(ValidTeslaLinks[metadata[7]]) var/t = ValidTeslaLinks[metadata[7]] I.tesla_link = new t(I) - -/datum/gear_tweak/laptop - var/list/ValidProcessors = list(/obj/item/weapon/computer_hardware/processor_unit/small, /obj/item/weapon/computer_hardware/processor_unit) - var/list/ValidBatteries = list(/obj/item/weapon/computer_hardware/battery_module, /obj/item/weapon/computer_hardware/battery_module/advanced, /obj/item/weapon/computer_hardware/battery_module/super) - var/list/ValidHardDrives = list(/obj/item/weapon/computer_hardware/hard_drive, /obj/item/weapon/computer_hardware/hard_drive/advanced, /obj/item/weapon/computer_hardware/hard_drive/super) - var/list/ValidNetworkCards = list(/obj/item/weapon/computer_hardware/network_card, /obj/item/weapon/computer_hardware/network_card/advanced) - var/list/ValidNanoPrinters = list(null, /obj/item/weapon/computer_hardware/nano_printer) - var/list/ValidCardSlots = list(null, /obj/item/weapon/computer_hardware/card_slot) - var/list/ValidTeslaLinks = list(null, /obj/item/weapon/computer_hardware/tesla_link) - -/datum/gear_tweak/laptop/get_contents(var/list/metadata) - var/list/names = list() - var/obj/O = ValidProcessors[metadata[1]] - if(O) - names += initial(O.name) - O = ValidBatteries[metadata[2]] - if(O) - names += initial(O.name) - O = ValidHardDrives[metadata[3]] - if(O) - names += initial(O.name) - O = ValidNetworkCards[metadata[4]] - if(O) - names += initial(O.name) - O = ValidNanoPrinters[metadata[5]] - if(O) - names += initial(O.name) - O = ValidCardSlots[metadata[6]] - if(O) - names += initial(O.name) - O = ValidTeslaLinks[metadata[7]] - if(O) - names += initial(O.name) - return "[english_list(names, and_text = ", ")]" - -/datum/gear_tweak/laptop/get_metadata(var/user, var/metadata) - . = list() - - var/list/names = list() - var/counter = 1 - for(var/i in ValidProcessors) - if(i) - var/obj/O = i - names[initial(O.name)] = counter++ - else - names["None"] = counter++ - - var/entry = input(user, "Choose a processor.", "Character Preference") in names - . += names[entry] - - names = list() - counter = 1 - for(var/i in ValidBatteries) - if(i) - var/obj/O = i - names[initial(O.name)] = counter++ - else - names["None"] = counter++ - - entry = input(user, "Choose a battery.", "Character Preference") in names - . += names[entry] - - names = list() - counter = 1 - for(var/i in ValidHardDrives) - if(i) - var/obj/O = i - names[initial(O.name)] = counter++ - else - names["None"] = counter++ - - entry = input(user, "Choose a hard drive.", "Character Preference") in names - . += names[entry] - - names = list() - counter = 1 - for(var/i in ValidNetworkCards) - if(i) - var/obj/O = i - names[initial(O.name)] = counter++ - else - names["None"] = counter++ - - entry = input(user, "Choose a network card.", "Character Preference") in names - . += names[entry] - - names = list() - counter = 1 - for(var/i in ValidNanoPrinters) - if(i) - var/obj/O = i - names[initial(O.name)] = counter++ - else - names["None"] = counter++ - - entry = input(user, "Choose a nanoprinter.", "Character Preference") in names - . += names[entry] - - names = list() - counter = 1 - for(var/i in ValidCardSlots) - if(i) - var/obj/O = i - names[initial(O.name)] = counter++ - else - names["None"] = counter++ - - entry = input(user, "Choose a card slot.", "Character Preference") in names - . += names[entry] - - names = list() - counter = 1 - for(var/i in ValidTeslaLinks) - if(i) - var/obj/O = i - names[initial(O.name)] = counter++ - else - names["None"] = counter++ - - entry = input(user, "Choose a tesla link.", "Character Preference") in names - . += names[entry] - -/datum/gear_tweak/laptop/get_default() - return list(1, 1, 1, 1, 1, 1, 1) - -/datum/gear_tweak/laptop/tweak_item(var/obj/item/modular_computer/laptop/preset/I, var/list/metadata) - if(ValidProcessors[metadata[1]]) - var/t = ValidProcessors[metadata[1]] - I.processor_unit = new t(I) - if(ValidBatteries[metadata[2]]) - var/t = ValidBatteries[metadata[2]] - I.battery_module = new t(I) - I.battery_module.charge_to_full() - if(ValidHardDrives[metadata[3]]) - var/t = ValidHardDrives[metadata[3]] - I.hard_drive = new t(I) - if(ValidNetworkCards[metadata[4]]) - var/t = ValidNetworkCards[metadata[4]] - I.network_card = new t(I) - if(ValidNanoPrinters[metadata[5]]) - var/t = ValidNanoPrinters[metadata[5]] - I.nano_printer = new t(I) - if(ValidCardSlots[metadata[6]]) - var/t = ValidCardSlots[metadata[6]] - I.card_slot = new t(I) - if(ValidTeslaLinks[metadata[7]]) - var/t = ValidTeslaLinks[metadata[7]] - I.tesla_link = new t(I) diff --git a/code/modules/client/preference_setup/loadout/loadout_utility.dm b/code/modules/client/preference_setup/loadout/loadout_utility.dm index bd2977a94f..675027bc4d 100644 --- a/code/modules/client/preference_setup/loadout/loadout_utility.dm +++ b/code/modules/client/preference_setup/loadout/loadout_utility.dm @@ -194,11 +194,7 @@ modular computers path = /obj/item/modular_computer/laptop/preset/custom_loadout/advanced cost = 5 -/datum/gear/utility/customlaptop - display_name = "laptop computer, custom" - path = /obj/item/modular_computer/laptop/preset/ - cost = 6 - -/datum/gear/utility/customlaptop/New() - ..() - gear_tweaks += new /datum/gear_tweak/laptop() +/datum/gear/utility/elitelaptop + display_name = "laptop computer, elite" + path = /obj/item/modular_computer/laptop/preset/custom_loadout/elite + cost = 7 diff --git a/code/modules/modular_computers/computers/subtypes/preset_laptop.dm b/code/modules/modular_computers/computers/subtypes/preset_laptop.dm index 190ba53b27..3152878fc2 100644 --- a/code/modules/modular_computers/computers/subtypes/preset_laptop.dm +++ b/code/modules/modular_computers/computers/subtypes/preset_laptop.dm @@ -29,4 +29,15 @@ nano_printer = new/obj/item/weapon/computer_hardware/nano_printer(src) card_slot = new/obj/item/weapon/computer_hardware/card_slot(src) battery_module = new/obj/item/weapon/computer_hardware/battery_module/advanced(src) - battery_module.charge_to_full() \ No newline at end of file + battery_module.charge_to_full() + +/obj/item/modular_computer/laptop/preset/custom_loadout/elite/install_default_hardware() + ..() + processor_unit = new/obj/item/weapon/computer_hardware/processor_unit(src) + tesla_link = new/obj/item/weapon/computer_hardware/tesla_link(src) + hard_drive = new/obj/item/weapon/computer_hardware/hard_drive/super(src) + network_card = new/obj/item/weapon/computer_hardware/network_card/advanced(src) + nano_printer = new/obj/item/weapon/computer_hardware/nano_printer(src) + card_slot = new/obj/item/weapon/computer_hardware/card_slot(src) + battery_module = new/obj/item/weapon/computer_hardware/battery_module/super(src) + battery_module.charge_to_full() diff --git a/html/changelogs/Novacat - Laptoptweak.yml b/html/changelogs/Novacat - Laptoptweak.yml new file mode 100644 index 0000000000..68c0e7220a --- /dev/null +++ b/html/changelogs/Novacat - Laptoptweak.yml @@ -0,0 +1,37 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: N3X15 + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - tweak: "Swaps custom laptops for elite laptops which have the top of the line modules." + - tweak: "Raises cost of the elite model to 7 loadout points."