GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits /client/proc/outfit_manager() set category = "Event" set name = "Outfit Manager" if(!check_rights(R_EVENT)) return holder.outfit_manager(usr) /datum/admins/proc/outfit_manager(mob/admin) var/list/dat = list("" dat += "Create
" dat += "Load from file" admin << browse(dat.Join(),"window=outfitmanager") /datum/admins/proc/save_outfit(mob/admin,datum/outfit/O) O.save_to_file(admin) outfit_manager(admin) /datum/admins/proc/delete_outfit(mob/admin,datum/outfit/O) GLOB.custom_outfits -= O qdel(O) to_chat(admin,"Outfit deleted.") outfit_manager(admin) /datum/admins/proc/load_outfit(mob/admin) var/outfit_file = input("Pick outfit json file:", "File") as null|file if(!outfit_file) return var/filedata = wrap_file2text(outfit_file) var/json = json_decode(filedata) if(!json) to_chat(admin,"JSON decode error.") return var/otype = text2path(json["outfit_type"]) if(!ispath(otype,/datum/outfit)) to_chat(admin,"Malformed/Outdated file.") return var/datum/outfit/O = new otype if(!O.load_from(json)) to_chat(admin,"Malformed/Outdated file.") return GLOB.custom_outfits += O outfit_manager(admin) /datum/admins/proc/create_outfit(mob/admin) var/list/uniforms = typesof(/obj/item/clothing/under) var/list/suits = typesof(/obj/item/clothing/suit) var/list/gloves = typesof(/obj/item/clothing/gloves) var/list/shoes = typesof(/obj/item/clothing/shoes) var/list/headwear = typesof(/obj/item/clothing/head) var/list/glasses = typesof(/obj/item/clothing/glasses) var/list/masks = typesof(/obj/item/clothing/mask) var/list/pdas = typesof(/obj/item/pda) var/list/ids = typesof(/obj/item/card/id) var/uniform_select = "" var/suit_select = "" var/gloves_select = "" var/shoes_select = "" var/head_select = "" var/glasses_select = "" var/mask_select = "" var/id_select = "" var/pda_select = "" var/dat = {" Create Outfit
Name:
Uniform: [uniform_select]
Suit: [suit_select]
Back:
Belt:
Gloves: [gloves_select]
Shoes: [shoes_select]
Head: [head_select]
Mask: [mask_select]
Left Ear:
Right Ear:
Glasses: [glasses_select]
ID: [id_select]
PDA: [pda_select]
Left Pocket:
Right Pocket:
Suit Store:
Right Hand:
Left Hand:

"} admin << browse(dat, "window=dressup;size=550x600") /datum/admins/proc/create_outfit_finalize(mob/admin, list/href_list) var/datum/outfit/O = new O.name = href_list["outfit_name"] O.uniform = text2path(href_list["outfit_uniform"]) O.shoes = text2path(href_list["outfit_shoes"]) O.gloves = text2path(href_list["outfit_gloves"]) O.suit = text2path(href_list["outfit_suit"]) O.head = text2path(href_list["outfit_head"]) O.back = text2path(href_list["outfit_back"]) O.mask = text2path(href_list["outfit_mask"]) O.glasses = text2path(href_list["outfit_glasses"]) O.r_hand = text2path(href_list["outfit_r_hand"]) O.l_hand = text2path(href_list["outfit_l_hand"]) O.suit_store = text2path(href_list["outfit_s_store"]) O.l_pocket = text2path(href_list["outfit_l_pocket"]) O.r_pocket = text2path(href_list["outfit_r_pocket"]) O.id = text2path(href_list["outfit_id"]) O.pda = text2path(href_list["outfit_pda"]) O.belt = text2path(href_list["outfit_belt"]) O.l_ear = text2path(href_list["outfit_l_ear"]) O.r_ear = text2path(href_list["outfit_r_ear"]) GLOB.custom_outfits.Add(O) message_admins("[key_name_admin(usr)] created \"[O.name]\" outfit.")