Converts jobs and admin equipment to use outfits (#5827)

Converts the jobs and admin equipment to use outfit datums.
This commit is contained in:
Werner
2019-02-19 23:58:05 +02:00
committed by Erki
parent 1bc27306a0
commit b823b4eb05
38 changed files with 1802 additions and 1447 deletions
@@ -7,6 +7,9 @@
/datum/gear_tweak/proc/get_default()
return
/datum/gear_tweak/proc/get_random()
return get_default()
/datum/gear_tweak/proc/tweak_gear_data(var/metadata, var/datum/gear_data)
return
@@ -32,6 +35,9 @@ var/datum/gear_tweak/color/gear_tweak_free_color_choice = new()
/datum/gear_tweak/color/get_default()
return valid_colors ? valid_colors[1] : COLOR_GRAY
/datum/gear_tweak/color/get_random()
return valid_colors ? pick(valid_colors) : COLOR_GRAY
/datum/gear_tweak/color/get_metadata(var/user, var/metadata)
if(valid_colors)
return input(user, "Choose an item color.", "Character Preference", metadata) as null|anything in valid_colors
@@ -59,6 +65,9 @@ Path adjustment
/datum/gear_tweak/path/get_default()
return valid_paths[1]
/datum/gear_tweak/path/get_random()
return pick(valid_paths)
/datum/gear_tweak/path/get_metadata(var/user, var/metadata)
return input(user, "Choose a type.", "Character Preference", metadata) as null|anything in valid_paths
@@ -116,8 +125,6 @@ Content adjustment
/*
Reagents adjustment
*/
/datum/gear_tweak/reagents
var/list/valid_reagents
@@ -238,8 +238,23 @@ var/list/gear_datums = list()
/datum/gear/proc/spawn_item(var/location, var/metadata)
var/datum/gear_data/gd = new(path, location)
for(var/datum/gear_tweak/gt in gear_tweaks)
gt.tweak_gear_data(metadata["[gt]"], gd)
if(metadata["[gt]"])
gt.tweak_gear_data(metadata["[gt]"], gd)
else
gt.tweak_gear_data(gt.get_default(), gd)
var/item = new gd.path(gd.location)
for(var/datum/gear_tweak/gt in gear_tweaks)
gt.tweak_item(item, metadata["[gt]"])
if(metadata["[gt]"])
gt.tweak_item(item, metadata["[gt]"])
else
gt.tweak_item(item, gt.get_default())
return item
/datum/gear/proc/spawn_random(var/location)
var/datum/gear_data/gd = new(path, location)
for(var/datum/gear_tweak/gt in gear_tweaks)
gt.tweak_gear_data(gt.get_random(), gd)
var/item = new gd.path(gd.location)
for(var/datum/gear_tweak/gt in gear_tweaks)
gt.tweak_item(item, gt.get_random())
return item