diff --git a/code/datums/outfits/jobs/medical.dm b/code/datums/outfits/jobs/medical.dm index 0ad0938db5..ca95c8b52e 100644 --- a/code/datums/outfits/jobs/medical.dm +++ b/code/datums/outfits/jobs/medical.dm @@ -92,7 +92,7 @@ /decl/hierarchy/outfit/job/medical/paramedic name = OUTFIT_JOB_NAME("Paramedic") - uniform = /obj/item/clothing/under/rank/medical/scrubs/black + uniform = /obj/item/clothing/under/rank/medical/paramedic suit = /obj/item/clothing/suit/storage/toggle/fr_jacket shoes = /obj/item/clothing/shoes/boots/jackboots l_hand = /obj/item/weapon/storage/firstaid/regular @@ -103,5 +103,5 @@ /decl/hierarchy/outfit/job/medical/paramedic/emt name = OUTFIT_JOB_NAME("Emergency Medical Technician") - uniform = /obj/item/clothing/under/rank/medical/paramedic + uniform = /obj/item/clothing/under/rank/medical/paramedic_alt suit = /obj/item/clothing/suit/storage/toggle/labcoat/emt diff --git a/code/datums/supplypacks/medical.dm b/code/datums/supplypacks/medical.dm index 69f198bbd4..eb7d350c5f 100644 --- a/code/datums/supplypacks/medical.dm +++ b/code/datums/supplypacks/medical.dm @@ -202,7 +202,7 @@ /obj/item/clothing/under/rank/medical/paramedic, /obj/item/clothing/suit/storage/toggle/fr_jacket, /obj/item/clothing/mask/gas, - /obj/item/clothing/under/rank/medical/paramedic, + /obj/item/clothing/under/rank/medical/paramedic_alt, /obj/item/clothing/accessory/stethoscope, /obj/item/weapon/storage/firstaid/adv, /obj/item/clothing/shoes/boots/jackboots, @@ -305,8 +305,8 @@ /datum/supply_pack/med/medicalbiosuits name = "Medical biohazard gear" contains = list( - /obj/item/clothing/head/bio_hood = 3, - /obj/item/clothing/suit/bio_suit = 3, + /obj/item/clothing/head/bio_hood/modern = 3, + /obj/item/clothing/suit/bio_suit/modern = 3, /obj/item/clothing/head/bio_hood/virology = 2, /obj/item/clothing/suit/bio_suit/cmo, /obj/item/clothing/head/bio_hood/cmo, diff --git a/code/game/machinery/gear_dispenser.dm b/code/game/machinery/gear_dispenser.dm index a2723a2597..adb204e4d9 100644 --- a/code/game/machinery/gear_dispenser.dm +++ b/code/game/machinery/gear_dispenser.dm @@ -80,15 +80,16 @@ var/list/dispenser_presets = list() var/spawned = list() voidsuit = new voidsuit_type(T) - spawned += voidsuit + spawned += voidsuit // We only add the voidsuit so the game doesn't try to put the tank/helmet/boots etc into their hands + // If we're supposed to make a helmet if(voidhelmet_type) // The coder may not have realized this type spawns its own helmet if(voidsuit.helmet) error("[src] created a voidsuit [voidsuit] and wants to add a helmet but it already has one") else - voidsuit.attach_helmet(new voidhelmet_type()) - spawned += voidhelmet + voidhelmet = new voidhelmet_type() + voidsuit.attach_helmet(voidhelmet) // If we're supposed to make boots if(magboots_type) // The coder may not have realized thist ype spawns its own boots @@ -97,7 +98,6 @@ var/list/dispenser_presets = list() else magboots = new magboots_type(voidsuit) voidsuit.boots = magboots - spawned += magboots if(refit) voidsuit.refit_for_species(user.species?.get_bodytype()) // does helmet and boots if they're attached @@ -109,7 +109,6 @@ var/list/dispenser_presets = list() else var/obj/item/life_support = new /obj/item/device/suit_cooling_unit(voidsuit) voidsuit.cooler = life_support - spawned += life_support else if(user.species?.breath_type) if(voidsuit.tank) error("[src] created a voidsuit [voidsuit] and wants to add a tank but it already has one") @@ -121,7 +120,6 @@ var/list/dispenser_presets = list() if(tankpath) var/obj/item/life_support = new tankpath(voidsuit) voidsuit.tank = life_support - spawned += life_support else voidsuit.audible_message("Dispenser warning: Unable to locate suitable airtank for user.") @@ -567,6 +565,27 @@ var/list/dispenser_presets = list() one_setting = /datum/gear_disp/voidsuit/autolok special_frame = "frame_grey" +////////////////////////////// MOEBIUS SUIT DISPENSERS /////////////////////////// +/datum/gear_disp/voidsuit/aether + name = "Aether Voidsuit" + voidsuit_type = /obj/item/clothing/suit/space/void/aether + voidhelmet_type = /obj/item/clothing/head/helmet/space/void/aether + refit = FALSE // No animal sprites AAA! + +/obj/machinery/gear_dispenser/suit/aether + name = "\improper Aether Voidsuit Dispenser" + desc = "An industrial U-Tak-It Dispenser unit designed to fetch a specific Aether-produced high-end suit." + icon_state = "suitdispenserMB" + dispenser_flags = GD_ONEITEM|GD_NOGREED|GD_UNLIMITED + one_setting = /datum/gear_disp/voidsuit/aether + +/obj/machinery/gear_dispenser/suit_fancy/aether + name = "\improper Aether Voidsuit Dispenser" + desc = "A commercial U-Tak-It Dispenser unit designed to fetch a specific Aether-produced high-end suit." + dispenser_flags = GD_ONEITEM|GD_NOGREED|GD_UNLIMITED + one_setting = /datum/gear_disp/voidsuit/aether + special_frame = "frame_purple" + // Adminbuse /obj/machinery/gear_dispenser/vv_get_dropdown() . = ..() diff --git a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm index a89601cc0a..a1412ba7a9 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm @@ -33,6 +33,7 @@ /obj/item/clothing/under/rank/nurse, /obj/item/clothing/under/rank/orderly, /obj/item/clothing/suit/storage/toggle/labcoat, + /obj/item/clothing/suit/storage/toggle/labcoat/modern, /obj/item/clothing/suit/storage/toggle/fr_jacket, /obj/item/clothing/shoes/white, /obj/item/weapon/cartridge/medical, @@ -127,6 +128,7 @@ /obj/item/clothing/under/rank/chief_medical_officer/skirt, /obj/item/clothing/suit/storage/toggle/labcoat/cmo, /obj/item/clothing/suit/storage/toggle/labcoat/cmoalt, + /obj/item/clothing/suit/storage/toggle/labcoat/modern/cmo, /obj/item/weapon/cartridge/cmo, /obj/item/clothing/gloves/sterile/latex, /obj/item/clothing/shoes/brown, diff --git a/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm b/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm index 66383849f0..a3fdc31f24 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/scientist.dm @@ -33,6 +33,7 @@ /obj/item/clothing/under/rank/research_director/rdalt, /obj/item/clothing/under/rank/research_director/dress_rd, /obj/item/clothing/suit/storage/toggle/labcoat, + /obj/item/clothing/suit/storage/toggle/labcoat/modern, /obj/item/weapon/cartridge/rd, /obj/item/clothing/shoes/white, /obj/item/clothing/shoes/laceup/brown, @@ -54,6 +55,7 @@ starts_with = list( /obj/item/clothing/under/rank/scientist, /obj/item/clothing/suit/storage/toggle/labcoat, + /obj/item/clothing/suit/storage/toggle/labcoat/modern, /obj/item/clothing/shoes/white, /obj/item/weapon/melee/umbrella, // vorestation addition, /obj/item/clothing/glasses/science, diff --git a/code/game/objects/structures/crates_lockers/closets/wardrobe.dm b/code/game/objects/structures/crates_lockers/closets/wardrobe.dm index 6c88090e40..12a1119792 100644 --- a/code/game/objects/structures/crates_lockers/closets/wardrobe.dm +++ b/code/game/objects/structures/crates_lockers/closets/wardrobe.dm @@ -220,6 +220,7 @@ /obj/item/clothing/under/rank/scientist/skirt = 2, /obj/item/clothing/under/rank/scientist/turtleneck = 3, /obj/item/clothing/suit/storage/toggle/labcoat = 3, + /obj/item/clothing/suit/storage/toggle/labcoat/modern = 3, /obj/item/clothing/shoes/white = 3, /obj/item/clothing/shoes/slippers = 3, /obj/item/clothing/suit/storage/hooded/wintercoat/science, diff --git a/code/modules/admin/view_variables/topic_list.dm b/code/modules/admin/view_variables/topic_list.dm index c437a58a17..1f535f2b42 100644 --- a/code/modules/admin/view_variables/topic_list.dm +++ b/code/modules/admin/view_variables/topic_list.dm @@ -10,7 +10,7 @@ mod_list(target, null, "list", "contents", target_index, autodetect_class = FALSE) if(href_list[VV_HK_LIST_REMOVE]) var/variable = target[target_index] - var/prompt = tgui_alert(usr, "Do you want to remove item number [target_index] from list?", "Confirm", "Yes", "No") + var/prompt = tgui_alert(usr, "Do you want to remove item number [target_index] from list?", "Confirm", list("Yes", "No")) if (prompt != "Yes") return target.Cut(target_index, target_index+1) diff --git a/code/modules/busy_space_vr/organizations.dm b/code/modules/busy_space_vr/organizations.dm index 05df67ce87..ec30b2a2a8 100644 --- a/code/modules/busy_space_vr/organizations.dm +++ b/code/modules/busy_space_vr/organizations.dm @@ -1402,7 +1402,7 @@ ////////////////////////////////////////////////////////////////////////////////// // Other -/datum/lore/organization/other/kitsuhana //sorry KHI, but you're not a coherent stellar government, and you're definitely not a TSC. you get to go in the Others pool. +/datum/lore/organization/other/kitsuhana //sorry KHI, but you're not a coherent stellar government, and you're definitely not a TSC. you get to go in the Others pool. //makes sense to me! name = "Kitsuhana Heavy Industries" short_name = "" //whitespace haaaack desc = "A large post-scarcity amalgamation of races, Kitsuhana is no longer a company but rather a loose association of 'members' \ diff --git a/code/modules/client/preference_setup/loadout/loadout_suit.dm b/code/modules/client/preference_setup/loadout/loadout_suit.dm index 738ee9bce2..9553e6fab6 100644 --- a/code/modules/client/preference_setup/loadout/loadout_suit.dm +++ b/code/modules/client/preference_setup/loadout/loadout_suit.dm @@ -135,43 +135,39 @@ gear_tweaks += new/datum/gear_tweak/path(sortAssoc(hoodies)) /datum/gear/suit/labcoat - display_name = "labcoat" + display_name = "labcoat selection, public" path = /obj/item/clothing/suit/storage/toggle/labcoat -/datum/gear/suit/labcoat/blue - display_name = "labcoat, blue" - path = /obj/item/clothing/suit/storage/toggle/labcoat/blue +/datum/gear/suit/labcoat/New() + ..() + var/list/labcoats = list( + "White labcoat" = /obj/item/clothing/suit/storage/toggle/labcoat, + "Blue-edge labcoat" = /obj/item/clothing/suit/storage/toggle/labcoat/blue_edge, + "Green labcoat" = /obj/item/clothing/suit/storage/toggle/labcoat/green, + "Orange labcoat" = /obj/item/clothing/suit/storage/toggle/labcoat/orange, + "Purple labcoat" = /obj/item/clothing/suit/storage/toggle/labcoat/purple, + "Pink labcoat" = /obj/item/clothing/suit/storage/toggle/labcoat/pink, + "Red labcoat" = /obj/item/clothing/suit/storage/toggle/labcoat/red, + "Yellow labcoat" = /obj/item/clothing/suit/storage/toggle/labcoat/yellow + ) + gear_tweaks += new/datum/gear_tweak/path(labcoats) -/datum/gear/suit/labcoat/blue_edge - display_name = "labcoat, blue-edged" - path = /obj/item/clothing/suit/storage/toggle/labcoat/blue_edge +/datum/gear/suit/labcoat_cmo + display_name = "labcoat selection, cmo" + path = /obj/item/clothing/suit/storage/toggle/labcoat/cmo + allowed_roles = list("Chief Medical Officer") -/datum/gear/suit/labcoat/green - display_name = "labcoat, green" - path = /obj/item/clothing/suit/storage/toggle/labcoat/green - -/datum/gear/suit/labcoat/orange - display_name = "labcoat, orange" - path = /obj/item/clothing/suit/storage/toggle/labcoat/orange - -/datum/gear/suit/labcoat/purple - display_name = "labcoat, purple" - path = /obj/item/clothing/suit/storage/toggle/labcoat/purple - -/datum/gear/suit/labcoat/pink - display_name = "labcoat, pink" - path = /obj/item/clothing/suit/storage/toggle/labcoat/pink - -/datum/gear/suit/labcoat/red - display_name = "labcoat, red" - path = /obj/item/clothing/suit/storage/toggle/labcoat/red - -/datum/gear/suit/labcoat/yellow - display_name = "labcoat, yellow" - path = /obj/item/clothing/suit/storage/toggle/labcoat/yellow +/datum/gear/suit/labcoat_cmo/New() + ..() + var/list/labcoats = list( + "CMO labcoat" = /obj/item/clothing/suit/storage/toggle/labcoat/cmo, + "CMO labcoat (alt)" = /obj/item/clothing/suit/storage/toggle/labcoat/cmoalt, + "CMO labcoat (modern)" = /obj/item/clothing/suit/storage/toggle/labcoat/modern/cmo + ) + gear_tweaks += new/datum/gear_tweak/path(labcoats) /datum/gear/suit/labcoat/emt - display_name = "labcoat, EMT (Medical)" + display_name = "labcoat, EMT" path = /obj/item/clothing/suit/storage/toggle/labcoat/emt allowed_roles = list("Medical Doctor","Chief Medical Officer","Chemist","Paramedic","Geneticist", "Psychiatrist") @@ -189,6 +185,11 @@ path = /obj/item/clothing/suit/storage/apron/overalls cost = 1 +/datum/gear/suit/cyberpunk + display_name = "cyberpunk jacket" + path = /obj/item/clothing/suit/cyberpunk + cost = 2 + /datum/gear/suit/poncho display_name = "poncho selection" path = /obj/item/clothing/accessory/poncho @@ -203,96 +204,77 @@ gear_tweaks += new/datum/gear_tweak/path(sortAssoc(ponchos)) /datum/gear/suit/roles/poncho - display_name = "poncho, cargo" + display_name = "poncho selection, departments" path = /obj/item/clothing/accessory/poncho/roles/cargo cost = 1 -/datum/gear/suit/roles/poncho/security - display_name = "poncho, security" - path = /obj/item/clothing/accessory/poncho/roles/security +/datum/gear/suit/roles/poncho/New() + ..() + var/list/ponchos = list( + "Cargo poncho" = /obj/item/clothing/accessory/poncho/roles/cargo, + "Security poncho" = /obj/item/clothing/accessory/poncho/roles/security, + "Medical poncho" = /obj/item/clothing/accessory/poncho/roles/medical, + "Engineering poncho" = /obj/item/clothing/accessory/poncho/roles/engineering, + "Science poncho" = /obj/item/clothing/accessory/poncho/roles/science + ) + gear_tweaks += new/datum/gear_tweak/path(ponchos) -/datum/gear/suit/roles/poncho/medical - display_name = "poncho, medical" - path = /obj/item/clothing/accessory/poncho/roles/medical -/datum/gear/suit/roles/poncho/engineering - display_name = "poncho, engineering" - path = /obj/item/clothing/accessory/poncho/roles/engineering +/datum/gear/suit/roles/cloak + display_name = "cloak selection, departments" + path = /obj/item/clothing/accessory/poncho/roles/cloak/cargo -/datum/gear/suit/roles/poncho/science - display_name = "poncho, science" - path = /obj/item/clothing/accessory/poncho/roles/science +/datum/gear/suit/roles/cloak/New() + ..() + var/list/cloaks = list( + "Cargo cloak" = /obj/item/clothing/accessory/poncho/roles/cloak/cargo, + "Mining cloak" = /obj/item/clothing/accessory/poncho/roles/cloak/mining, + "Security cloak" = /obj/item/clothing/accessory/poncho/roles/cloak/security, + "Service cloak" = /obj/item/clothing/accessory/poncho/roles/cloak/service, + "Engineer cloak" = /obj/item/clothing/accessory/poncho/roles/cloak/engineer, + "Atmos cloak" = /obj/item/clothing/accessory/poncho/roles/cloak/atmos, + "Research cloak" = /obj/item/clothing/accessory/poncho/roles/cloak/research, + "Medical cloak" = /obj/item/clothing/accessory/poncho/roles/cloak/medical + ) + gear_tweaks += new/datum/gear_tweak/path(cloaks) -/datum/gear/suit/roles/poncho/cloak/hos +/datum/gear/suit/roles/poncho/cloak_hos display_name = "cloak, head of security" path = /obj/item/clothing/accessory/poncho/roles/cloak/hos allowed_roles = list("Head of Security") -/datum/gear/suit/roles/poncho/cloak/cmo +/datum/gear/suit/roles/poncho/cloak_cmo display_name = "cloak, chief medical officer" path = /obj/item/clothing/accessory/poncho/roles/cloak/cmo allowed_roles = list("Chief Medical Officer") -/datum/gear/suit/roles/poncho/cloak/ce +/datum/gear/suit/roles/poncho/cloak_ce display_name = "cloak, chief engineer" path = /obj/item/clothing/accessory/poncho/roles/cloak/ce allowed_roles = list("Chief Engineer") -/datum/gear/suit/roles/poncho/cloak/rd +/datum/gear/suit/roles/poncho/cloak_rd display_name = "cloak, research director" path = /obj/item/clothing/accessory/poncho/roles/cloak/rd allowed_roles = list("Research Director") -/datum/gear/suit/roles/poncho/cloak/qm +/datum/gear/suit/roles/poncho/cloak_qm display_name = "cloak, quartermaster" path = /obj/item/clothing/accessory/poncho/roles/cloak/qm allowed_roles = list("Quartermaster") -/datum/gear/suit/roles/poncho/cloak/captain +/datum/gear/suit/roles/poncho/cloak_captain display_name = "cloak, site manager" path = /obj/item/clothing/accessory/poncho/roles/cloak/captain allowed_roles = list("Site Manager") -/datum/gear/suit/roles/poncho/cloak/hop +/datum/gear/suit/roles/poncho/cloak_hop display_name = "cloak, head of personnel" path = /obj/item/clothing/accessory/poncho/roles/cloak/hop allowed_roles = list("Head of Personnel") -/datum/gear/suit/roles/poncho/cloak/cargo - display_name = "cloak, cargo" - path = /obj/item/clothing/accessory/poncho/roles/cloak/cargo - -/datum/gear/suit/roles/poncho/cloak/mining - display_name = "cloak, mining" - path = /obj/item/clothing/accessory/poncho/roles/cloak/mining - -/datum/gear/suit/roles/poncho/cloak/security - display_name = "cloak, security" - path = /obj/item/clothing/accessory/poncho/roles/cloak/security - allowed_roles = list("Head of Security","Detective","Warden","Security Officer","Blueshield Guard","Security Pilot") //YW ADDITIONS - -/datum/gear/suit/roles/poncho/cloak/service - display_name = "cloak, service" - path = /obj/item/clothing/accessory/poncho/roles/cloak/service - -/datum/gear/suit/roles/poncho/cloak/engineer - display_name = "cloak, engineer" - path = /obj/item/clothing/accessory/poncho/roles/cloak/engineer - -/datum/gear/suit/roles/poncho/cloak/atmos - display_name = "cloak, atmos" - path = /obj/item/clothing/accessory/poncho/roles/cloak/atmos - -/datum/gear/suit/roles/poncho/cloak/research - display_name = "cloak, science" - path = /obj/item/clothing/accessory/poncho/roles/cloak/research - -/datum/gear/suit/roles/poncho/cloak/medical - display_name = "cloak, medical" - path = /obj/item/clothing/accessory/poncho/roles/cloak/medical - -/datum/gear/suit/roles/poncho/cloak/custom //A colorable cloak - display_name = "cloak (colorable)" +/datum/gear/suit/roles/poncho/cloak_custom //A colorable cloak + display_name = "cloak, colorable" path = /obj/item/clothing/accessory/poncho/roles/cloak/custom /datum/gear/suit/roles/poncho/cloak/custom/New() @@ -304,44 +286,51 @@ path = /obj/item/clothing/suit/unathi/robe cost = 1 -/datum/gear/suit/black_lawyer_jacket - display_name = "suit jacket, black" +/datum/gear/suit/lawyer_jackets + display_name = "suit jacket selection" path = /obj/item/clothing/suit/storage/toggle/internalaffairs -/datum/gear/suit/blue_lawyer_jacket - display_name = "suit jacket, blue" - path = /obj/item/clothing/suit/storage/toggle/lawyer/bluejacket - -/datum/gear/suit/purple_lawyer_jacket - display_name = "suit jacket, purple" - path = /obj/item/clothing/suit/storage/toggle/lawyer/purpjacket +/datum/gear/suit/lawyer_jackets/New() + ..() + var/list/jackets = list( + "Black suit jacket" = /obj/item/clothing/suit/storage/toggle/internalaffairs, + "Blue suit jacket" = /obj/item/clothing/suit/storage/toggle/lawyer/bluejacket, + "Purple suit jacket" = /obj/item/clothing/suit/storage/toggle/lawyer/purpjacket + ) + gear_tweaks += new/datum/gear_tweak/path(jackets) /datum/gear/suit/suspenders display_name = "suspenders" path = /obj/item/clothing/suit/suspenders /datum/gear/suit/forensics - display_name = "forensics long, red" + display_name = "forensics uniform selection (Detective)" path = /obj/item/clothing/suit/storage/forensics/red/long allowed_roles = list("Detective") -/datum/gear/suit/forensics/blue - display_name = "forensics long, blue" - path = /obj/item/clothing/suit/storage/forensics/blue/long - allowed_roles = list("Detective") +/datum/gear/suit/forensics/New() + ..() + var/list/uniforms = list( + "Red, long uniform" = /obj/item/clothing/suit/storage/forensics/red/long, + "Blue, long uniform" = /obj/item/clothing/suit/storage/forensics/blue/long, + "Red, short uniform" = /obj/item/clothing/suit/storage/forensics/red, + "Blue, short uniform" = /obj/item/clothing/suit/storage/forensics/blue + ) + gear_tweaks += new/datum/gear_tweak/path(uniforms) -/datum/gear/suit/forensics/blue/short - display_name = "forensics, blue" - path = /obj/item/clothing/suit/storage/forensics/blue - allowed_roles = list("Detective") +/datum/gear/suit/qm_coat + display_name = "coat, quartermaster" + path = /obj/item/clothing/suit/storage/qm + allowed_roles = list("Quartermaster") -/datum/gear/suit/forensics/red/short - display_name = "forensics, red" - path = /obj/item/clothing/suit/storage/forensics/red - allowed_roles = list("Detective") +/datum/gear/suit/cargo_coat + display_name = "coat, cargo tech" + path = /obj/item/clothing/suit/storage/cargo + allowed_roles = list("Quartermaster","Shaft Miner","Cargo Technician","Head of Personnel") + +/obj/item/clothing/suit/storage/cargo // winter coats go here - /datum/gear/suit/wintercoat display_name = "winter coat" path = /obj/item/clothing/suit/storage/hooded/wintercoat @@ -406,7 +395,6 @@ path = /obj/item/clothing/suit/storage/hooded/wintercoat/science allowed_roles = list("Research Director","Scientist", "Roboticist", "Xenobiologist", "Xenobotanist") - /datum/gear/suit/wintercoat/science/robotics display_name = "winter coat, robotics" path = /obj/item/clothing/suit/storage/hooded/wintercoat/science/robotics @@ -477,7 +465,6 @@ /datum/gear/suit/wintercoat/cosmic display_name = "winter coat, cosmic" path = /obj/item/clothing/suit/storage/hooded/wintercoat/cosmic - // winter coats end here /datum/gear/suit/varsity @@ -505,20 +492,18 @@ gear_tweaks += new/datum/gear_tweak/path(sortAssoc(tracks)) /datum/gear/suit/flannel - display_name = "grey flannel" + display_name = "flannel jacket selection" path = /obj/item/clothing/suit/storage/flannel -/datum/gear/suit/flannel/red - display_name = "red flannel" - path = /obj/item/clothing/suit/storage/flannel/red - -/datum/gear/suit/flannel/aqua - display_name = "aqua flannel" - path = /obj/item/clothing/suit/storage/flannel/aqua - -/datum/gear/suit/flannel/brown - display_name = "brown flannel" - path = /obj/item/clothing/suit/storage/flannel/brown +/datum/gear/suit/flannel/New() + ..() + var/list/flannel = list( + "Grey flannel" = /obj/item/clothing/suit/storage/flannel, + "Red flannel" = /obj/item/clothing/suit/storage/flannel/red, + "Aqua flannel" = /obj/item/clothing/suit/storage/flannel/aqua, + "Brown flannel" = /obj/item/clothing/suit/storage/flannel/brown + ) + gear_tweaks += new/datum/gear_tweak/path(flannel) /datum/gear/suit/denim_jacket display_name = "denim jacket" @@ -544,25 +529,20 @@ ..() gear_tweaks += gear_tweak_free_color_choice -/datum/gear/suit/miscellaneous/sec_dep_jacket - display_name = "department jacket, security" +/datum/gear/suit/miscellaneous/dep_jacket + display_name = "department jacket selection" path = /obj/item/clothing/suit/storage/toggle/sec_dep_jacket -/datum/gear/suit/miscellaneous/engi_dep_jacket - display_name = "department jacket, engineering" - path = /obj/item/clothing/suit/storage/toggle/engi_dep_jacket - -/datum/gear/suit/miscellaneous/supply_dep_jacket - display_name = "department jacket, supply" - path = /obj/item/clothing/suit/storage/toggle/supply_dep_jacket - -/datum/gear/suit/miscellaneous/sci_dep_jacket - display_name = "department jacket, science" - path = /obj/item/clothing/suit/storage/toggle/sci_dep_jacket - -/datum/gear/suit/miscellaneous/med_dep_jacket - display_name = "department jacket, medical" - path = /obj/item/clothing/suit/storage/toggle/med_dep_jacket +/datum/gear/suit/miscellaneous/dep_jacket/New() + ..() + var/list/jacket = list( + "Security department jacket" = /obj/item/clothing/suit/storage/toggle/sec_dep_jacket, + "Engineering department jacket" = /obj/item/clothing/suit/storage/toggle/engi_dep_jacket, + "Cargo department jacket" = /obj/item/clothing/suit/storage/toggle/supply_dep_jacket, + "Science department jacket" = /obj/item/clothing/suit/storage/toggle/sci_dep_jacket, + "Medical department jacket" = /obj/item/clothing/suit/storage/toggle/med_dep_jacket + ) + gear_tweaks += new/datum/gear_tweak/path(jacket) /datum/gear/suit/miscellaneous/peacoat display_name = "peacoat" @@ -616,4 +596,4 @@ /datum/gear/suit/miscellaneous/cardigan/New() ..() - gear_tweaks += gear_tweak_free_color_choice \ No newline at end of file + gear_tweaks += gear_tweak_free_color_choice diff --git a/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm b/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm index 2de9713198..f33118bce0 100644 --- a/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm @@ -31,16 +31,20 @@ path = /obj/item/clothing/suit/poncho //Detective alternative -/datum/gear/uniform/detective_alt - display_name = "sleek modern coat, detective" +/datum/gear/suit/detective_alt + display_name = "sleek modern coat selection, detective" path = /obj/item/clothing/suit/storage/det_trench/alt allowed_roles = list("Head of Security", "Detective") -//Detective alternative -/datum/gear/uniform/detective_alt2 - display_name = "sleek modern coat (long), detective" - path = /obj/item/clothing/suit/storage/det_trench/alt2 - allowed_roles = list("Head of Security", "Detective") +/datum/gear/suit/detective_alt/New() + ..() + var/list/coats = list( + "Modern coat (tan)" = /obj/item/clothing/suit/storage/det_trench/alt, + "Modern coat (long, tan)" = /obj/item/clothing/suit/storage/det_trench/alt2, + "Modern coat (black)" = /obj/item/clothing/suit/storage/det_trench/alt/black, + "Modern coat (long, black)" = /obj/item/clothing/suit/storage/det_trench/alt2/black + ) + gear_tweaks += new/datum/gear_tweak/path(coats) //Emergency Responder jackets for Parameds & EMTs, but also general Medical Staff /datum/gear/suit/roles/medical/ems_jacket diff --git a/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm b/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm index df63678531..7c6e9ca629 100644 --- a/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_uniform_vr.dm @@ -235,4 +235,18 @@ Talon jumpsuit /datum/gear/uniform/talonbasic display_name = "ITV Jumpsuit" description = "A jumpsuit that is usually issued to ITV contractors, however others can purchase it to show their support towards ITV." - path = /obj/item/clothing/under/rank/talon/basic \ No newline at end of file + path = /obj/item/clothing/under/rank/talon/basic + +// Summer dresses +/datum/gear/uniform/summerdress + display_name = "summer dress selection" + path = /obj/item/clothing/under/summerdress + +/datum/gear/uniform/summerdress/New() + ..() + var/list/dresses = list( + "black and white" = /obj/item/clothing/under/summerdress, + "blue and white" = /obj/item/clothing/under/summerdress/blue, + "red and white" = /obj/item/clothing/under/summerdress/red + ) + gear_tweaks += new/datum/gear_tweak/path(dresses) diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index e64770f9ef..13816406cf 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -542,7 +542,7 @@ // Generate and cache the on-mob icon, which is used in update_inv_head(). var/body_type = (H && H.species.get_bodytype(H)) - var/cache_key = "[light_overlay][body_type && sprite_sheets[body_type] ? "_[body_type]" : ""]" + var/cache_key = "[light_overlay][body_type && sprite_sheets[body_type] ? body_type : ""]" if(!light_overlay_cache[cache_key]) var/use_icon = LAZYACCESS(sprite_sheets,body_type) || 'icons/mob/light_overlays.dmi' light_overlay_cache[cache_key] = image(icon = use_icon, icon_state = "[light_overlay]") @@ -736,7 +736,7 @@ var/fire_resist = T0C+100 body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS|LEGS allowed = list(/obj/item/weapon/tank/emergency/oxygen) - armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) + armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0) slot_flags = SLOT_OCLOTHING var/blood_overlay_type = "suit" blood_sprite_state = "suitblood" //Defaults to the suit's blood overlay, so that some blood renders instead of no blood. diff --git a/code/modules/clothing/spacesuits/rig/modules/modules.dm b/code/modules/clothing/spacesuits/rig/modules/modules.dm index fe2176215a..0762fedeae 100644 --- a/code/modules/clothing/spacesuits/rig/modules/modules.dm +++ b/code/modules/clothing/spacesuits/rig/modules/modules.dm @@ -41,6 +41,7 @@ // Icons. var/suit_overlay + var/suit_overlay_icon = 'icons/mob/rig_modules.dmi' var/suit_overlay_active // If set, drawn over icon and mob when effect is active. var/suit_overlay_inactive // As above, inactive. var/suit_overlay_used // As above, when engaged. diff --git a/code/modules/clothing/spacesuits/rig/modules/utility.dm b/code/modules/clothing/spacesuits/rig/modules/utility.dm index 43bcd583d2..4550eab088 100644 --- a/code/modules/clothing/spacesuits/rig/modules/utility.dm +++ b/code/modules/clothing/spacesuits/rig/modules/utility.dm @@ -8,7 +8,6 @@ * /obj/item/rig_module/device/arch_drill * /obj/item/rig_module/device/anomaly_scanner * /obj/item/rig_module/maneuvering_jets - * /obj/item/rig_module/foam_sprayer * /obj/item/rig_module/device/broadcaster * /obj/item/rig_module/chem_dispenser * /obj/item/rig_module/chem_dispenser/injector @@ -411,11 +410,7 @@ jets.holder = null jets.ion_trail.set_up(jets) -/obj/item/rig_module/foam_sprayer - - //Deployable Mop - /obj/item/rig_module/mounted/mop name = "mop projector" diff --git a/code/modules/clothing/spacesuits/rig/rig.dm b/code/modules/clothing/spacesuits/rig/rig.dm index aba67b11c7..5cfe6a9290 100644 --- a/code/modules/clothing/spacesuits/rig/rig.dm +++ b/code/modules/clothing/spacesuits/rig/rig.dm @@ -7,7 +7,6 @@ */ /obj/item/weapon/rig - name = "hardsuit control module" icon = 'icons/obj/rig_modules.dmi' desc = "A back-mounted hardsuit deployment and control mechanism." @@ -27,6 +26,8 @@ unacidable = 1 preserve_item = 1 + var/default_mob_icon = 'icons/mob/rig_back.dmi' + var/suit_state //The string used for the suit's icon_state. var/interface_path = "RIGSuit" @@ -98,22 +99,8 @@ var/datum/effect/effect/system/spark_spread/spark_system var/datum/mini_hud/rig/minihud -/obj/item/weapon/rig/examine() - . = ..() - if(wearer) - for(var/obj/item/piece in list(helmet,gloves,chest,boots)) - if(!piece || piece.loc != wearer) - continue - . += "[bicon(piece)] \The [piece] [piece.gender == PLURAL ? "are" : "is"] deployed." - - if(src.loc == usr) - . += "The access panel is [locked? "locked" : "unlocked"]." - . += "The maintenance panel is [open ? "open" : "closed"]." - . += "Hardsuit systems are [offline ? "offline" : "online"]." - . += "The cooling stystem is [cooling_on ? "active" : "inactive"]." - - if(open) - . += "It's equipped with [english_list(installed_modules)]." + // Action button + action_button_name = "Hardsuit Interface" /obj/item/weapon/rig/New() ..() @@ -186,6 +173,23 @@ spark_system = null return ..() +/obj/item/weapon/rig/examine() + . = ..() + if(wearer) + for(var/obj/item/piece in list(helmet,gloves,chest,boots)) + if(!piece || piece.loc != wearer) + continue + . += "[bicon(piece)] \The [piece] [piece.gender == PLURAL ? "are" : "is"] deployed." + + if(src.loc == usr) + . += "The access panel is [locked? "locked" : "unlocked"]." + . += "The maintenance panel is [open ? "open" : "closed"]." + . += "Hardsuit systems are [offline ? "offline" : "online"]." + . += "The cooling stystem is [cooling_on ? "active" : "inactive"]." + + if(open) + . += "It's equipped with [english_list(installed_modules)]." + // We only care about processing when we're on a mob /obj/item/weapon/rig/Moved(old_loc, direction, forced) if(ismob(loc)) @@ -589,7 +593,7 @@ cut_overlays() if(!mob_icon || update_mob_icon) - var/species_icon = 'icons/mob/rig_back.dmi' + var/species_icon = default_mob_icon // Since setting mob_icon will override the species checks in // update_inv_wear_suit(), handle species checks here. if(wearer && sprite_sheets && sprite_sheets[wearer.species.get_bodytype(wearer)]) @@ -599,7 +603,7 @@ if(installed_modules.len) for(var/obj/item/rig_module/module in installed_modules) if(module.suit_overlay) - chest.add_overlay(image('icons/mob/rig_modules.dmi', icon_state = "[module.suit_overlay]", dir = SOUTH)) + chest.add_overlay(image(module.suit_overlay_icon, icon_state = "[module.suit_overlay]", dir = SOUTH)) if(wearer) wearer.update_inv_shoes() diff --git a/code/modules/clothing/spacesuits/rig/rig_verbs.dm b/code/modules/clothing/spacesuits/rig/rig_verbs.dm index c1d2fe2c5b..b28d93bc55 100644 --- a/code/modules/clothing/spacesuits/rig/rig_verbs.dm +++ b/code/modules/clothing/spacesuits/rig/rig_verbs.dm @@ -9,6 +9,11 @@ if(wearer && (wearer.back == src || wearer.belt == src)) tgui_interact(usr) +// So the UI button clicks come here +/obj/item/weapon/rig/ui_action_click() + if(usr == wearer && (wearer.back == src || wearer.belt == src)) + tgui_interact(usr) + /obj/item/weapon/rig/verb/toggle_vision() set name = "Toggle Visor" diff --git a/code/modules/clothing/spacesuits/rig/suits/station_vr.dm b/code/modules/clothing/spacesuits/rig/suits/station_vr.dm index f543b95431..e0d14f189a 100644 --- a/code/modules/clothing/spacesuits/rig/suits/station_vr.dm +++ b/code/modules/clothing/spacesuits/rig/suits/station_vr.dm @@ -53,3 +53,128 @@ /obj/item/weapon/rig/robotics allowed = list(/obj/item/device/flashlight, /obj/item/weapon/storage/box, /obj/item/weapon/storage/belt, /obj/item/device/defib_kit/compact) + +// 'Technomancer' hardsuit +/obj/item/weapon/rig/focalpoint + name = "\improper F.P.E. hardsuit control module" + desc = "A high-end hardsuit produced by Focal Point Energistics, focused around repair and construction." + + icon = 'icons/obj/rig_modules_vr.dmi' // the item + default_mob_icon = 'icons/mob/rig_back_vr.dmi' // the onmob + icon_state = "techno_rig" + suit_type = "\improper F.P.E. hardsuit" + cell_type = /obj/item/weapon/cell/hyper + + // Copied from CE rig + slowdown = 0 + offline_slowdown = 0 + offline_vision_restriction = 0 + rigsuit_max_pressure = 20 * ONE_ATMOSPHERE // Max pressure the rig protects against when sealed + rigsuit_min_pressure = 0 // Min pressure the rig protects against when sealed + min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE + max_heat_protection_temperature = FIRESUIT_MAX_HEAT_PROTECTION_TEMPERATURE // so it's like a rig firesuit + armor = list("melee" = 40, "bullet" = 10, "laser" = 30, "energy" = 55, "bomb" = 70, "bio" = 100, "rad" = 100) + + chest_type = /obj/item/clothing/suit/space/rig/focalpoint + helm_type = /obj/item/clothing/head/helmet/space/rig/focalpoint + boot_type = /obj/item/clothing/shoes/magboots/rig/focalpoint + glove_type = /obj/item/clothing/gloves/gauntlets/rig/focalpoint + +/obj/item/weapon/rig/focalpoint/equipped + initial_modules = list( + /obj/item/rig_module/maneuvering_jets, + /obj/item/rig_module/teleporter, // Try not to set yourself on fire + /obj/item/rig_module/device/rcd, + /obj/item/rig_module/grenade_launcher/metalfoam + ) + +/obj/item/clothing/head/helmet/space/rig/focalpoint + icon = 'icons/inventory/head/item_vr.dmi' + default_worn_icon = 'icons/inventory/head/mob_vr.dmi' + icon_state = "techno_rig" + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +/obj/item/clothing/suit/space/rig/focalpoint + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "techno_rig" + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +/obj/item/clothing/shoes/magboots/rig/focalpoint + icon = 'icons/inventory/feet/item_vr.dmi' + default_worn_icon = 'icons/inventory/feet/mob_vr.dmi' + icon_state = "techno_rig" + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +/obj/item/clothing/gloves/gauntlets/rig/focalpoint + icon = 'icons/inventory/hands/item_vr.dmi' + default_worn_icon = 'icons/inventory/hands/mob_vr.dmi' + icon_state = "techno_rig" + siemens_coefficient = 0 + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +// 'Ironhammer' hardsuit +/obj/item/weapon/rig/hephaestus + name = "\improper Hephaestus hardsuit control module" + desc = "A high-end hardsuit produced by Hephaestus Industries, focused on destroying the competition. Literally." + + icon = 'icons/obj/rig_modules_vr.dmi' // the item + default_mob_icon = 'icons/mob/rig_back_vr.dmi' // the onmob + icon_state = "ihs_rig" + suit_type = "\improper Hephaestus hardsuit" + cell_type = /obj/item/weapon/cell/super + + armor = list("melee" = 70, "bullet" = 70, "laser" = 70, "energy" = 50, "bomb" = 60, "bio" = 100, "rad" = 20) + + chest_type = /obj/item/clothing/suit/space/rig/hephaestus + helm_type = /obj/item/clothing/head/helmet/space/rig/hephaestus + boot_type = /obj/item/clothing/shoes/magboots/rig/hephaestus + glove_type = /obj/item/clothing/gloves/gauntlets/rig/hephaestus + +/obj/item/weapon/rig/hephaestus/equipped + initial_modules = list( + /obj/item/rig_module/maneuvering_jets, + /obj/item/rig_module/grenade_launcher, + /obj/item/rig_module/mounted/egun, + /obj/item/rig_module/mounted/energy_blade + ) + +/obj/item/clothing/head/helmet/space/rig/hephaestus + icon = 'icons/inventory/head/item_vr.dmi' + default_worn_icon = 'icons/inventory/head/mob_vr.dmi' + icon_state = "ihs_rig" + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +/obj/item/clothing/suit/space/rig/hephaestus + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "ihs_rig" + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +/obj/item/clothing/shoes/magboots/rig/hephaestus + icon = 'icons/inventory/feet/item_vr.dmi' + default_worn_icon = 'icons/inventory/feet/mob_vr.dmi' + icon_state = "ihs_rig" + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +/obj/item/clothing/gloves/gauntlets/rig/hephaestus + icon = 'icons/inventory/hands/item_vr.dmi' + default_worn_icon = 'icons/inventory/hands/mob_vr.dmi' + icon_state = "ihs_rig" + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() diff --git a/code/modules/clothing/spacesuits/void/event_vr.dm b/code/modules/clothing/spacesuits/void/event_vr.dm index 357a8ff772..6d947ce245 100644 --- a/code/modules/clothing/spacesuits/void/event_vr.dm +++ b/code/modules/clothing/spacesuits/void/event_vr.dm @@ -73,4 +73,161 @@ /obj/item/clothing/suit/space/void/refurb/mercenary/talon name = "talon mercenary's voidsuit" - desc = "A refurbished early contact era voidsuit of human design. These things aren't especially good against modern weapons but they're sturdy, incredibly easy to come by, and there are lots of spare parts for repairs. Many old-timer mercs swear by these old things, even if new powered hardsuits have more features and better armor. The red markings indicate this as the mercenary variant. \"ITV TALON\" has been stamped onto each pauldron and the right side of the breastplate." \ No newline at end of file + desc = "A refurbished early contact era voidsuit of human design. These things aren't especially good against modern weapons but they're sturdy, incredibly easy to come by, and there are lots of spare parts for repairs. Many old-timer mercs swear by these old things, even if new powered hardsuits have more features and better armor. The red markings indicate this as the mercenary variant. \"ITV TALON\" has been stamped onto each pauldron and the right side of the breastplate." + +// HEV Suits +/obj/item/clothing/suit/space/void/hev + name = "hazardous environment suit" + desc = "Has a strange smell to it, but you feel like it might be an old friend." + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "hev_orange" + + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +/obj/item/clothing/suit/space/void/hev/violet + icon_state = "hev_violet" + desc = "Has a strange smell to it, but you feel like it might be an old friend. This one has 'Dr. Coomer' engraved on the collar." + +/obj/item/clothing/head/helmet/space/void/hev + name = "hazardous environment helmet" + desc = "Has a strange smell to it, but you feel like it might be an old friend." + + icon = 'icons/inventory/head/item_vr.dmi' + default_worn_icon = 'icons/inventory/head/mob_vr.dmi' + icon_state = "hev_orange" + + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +/obj/item/clothing/head/helmet/space/void/hev/violet + icon_state = "hev_violet" + desc = "Has a strange smell to it, but you feel like it might be an old friend. This one has 'Dr. Coomer' engraved on the collar." + +// Makeshift void suit +/obj/item/clothing/suit/space/void/makeshift + name = "makeshift voidsuit" + desc = "This is not something you should use if you have other options, but it's better than nothing!" + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "makeshift_void" + + armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 0) + + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +/obj/item/clothing/head/helmet/space/void/makeshift + name = "makeshift voidsuit helmet" + desc = "This is not something you should use if you have other options, but it's better than nothing!" + + icon = 'icons/inventory/head/item_vr.dmi' + default_worn_icon = 'icons/inventory/head/mob_vr.dmi' + icon_state = "makeshift_void" + + armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 0) + + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +// 'Custodian' armor +/obj/item/clothing/suit/space/void/custodian + name = "custodian suit" + desc = "Vacuum-capable armor for a Custodian to do their duty." + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "custodian" + + armor = list("melee" = 70, "bullet" = 70, "laser" = 70, "energy" = 50, "bomb" = 40, "bio" = 0, "rad" = 20) + + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +/obj/item/clothing/head/helmet/space/void/custodian + name = "custodian helmet" + desc = "Vacuum-capable helmet for a Custodian to do their duty." + + icon = 'icons/inventory/head/item_vr.dmi' + default_worn_icon = 'icons/inventory/head/mob_vr.dmi' + icon_state = "custodian" + + armor = list("melee" = 70, "bullet" = 70, "laser" = 70, "energy" = 50, "bomb" = 40, "bio" = 0, "rad" = 20) + + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +// 'Moebius' armor +/obj/item/clothing/suit/space/void/aether + name = "\improper Aether voidsuit" + desc = "This suit seems rather high-end for a standard voidsuit. The air in it has a hint of 'new car smell', courtesy of Aether Atmospherics." + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "moebiussuit" + + armor = list("melee" = 30, "bullet" = 30, "laser" = 30, "energy" = 20, "bomb" = 20, "bio" = 100, "rad" = 20) + + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +/obj/item/clothing/head/helmet/space/void/aether + name = "\improper Aether voidsuit helmet" + desc = "Aether Atmospherics thought that giving this helmet selectable colored lighting would improve market penetration. Very comfortable, regardless." + + icon = 'icons/inventory/head/item_vr.dmi' + default_worn_icon = 'icons/inventory/head/mob_vr.dmi' + icon_state = "moebiushelm_White" + + armor = list("melee" = 30, "bullet" = 30, "laser" = 30, "energy" = 20, "bomb" = 20, "bio" = 100, "rad" = 20) + + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +/obj/item/clothing/head/helmet/space/void/aether/verb/select_color() + set name = "Helmet Color" + set desc = "Change the color of [src]" + set category = "Object" + + var/choice = tgui_input_list(usr, "Select a new color:", "[src] Color", list("White", "Blue", "Purple", "Yellow", "Red", "Green")) + if(!choice) + return + icon_state = "moebiushelm_[choice]" + update_clothing_icon() + to_chat(usr, "[src] color changed to: [choice]") + +// Excelsior suit +/obj/item/clothing/suit/space/void/excelsior + name = "\improper Excelsior voidsuit" + desc = "A space suit from a particular spaceship: Excelsior." + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "excelsior" + + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() + +/obj/item/clothing/head/helmet/space/void/excelsior + name = "\improper Excelsior voidsuit helmet" + desc = "A space helmet from a particular spaceship: Excelsior." + + icon = 'icons/inventory/head/item_vr.dmi' + default_worn_icon = 'icons/inventory/head/mob_vr.dmi' + icon_state = "excelsior" + + // No animal people sprites for these yet, sad times + species_restricted = list("exclude", SPECIES_TESHARI, SPECIES_VOX, SPECIES_DIONA) + sprite_sheets = list() diff --git a/code/modules/clothing/suits/armor_vr.dm b/code/modules/clothing/suits/armor_vr.dm index 409a63f834..1f9ccf2402 100644 --- a/code/modules/clothing/suits/armor_vr.dm +++ b/code/modules/clothing/suits/armor_vr.dm @@ -118,3 +118,24 @@ /obj/item/clothing/suit/armor/pcarrier/explorer/deluxe name = "modular explorer suit" desc = "A modification of the explorer suit with a modular armor system. Requires you to insert armor plates." + +// 'Crusader' armor +/obj/item/clothing/suit/armor/crusader + name = "crusader armor" + desc = "God will protect those who defend his faith." + + armor = list("melee" = 50, "bullet" = 50, "laser" = 50, "energy" = 25, "bomb" = 30, "bio" = 0, "rad" = 0) + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "crusader_suit" + +/obj/item/clothing/head/helmet/crusader + name = "crusader helmet" + desc = "God will protect those who defend his faith." + + armor = list("melee" = 50, "bullet" = 50, "laser" = 50, "energy" = 25, "bomb" = 30, "bio" = 0, "rad" = 0) + + icon = 'icons/inventory/head/item_vr.dmi' + default_worn_icon = 'icons/inventory/head/mob_vr.dmi' + icon_state = "crusader_head" diff --git a/code/modules/clothing/suits/jobs_vr.dm b/code/modules/clothing/suits/jobs_vr.dm new file mode 100644 index 0000000000..9b34c18637 --- /dev/null +++ b/code/modules/clothing/suits/jobs_vr.dm @@ -0,0 +1,18 @@ +// Cargotech jacket +/obj/item/clothing/suit/storage/cargo + name = "cargo jacket" + desc = "A jacket typically assigned to cargo technicians when it's chilly in cargonia." + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "cargo_jacket" + +// QM Coat +/obj/item/clothing/suit/storage/qm + name = "\improper QM coat" + desc = "A coat typically assigned to quartermasters when it's chilly in cargonia." + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "qm_coat" + \ No newline at end of file diff --git a/code/modules/clothing/suits/labcoat_vr.dm b/code/modules/clothing/suits/labcoat_vr.dm new file mode 100644 index 0000000000..4f82afd2e3 --- /dev/null +++ b/code/modules/clothing/suits/labcoat_vr.dm @@ -0,0 +1,27 @@ +// 'Modern' labcoats +/obj/item/clothing/suit/storage/toggle/labcoat/modern + name = "modern labcoat" + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "labcoat_mod" + +/obj/item/clothing/suit/storage/toggle/labcoat/modern/cmo + name = "modern cmo's labcoat" + desc = "A suit that protects against minor chemical spills. This one has distinct markings on the arms." + icon_state = "labcoat_cmo_mod" + +// 'Modern' biosuits +/obj/item/clothing/suit/bio_suit/modern + name = "modern bio suit" + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "bio_mod" + +/obj/item/clothing/head/bio_hood/modern + name = "modern bio hood" + + icon = 'icons/inventory/head/item_vr.dmi' + default_worn_icon = 'icons/inventory/head/mob_vr.dmi' + icon_state = "bio_mod" diff --git a/code/modules/clothing/suits/miscellaneous_vr.dm b/code/modules/clothing/suits/miscellaneous_vr.dm index 34d5d71ac9..8febb11143 100644 --- a/code/modules/clothing/suits/miscellaneous_vr.dm +++ b/code/modules/clothing/suits/miscellaneous_vr.dm @@ -88,18 +88,24 @@ /obj/item/clothing/suit/storage/det_trench/alt name = "sleek modern coat" desc = "A sleek overcoat made of neo-laminated fabric. Has a reasonably sized pocket on the inside." + icon = 'icons/inventory/suit/item_vr.dmi' - icon_override = 'icons/inventory/suit/mob_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' icon_state = "cyberpunksleek" - item_state = "cyberpunksleek" /obj/item/clothing/suit/storage/det_trench/alt2 name = "sleek modern coat (long)" desc = "A sleek long overcoat made of neo-laminated fabric. Has a reasonably sized pocket on the inside." + icon = 'icons/inventory/suit/item_vr.dmi' - icon_override = 'icons/inventory/suit/mob_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' icon_state = "cyberpunksleek_long" - item_state = "cyberpunksleek_long" + +/obj/item/clothing/suit/storage/det_trench/alt/black + icon_state = "cyberpunksleek_black" + +/obj/item/clothing/suit/storage/det_trench/alt2/black + icon_state = "cyberpunksleek_long_black" //Talon Hoodie /obj/item/clothing/suit/storage/toggle/hoodie/talon @@ -108,4 +114,24 @@ icon = 'icons/inventory/suit/item_vr.dmi' icon_override = 'icons/inventory/suit/mob_vr.dmi' icon_state = "talonhoodie" - item_state_slots = list(slot_r_hand_str = "suit_blue", slot_l_hand_str = "suit_blue") \ No newline at end of file + item_state_slots = list(slot_r_hand_str = "suit_blue", slot_l_hand_str = "suit_blue") + +// Bladerunner coat +/obj/item/clothing/suit/storage/bladerunner + name = "leather coat" + desc = "An old leather coat. Has probably seen things you wouldn't believe." + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "bladerunner_coat" + +// Cyberpunk 'orange' vest +/obj/item/clothing/suit/cyberpunk + name = "cyberpunk vest" + desc = "A red vest with golden streaks. It's made out of tough materials, and can protect fairly well against bullets. Wake the fuck up, Samurai." + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "cyberpunk" + armor = list("melee" = 10, "bullet" = 20, "laser" = 10, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0) + diff --git a/code/modules/clothing/under/jobs/medsci.dm b/code/modules/clothing/under/jobs/medsci.dm index 744c2a55c2..87346c6741 100644 --- a/code/modules/clothing/under/jobs/medsci.dm +++ b/code/modules/clothing/under/jobs/medsci.dm @@ -122,6 +122,15 @@ rolled_sleeves = -1 /obj/item/clothing/under/rank/medical/paramedic + name = "paramedic uniform" + desc = "It's made of a special fiber that provides minor protection against biohazards. This one is the color scheme that designates a rapid first responder." + icon_state = "paramedic" + item_state_slots = list(slot_r_hand_str = "white", slot_l_hand_str = "white") + body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS + rolled_down = -1 + rolled_sleeves = -1 + +/obj/item/clothing/under/rank/medical/paramedic_alt name = "short sleeve medical jumpsuit" desc = "It's made of a special fiber that provides minor protection against biohazards. This one has a cross on the chest denoting that the wearer is trained medical personnel." icon_state = "medical_short" diff --git a/code/modules/clothing/under/miscellaneous_vr.dm b/code/modules/clothing/under/miscellaneous_vr.dm index 112f45f3ba..ef3c67103a 100644 --- a/code/modules/clothing/under/miscellaneous_vr.dm +++ b/code/modules/clothing/under/miscellaneous_vr.dm @@ -196,4 +196,32 @@ icon_override = 'icons/inventory/uniform/mob_vr.dmi' icon_state = "talon_captain" item_state = "talon_captain" - rolled_sleeves = 0 \ No newline at end of file + rolled_sleeves = 0 + +// Excelsior uniforms +/obj/item/clothing/under/excelsior + name = "\improper Excelsior uniform" + desc = "A uniform from a particular spaceship: Excelsior." + + icon = 'icons/inventory/uniform/item_vr.dmi' + default_worn_icon = 'icons/inventory/uniform/mob_vr.dmi' + icon_state = "excelsior_white" + +/obj/item/clothing/under/excelsior/mixed + icon_state = "excelsior_mixed" +/obj/item/clothing/under/excelsior/orange + icon_state = "excelsior_orange" + +// Summer dresses +/obj/item/clothing/under/summerdress + name = "summer dress" + desc = "A nice summer dress." + + icon = 'icons/inventory/uniform/item_vr.dmi' + default_worn_icon = 'icons/inventory/uniform/mob_vr.dmi' + icon_state = "summerdress" + +/obj/item/clothing/under/summerdress/red + icon_state = "summerdress3" +/obj/item/clothing/under/summerdress/blue + icon_state = "summerdress2" diff --git a/code/modules/economy/vending_machines.dm b/code/modules/economy/vending_machines.dm index 7d4d9270ea..dfd693afd2 100644 --- a/code/modules/economy/vending_machines.dm +++ b/code/modules/economy/vending_machines.dm @@ -1156,6 +1156,7 @@ /obj/item/clothing/head/surgery/black = 5, /obj/item/clothing/shoes/white = 5, /obj/item/clothing/suit/storage/toggle/labcoat = 5, + /obj/item/clothing/suit/storage/toggle/labcoat/modern = 5, /obj/item/clothing/mask/surgical = 5, /obj/item/clothing/suit/storage/hooded/wintercoat/medical = 5, /obj/item/clothing/shoes/boots/winter/medical = 5 @@ -1227,6 +1228,7 @@ /obj/item/clothing/under/rank/scientist/skirt = 5, /obj/item/clothing/under/rank/scientist/turtleneck = 5, /obj/item/clothing/suit/storage/toggle/labcoat = 5, + /obj/item/clothing/suit/storage/toggle/labcoat/modern = 5, /obj/item/clothing/shoes/white = 5, /obj/item/clothing/shoes/slippers = 5, /obj/item/clothing/suit/storage/hooded/wintercoat/science = 5, @@ -1348,6 +1350,7 @@ /obj/item/clothing/under/rank/cargotech/jeans = 5, /obj/item/clothing/under/rank/cargotech/jeans/female = 5, /obj/item/clothing/suit/storage/hooded/wintercoat/cargo = 5, + /obj/item/clothing/suit/storage/cargo = 5, /obj/item/clothing/shoes/boots/winter/supply = 5, /obj/item/clothing/shoes/black = 5, /obj/item/clothing/gloves/black = 5, diff --git a/code/modules/mob/living/carbon/human/human_species.dm b/code/modules/mob/living/carbon/human/human_species.dm index 3c6451fc99..29b8155366 100644 --- a/code/modules/mob/living/carbon/human/human_species.dm +++ b/code/modules/mob/living/carbon/human/human_species.dm @@ -22,6 +22,17 @@ . = ..() delete_inventory() +/mob/living/carbon/human/dummy/mannequin/autoequip + icon = 'icons/effects/species.dmi' + icon_state = "lizard_f_s_full" + +/mob/living/carbon/human/dummy/mannequin/autoequip/Initialize() + icon = null + icon_state = "" + . = ..() + for(var/obj/item/I in loc) + equip_to_appropriate_slot(I) + /mob/living/carbon/human/skrell/Initialize(var/new_loc) h_style = "Skrell Short Tentacles" return ..(new_loc, SPECIES_SKRELL) diff --git a/code/modules/vore/fluffstuff/custom_clothes_vr.dm b/code/modules/vore/fluffstuff/custom_clothes_vr.dm index 5bcd41de3f..2116cb6048 100644 --- a/code/modules/vore/fluffstuff/custom_clothes_vr.dm +++ b/code/modules/vore/fluffstuff/custom_clothes_vr.dm @@ -889,74 +889,56 @@ No. With a teleporter? Just *no*. - Hawk, YW //catalogue_data = list(/datum/category_item/catalogue/information/organization/khi) sensor_mode = 3 - icon = 'icons/vore/custom_clothes_vr.dmi' - icon_state = "khi_uniform_i" - - icon_override = 'icons/vore/custom_clothes_vr.dmi' - item_state = "" + icon = 'icons/inventory/uniform/item_vr.dmi' + default_worn_icon = 'icons/inventory/uniform/mob_vr.dmi' + icon_state = "khi_uniform" /obj/item/clothing/under/rank/khi/cmd //Command version name = "GE command suit" //CHOMPedit: Change to GE desc = "Gilthari Exports uniform. An extra-comfortable command one, at that." //CHOMPedit - icon_state = "khi_uniform_cmd_i" - item_state = "khi_uniform_cmd" - worn_state = "khi_uniform_cmd" + icon_state = "khi_uniform_cmd" armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) /obj/item/clothing/under/rank/khi/sec //Security version name = "GE security suit" //CHOMPedit: Change to GE desc = "Gilthari Exports uniform. This one has angry red security stripes. Keepin' the peace in style." //CHOMPedit - icon_state = "khi_uniform_sec_i" - item_state = "khi_uniform_sec" - worn_state = "khi_uniform_sec" + icon_state = "khi_uniform_sec" armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) /obj/item/clothing/under/rank/khi/med //Medical version name = "GE medical suit" //CHOMPedit: Change to GE desc = "Gilthari Exports uniform. The medical version. Why not just get a new body, anyway?"//CHOMPedit - icon_state = "khi_uniform_med_i" - item_state = "khi_uniform_med" - worn_state = "khi_uniform_med" + icon_state = "khi_uniform_med" armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 10, rad = 0) /obj/item/clothing/under/rank/khi/eng //Engineering version name = "GE engineering suit" //CHOMPedit: Change to GE desc = "Gilthari Exports uniform. One fit for an engineer, by the looks of it. Building the future, one disaster at a time." //CHOMPedit - icon_state = "khi_uniform_eng_i" - item_state = "khi_uniform_eng" - worn_state = "khi_uniform_eng" + icon_state = "khi_uniform_eng" armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 10) /obj/item/clothing/under/rank/khi/sci //Science version name = "GE science suit" //CHOMPedit: Change to GE desc = "Gilthari Exports uniform. For performing science in, based on the color! Only SCIENCE can save us now." //CHOMPedit - icon_state = "khi_uniform_sci_i" - item_state = "khi_uniform_sci" - worn_state = "khi_uniform_sci" + icon_state = "khi_uniform_sci" armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 10, bio = 0, rad = 0) /obj/item/clothing/under/rank/khi/crg //Cargo version name = "GE cargo suit" //CHOMPedit: Change to GE desc = "A sleek cargo uniform from Gilthari Exports." //CHOMPedit - icon_state = "khi_uniform_crg_i" - item_state = "khi_uniform_crg" - worn_state = "khi_uniform_crg" + icon_state = "khi_uniform_crg" armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) /obj/item/clothing/under/rank/khi/civ //Science version name = "GE civilian suit" //CHOMPedit: Change to GE desc = "A sleek civilian uniform from Gilthari Exports." //CHOMPedit - icon_state = "khi_uniform_civ_i" - item_state = "khi_uniform_civ" - worn_state = "khi_uniform_civ" + icon_state = "khi_uniform_civ" armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 0, rad = 0) /obj/item/clothing/under/rank/khi/fluff/aronai //Aro fluff version name = "KHI meditech suit" - desc = "An outdated uniform of some sort. You get the sense that whoever wore this must've been very full of themselves" - icon_state = "khi_uniform_aro_i" - item_state = "khi_uniform_aro" - worn_state = "khi_uniform_aro" + desc = "An outdated uniform of some sort. You get the sense that whoever wore this must've been very full of themselves" //YW edit + icon_state = "khi_uniform_aro" armor = list(melee = 0, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 10, rad = 0) //jacobdragon:Earthen Breath @@ -1189,30 +1171,26 @@ Departamental Swimsuits, for general use /obj/item/clothing/under/rank/trek name = "Section 31 Uniform" desc = "Oooh... right." - icon = 'icons/vore/custom_clothes_vr.dmi' - icon_override = 'icons/vore/custom_clothes_vr.dmi' - item_state = "" + icon = 'icons/inventory/uniform/item_vr.dmi' + default_worn_icon = 'icons/inventory/uniform/mob_vr.dmi' //TOS /obj/item/clothing/under/rank/trek/command name = "Command Uniform" desc = "The uniform worn by command officers in the mid 2260s." icon_state = "trek_command" - item_state = "trek_command" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) // Considering only staff heads get to pick it /obj/item/clothing/under/rank/trek/eng //CHOMPEdit: Engineering only name = "Operations Uniform" desc = "The uniform worn by operations officers of the mid 2260s. You feel strangely vulnerable just seeing this..." icon_state = "trek_engsec" - item_state = "trek_engsec" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) // since they're shared between jobs and kinda moot. //CHOMPEdit: I'll tell you what, the armor values are NOT shared. Removed melee bonus. /obj/item/clothing/under/rank/trek/medsci name = "MedSci Uniform" desc = "The uniform worn by medsci officers in the mid 2260s." icon_state = "trek_medsci" - item_state = "trek_medsci" permeability_coefficient = 0.50 armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) // basically a copy of vanilla sci/med @@ -1220,59 +1198,48 @@ Departamental Swimsuits, for general use /obj/item/clothing/under/rank/trek/command/next desc = "The uniform worn by command officers. This one's from the mid 2360s." icon_state = "trek_next_command" - item_state = "trek_next_command" /obj/item/clothing/under/rank/trek/eng/next //CHOMPEdit: Engineering only desc = "The uniform worn by operation officers. This one's from the mid 2360s." icon_state = "trek_next_engsec" - item_state = "trek_next_engsec" /obj/item/clothing/under/rank/trek/medsci/next desc = "The uniform worn by medsci officers. This one's from the mid 2360s." icon_state = "trek_next_medsci" - item_state = "trek_next_medsci" //ENT /obj/item/clothing/under/rank/trek/command/ent desc = "The uniform worn by command officers of the 2140s." icon_state = "trek_ent_command" - item_state = "trek_ent_command" /obj/item/clothing/under/rank/trek/eng/ent //CHOMPEdit: Engineering only desc = "The uniform worn by operations officers of the 2140s." icon_state = "trek_ent_engsec" - item_state = "trek_ent_engsec" /obj/item/clothing/under/rank/trek/medsci/ent desc = "The uniform worn by medsci officers of the 2140s." icon_state = "trek_ent_medsci" - item_state = "trek_ent_medsci" //VOY /obj/item/clothing/under/rank/trek/command/voy desc = "The uniform worn by command officers of the 2370s." icon_state = "trek_voy_command" - item_state = "trek_voy_command" /obj/item/clothing/under/rank/trek/eng/voy //CHOMPEdit: Engineering only desc = "The uniform worn by operations officers of the 2370s." icon_state = "trek_voy_engsec" - item_state = "trek_voy_engsec" /obj/item/clothing/under/rank/trek/medsci/voy desc = "The uniform worn by medsci officers of the 2370s." icon_state = "trek_voy_medsci" - item_state = "trek_voy_medsci" //DS9 - /obj/item/clothing/suit/storage/trek/ds9 name = "Padded Overcoat" desc = "The overcoat worn by all officers of the 2380s." + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' icon_state = "trek_ds9_coat" - icon = 'icons/vore/custom_clothes_vr.dmi' - item_state = "trek_ds9_coat_mob" - icon_override = 'icons/vore/custom_clothes_vr.dmi' body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS permeability_coefficient = 0.50 allowed = list( @@ -1289,23 +1256,21 @@ Departamental Swimsuits, for general use name = "Admiral Overcoat" desc = "Admirality specialty coat to keep flag officers fashionable and protected." icon_state = "trek_ds9_coat_adm" - item_state = "trek_ds9_coat_adm_mob" armor = list(melee = 45, bullet = 35, laser = 35, energy = 20, bomb = 0, bio = 40, rad = 55) - /obj/item/clothing/under/rank/trek/command/ds9 desc = "The uniform worn by command officers of the 2380s." - icon_state = "trek_command" + icon_state = "trek_command" // no unique state for this one item_state = "trek_ds9_command" /obj/item/clothing/under/rank/trek/eng/ds9 //CHOMPEdit: Engineering only desc = "The uniform worn by operations officers of the 2380s." - icon_state = "trek_engsec" + icon_state = "trek_engsec" // no unique state for this one item_state = "trek_ds9_engsec" /obj/item/clothing/under/rank/trek/medsci/ds9 desc = "The uniform undershit worn by medsci officers of the 2380s." - icon_state = "trek_medsci" + icon_state = "trek_medsci" // no unique state for this one item_state = "trek_ds9_medsci" //For general use maybe @@ -1941,7 +1906,7 @@ Departamental Swimsuits, for general use item_icons = list() default_worn_icon = 'icons/vore/custom_clothes_vr.dmi' color = COLOR_NAVY - sprite_sheets = null + sprite_sheets = list() //SweetBlueSylveon:Pip Shyner /obj/item/clothing/accessory/poncho/roles/cloak/hop/fluff/pip diff --git a/icons/inventory/accessory/item.dmi b/icons/inventory/accessory/item.dmi index 21d8bbff1d..61e8c36841 100644 Binary files a/icons/inventory/accessory/item.dmi and b/icons/inventory/accessory/item.dmi differ diff --git a/icons/inventory/belt/item.dmi b/icons/inventory/belt/item.dmi index 4f97b40e27..9fd819307a 100644 Binary files a/icons/inventory/belt/item.dmi and b/icons/inventory/belt/item.dmi differ diff --git a/icons/inventory/feet/item_vr.dmi b/icons/inventory/feet/item_vr.dmi index 5b81be4b1f..cfba06c39b 100644 Binary files a/icons/inventory/feet/item_vr.dmi and b/icons/inventory/feet/item_vr.dmi differ diff --git a/icons/inventory/feet/mob_vr.dmi b/icons/inventory/feet/mob_vr.dmi index b1fbd831a1..c717e731fb 100644 Binary files a/icons/inventory/feet/mob_vr.dmi and b/icons/inventory/feet/mob_vr.dmi differ diff --git a/icons/inventory/hands/item_vr.dmi b/icons/inventory/hands/item_vr.dmi index c682016730..ba5e3bc134 100644 Binary files a/icons/inventory/hands/item_vr.dmi and b/icons/inventory/hands/item_vr.dmi differ diff --git a/icons/inventory/hands/mob_vr.dmi b/icons/inventory/hands/mob_vr.dmi index 36e4219289..c2a8db76f8 100644 Binary files a/icons/inventory/hands/mob_vr.dmi and b/icons/inventory/hands/mob_vr.dmi differ diff --git a/icons/inventory/head/item_vr.dmi b/icons/inventory/head/item_vr.dmi index d35d62e18e..929960272b 100644 Binary files a/icons/inventory/head/item_vr.dmi and b/icons/inventory/head/item_vr.dmi differ diff --git a/icons/inventory/head/mob_vr.dmi b/icons/inventory/head/mob_vr.dmi index 417faba92c..efde8d6aa5 100644 Binary files a/icons/inventory/head/mob_vr.dmi and b/icons/inventory/head/mob_vr.dmi differ diff --git a/icons/inventory/suit/item_vr.dmi b/icons/inventory/suit/item_vr.dmi index 31083070be..8357527923 100644 Binary files a/icons/inventory/suit/item_vr.dmi and b/icons/inventory/suit/item_vr.dmi differ diff --git a/icons/inventory/suit/mob_vr.dmi b/icons/inventory/suit/mob_vr.dmi index 35f233c1c3..24d7365930 100644 Binary files a/icons/inventory/suit/mob_vr.dmi and b/icons/inventory/suit/mob_vr.dmi differ diff --git a/icons/inventory/uniform/item.dmi b/icons/inventory/uniform/item.dmi index 5b7c197b03..08cc0cb815 100644 Binary files a/icons/inventory/uniform/item.dmi and b/icons/inventory/uniform/item.dmi differ diff --git a/icons/inventory/uniform/item_vr.dmi b/icons/inventory/uniform/item_vr.dmi index 2e97626d06..e3242dda79 100644 Binary files a/icons/inventory/uniform/item_vr.dmi and b/icons/inventory/uniform/item_vr.dmi differ diff --git a/icons/inventory/uniform/mob.dmi b/icons/inventory/uniform/mob.dmi index 71d8348cf6..87cee8aca9 100644 Binary files a/icons/inventory/uniform/mob.dmi and b/icons/inventory/uniform/mob.dmi differ diff --git a/icons/inventory/uniform/mob_vr.dmi b/icons/inventory/uniform/mob_vr.dmi index ad363e9706..3dc58ffd2c 100644 Binary files a/icons/inventory/uniform/mob_vr.dmi and b/icons/inventory/uniform/mob_vr.dmi differ diff --git a/icons/mob/rig_back_vr.dmi b/icons/mob/rig_back_vr.dmi new file mode 100644 index 0000000000..aa676c0e94 Binary files /dev/null and b/icons/mob/rig_back_vr.dmi differ diff --git a/icons/obj/rig_modules.dmi b/icons/obj/rig_modules.dmi index 5c81745fae..a63fcc23a8 100644 Binary files a/icons/obj/rig_modules.dmi and b/icons/obj/rig_modules.dmi differ diff --git a/icons/obj/rig_modules_vr.dmi b/icons/obj/rig_modules_vr.dmi index 1ee2c008aa..687ea5ba78 100644 Binary files a/icons/obj/rig_modules_vr.dmi and b/icons/obj/rig_modules_vr.dmi differ diff --git a/icons/obj/suitdispenser.dmi b/icons/obj/suitdispenser.dmi index 09723225a4..def549b9bb 100644 Binary files a/icons/obj/suitdispenser.dmi and b/icons/obj/suitdispenser.dmi differ diff --git a/icons/vore/custom_clothes_vr.dmi b/icons/vore/custom_clothes_vr.dmi index d9b172cd5a..595ce2da40 100644 Binary files a/icons/vore/custom_clothes_vr.dmi and b/icons/vore/custom_clothes_vr.dmi differ diff --git a/maps/offmap_vr/om_ships/aro3.dmm b/maps/offmap_vr/om_ships/aro3.dmm index 095ca08b7a..f31d589f73 100644 --- a/maps/offmap_vr/om_ships/aro3.dmm +++ b/maps/offmap_vr/om_ships/aro3.dmm @@ -2589,6 +2589,10 @@ /obj/structure/table/marble, /turf/simulated/floor/tiled/eris/cafe, /area/aro3/kitchen) +"vP" = ( +/obj/machinery/gear_dispenser/suit_fancy/aether, +/turf/simulated/floor/tiled/eris/steel/panels, +/area/aro3/eva_hall) "vQ" = ( /obj/structure/table/steel, /obj/item/device/flashlight/lamp, @@ -3953,6 +3957,22 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 }, +<<<<<<< HEAD +||||||| parent of df7a88506f... Merge pull request #11032 from VOREStation/Arokha/megaport +/obj/machinery/light_switch{ + dir = 1; + pixel_y = -24 + }, +/obj/item/device/uav/loaded, +======= +/obj/machinery/light_switch{ + dir = 1; + pixel_y = -24 + }, +/obj/item/device/uav/loaded{ + nickname = "FoxBot Beta" + }, +>>>>>>> df7a88506f... Merge pull request #11032 from VOREStation/Arokha/megaport /turf/simulated/floor/tiled/eris/dark/gray_perforated, /area/aro3/repair_bay) "Gy" = ( @@ -42234,7 +42254,7 @@ el el vZ lu -DM +vP XF XF Nu diff --git a/maps/offmap_vr/talon/talon_v2.dm b/maps/offmap_vr/talon/talon_v2.dm index 2b2ede093c..1a8e79af15 100644 --- a/maps/offmap_vr/talon/talon_v2.dm +++ b/maps/offmap_vr/talon/talon_v2.dm @@ -343,7 +343,7 @@ speaking of, if some dumbass does take it and fly off solo then get themselves k /obj/item/clothing/under/rank/medical, /obj/item/clothing/under/rank/nurse, /obj/item/clothing/under/rank/orderly, - /obj/item/clothing/suit/storage/toggle/labcoat, + /obj/item/clothing/suit/storage/toggle/labcoat/modern, /obj/item/clothing/suit/storage/toggle/fr_jacket, /obj/item/clothing/shoes/white, /obj/item/device/radio/headset/talon, diff --git a/maps/southern_cross/structures/closets/medical.dm b/maps/southern_cross/structures/closets/medical.dm index f528c2a0f1..666b42d617 100644 --- a/maps/southern_cross/structures/closets/medical.dm +++ b/maps/southern_cross/structures/closets/medical.dm @@ -13,6 +13,7 @@ /obj/item/clothing/under/rank/chief_medical_officer/skirt, /obj/item/clothing/suit/storage/toggle/labcoat/cmo, /obj/item/clothing/suit/storage/toggle/labcoat/cmoalt, + /obj/item/clothing/suit/storage/toggle/labcoat/modern/cmo, /obj/item/weapon/cartridge/cmo, /obj/item/clothing/gloves/sterile/latex, /obj/item/clothing/shoes/brown, diff --git a/maps/virgo_minitest/virgo_minitest_defines.dm b/maps/virgo_minitest/virgo_minitest_defines.dm index abee28169d..716815b7b3 100644 --- a/maps/virgo_minitest/virgo_minitest_defines.dm +++ b/maps/virgo_minitest/virgo_minitest_defines.dm @@ -60,6 +60,10 @@ allowed_spawns = list("Arrivals Shuttle","Gateway","Cryogenic Storage","Cyborg Storage") +/datum/map/virgo_minitest/New() + ..() + SSticker.start_immediately = TRUE + /datum/map_z_level/minitest/station z = Z_LEVEL_MAIN_VIRGO_TESTING name = "Station Level" diff --git a/tgui/packages/common/string.js b/tgui/packages/common/string.js index 461f975b3a..4278a1fb3e 100644 --- a/tgui/packages/common/string.js +++ b/tgui/packages/common/string.js @@ -78,13 +78,21 @@ export const createSearch = (searchText, stringifier) => { }; }; +export const isUppercase = chr => { + return chr.toUpperCase() === chr; +}; + export const capitalize = str => { // Handle array if (Array.isArray(str)) { return str.map(capitalize); } // Handle string - return str.charAt(0).toUpperCase() + str.slice(1).toLowerCase(); + let chr = str.charAt(0); + if (isUppercase(chr)) { + return str; // Already caps, might be an acronym, so don't mess it up by lowercasing the rest + } + return chr.toUpperCase() + str.slice(1).toLowerCase(); }; export const toTitleCase = str => { diff --git a/tgui/public/tgui-common.bundle.js b/tgui/public/tgui-common.bundle.js index 013a168d31..d363cbd6bb 100644 --- a/tgui/public/tgui-common.bundle.js +++ b/tgui/public/tgui-common.bundle.js @@ -1 +1 @@ -(self.webpackChunktgui_workspace=self.webpackChunktgui_workspace||[]).push([[962],{33407:function(e,t,n){"use strict";t.__esModule=!0,t.popperGenerator=v,t.createPopper=void 0;var r=d(n(98825)),o=d(n(52089)),i=d(n(66469)),a=d(n(54484)),u=(d(n(82020)),d(n(7183))),c=d(n(16936)),s=(d(n(11026)),d(n(20675)),d(n(78044)),d(n(5495))),l=d(n(45073));t.detectOverflow=l["default"];var f=n(31966);n(54945);function d(e){return e&&e.__esModule?e:{"default":e}}var p={placement:"bottom",modifiers:[],strategy:"absolute"};function h(){for(var e=arguments.length,t=new Array(e),n=0;n=0&&(0,l.isHTMLElement)(e)?(0,u["default"])(e):e;if(!(0,l.isElement)(n))return[];return t.filter((function(e){return(0,l.isElement)(e)&&(0,p["default"])(e,n)&&"body"!==(0,h["default"])(e)}))}(e):[].concat(t),o=[].concat(r,[n]),i=o[0],c=o.reduce((function(t,n){var r=y(e,n);return t.top=(0,m.max)(r.top,t.top),t.right=(0,m.min)(r.right,t.right),t.bottom=(0,m.min)(r.bottom,t.bottom),t.left=(0,m.max)(r.left,t.left),t}),y(e,i));return c.width=c.right-c.left,c.height=c.bottom-c.top,c.x=c.left,c.y=c.top,c};var r=n(54945),o=g(n(17488)),i=g(n(27175)),a=g(n(66469)),u=g(n(54484)),c=g(n(36e3)),s=g(n(82020)),l=n(31966),f=g(n(87916)),d=g(n(23470)),p=g(n(41858)),h=g(n(38012)),v=g(n(77276)),m=n(52209);function g(e){return e&&e.__esModule?e:{"default":e}}function y(e,t){return t===r.viewport?(0,v["default"])((0,o["default"])(e)):(0,l.isHTMLElement)(t)?function(e){var t=(0,f["default"])(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}(t):(0,v["default"])((0,i["default"])((0,c["default"])(e)))}},98825:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e,t,n){void 0===n&&(n=!1);var l=(0,c["default"])(t),f=(0,r["default"])(e),d=(0,a.isHTMLElement)(t),p={scrollLeft:0,scrollTop:0},h={x:0,y:0};(d||!d&&!n)&&(("body"!==(0,i["default"])(t)||(0,s["default"])(l))&&(p=(0,o["default"])(t)),(0,a.isHTMLElement)(t)?((h=(0,r["default"])(t)).x+=t.clientLeft,h.y+=t.clientTop):l&&(h.x=(0,u["default"])(l)));return{x:f.left+p.scrollLeft-h.x,y:f.top+p.scrollTop-h.y,width:f.width,height:f.height}};var r=l(n(87916)),o=l(n(38015)),i=l(n(38012)),a=n(31966),u=l(n(25880)),c=l(n(36e3)),s=l(n(42156));function l(e){return e&&e.__esModule?e:{"default":e}}},82020:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return(0,o["default"])(e).getComputedStyle(e)};var r,o=(r=n(89778))&&r.__esModule?r:{"default":r}},36e3:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return(((0,r.isElement)(e)?e.ownerDocument:e.document)||window.document).documentElement};var r=n(31966)},27175:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t,n=(0,r["default"])(e),c=(0,a["default"])(e),s=null==(t=e.ownerDocument)?void 0:t.body,l=(0,u.max)(n.scrollWidth,n.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),f=(0,u.max)(n.scrollHeight,n.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),d=-c.scrollLeft+(0,i["default"])(e),p=-c.scrollTop;"rtl"===(0,o["default"])(s||n).direction&&(d+=(0,u.max)(n.clientWidth,s?s.clientWidth:0)-l);return{width:l,height:f,x:d,y:p}};var r=c(n(36e3)),o=c(n(82020)),i=c(n(25880)),a=c(n(31348)),u=n(52209);function c(e){return e&&e.__esModule?e:{"default":e}}},13339:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}},52089:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=(0,o["default"])(e),n=e.offsetWidth,r=e.offsetHeight;Math.abs(t.width-n)<=1&&(n=t.width);Math.abs(t.height-r)<=1&&(r=t.height);return{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}};var r,o=(r=n(87916))&&r.__esModule?r:{"default":r}},38012:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return e?(e.nodeName||"").toLowerCase():null}},38015:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return e!==(0,o["default"])(e)&&(0,i.isHTMLElement)(e)?(0,a["default"])(e):(0,r["default"])(e)};var r=u(n(31348)),o=u(n(89778)),i=n(31966),a=u(n(13339));function u(e){return e&&e.__esModule?e:{"default":e}}},54484:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=(0,r["default"])(e),n=l(e);for(;n&&(0,u["default"])(n)&&"static"===(0,i["default"])(n).position;)n=l(n);if(n&&("html"===(0,o["default"])(n)||"body"===(0,o["default"])(n)&&"static"===(0,i["default"])(n).position))return t;return n||function(e){var t=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&(0,a.isHTMLElement)(e)){if("fixed"===(0,i["default"])(e).position)return null}var n=(0,c["default"])(e);for(;(0,a.isHTMLElement)(n)&&["html","body"].indexOf((0,o["default"])(n))<0;){var r=(0,i["default"])(n);if("none"!==r.transform||"none"!==r.perspective||"paint"===r.contain||-1!==["transform","perspective"].indexOf(r.willChange)||t&&"filter"===r.willChange||t&&r.filter&&"none"!==r.filter)return n;n=n.parentNode}return null}(e)||t};var r=s(n(89778)),o=s(n(38012)),i=s(n(82020)),a=n(31966),u=s(n(69183)),c=s(n(23470));function s(e){return e&&e.__esModule?e:{"default":e}}function l(e){return(0,a.isHTMLElement)(e)&&"fixed"!==(0,i["default"])(e).position?e.offsetParent:null}},23470:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){if("html"===(0,r["default"])(e))return e;return e.assignedSlot||e.parentNode||((0,i.isShadowRoot)(e)?e.host:null)||(0,o["default"])(e)};var r=a(n(38012)),o=a(n(36e3)),i=n(31966);function a(e){return e&&e.__esModule?e:{"default":e}}},92098:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function c(e){if(["html","body","#document"].indexOf((0,i["default"])(e))>=0)return e.ownerDocument.body;if((0,a.isHTMLElement)(e)&&(0,o["default"])(e))return e;return c((0,r["default"])(e))};var r=u(n(23470)),o=u(n(42156)),i=u(n(38012)),a=n(31966);function u(e){return e&&e.__esModule?e:{"default":e}}},17488:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=(0,r["default"])(e),n=(0,o["default"])(e),a=t.visualViewport,u=n.clientWidth,c=n.clientHeight,s=0,l=0;a&&(u=a.width,c=a.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(s=a.offsetLeft,l=a.offsetTop));return{width:u,height:c,x:s+(0,i["default"])(e),y:l}};var r=a(n(89778)),o=a(n(36e3)),i=a(n(25880));function a(e){return e&&e.__esModule?e:{"default":e}}},89778:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}},31348:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=(0,o["default"])(e),n=t.pageXOffset,r=t.pageYOffset;return{scrollLeft:n,scrollTop:r}};var r,o=(r=n(89778))&&r.__esModule?r:{"default":r}},25880:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return(0,r["default"])((0,o["default"])(e)).left+(0,i["default"])(e).scrollLeft};var r=a(n(87916)),o=a(n(36e3)),i=a(n(31348));function a(e){return e&&e.__esModule?e:{"default":e}}},31966:function(e,t,n){"use strict";t.__esModule=!0,t.isElement=function(e){var t=(0,o["default"])(e).Element;return e instanceof t||e instanceof Element},t.isHTMLElement=function(e){var t=(0,o["default"])(e).HTMLElement;return e instanceof t||e instanceof HTMLElement},t.isShadowRoot=function(e){if("undefined"==typeof ShadowRoot)return!1;var t=(0,o["default"])(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot};var r,o=(r=n(89778))&&r.__esModule?r:{"default":r}},42156:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=(0,o["default"])(e),n=t.overflow,r=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+i+r)};var r,o=(r=n(82020))&&r.__esModule?r:{"default":r}},69183:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return["table","td","th"].indexOf((0,o["default"])(e))>=0};var r,o=(r=n(38012))&&r.__esModule?r:{"default":r}},66469:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function c(e,t){var n;void 0===t&&(t=[]);var u=(0,r["default"])(e),s=u===(null==(n=e.ownerDocument)?void 0:n.body),l=(0,i["default"])(u),f=s?[l].concat(l.visualViewport||[],(0,a["default"])(u)?u:[]):u,d=t.concat(f);return s?d:d.concat(c((0,o["default"])(f)))};var r=u(n(92098)),o=u(n(23470)),i=u(n(89778)),a=u(n(42156));function u(e){return e&&e.__esModule?e:{"default":e}}},54945:function(e,t){"use strict";t.__esModule=!0,t.modifierPhases=t.afterWrite=t.write=t.beforeWrite=t.afterMain=t.main=t.beforeMain=t.afterRead=t.read=t.beforeRead=t.placements=t.variationPlacements=t.reference=t.popper=t.viewport=t.clippingParents=t.end=t.start=t.basePlacements=t.auto=t.left=t.right=t.bottom=t.top=void 0;t.top="top";var n="bottom";t.bottom=n;var r="right";t.right=r;var o="left";t.left=o;var i="auto";t.auto=i;var a=["top",n,r,o];t.basePlacements=a;var u="start";t.start=u;var c="end";t.end=c;t.clippingParents="clippingParents";t.viewport="viewport";t.popper="popper";t.reference="reference";var s=a.reduce((function(e,t){return e.concat([t+"-"+u,t+"-"+c])}),[]);t.variationPlacements=s;var l=[].concat(a,[i]).reduce((function(e,t){return e.concat([t,t+"-"+u,t+"-"+c])}),[]);t.placements=l;var f="beforeRead";t.beforeRead=f;var d="read";t.read=d;var p="afterRead";t.afterRead=p;var h="beforeMain";t.beforeMain=h;var v="main";t.main=v;var m="afterMain";t.afterMain=m;var g="beforeWrite";t.beforeWrite=g;var y="write";t.write=y;var b="afterWrite";t.afterWrite=b;var _=[f,d,p,h,v,m,g,y,b];t.modifierPhases=_},11613:function(e,t,n){"use strict";t.__esModule=!0;var r={popperGenerator:!0,detectOverflow:!0,createPopperBase:!0,createPopper:!0,createPopperLite:!0};t.createPopperLite=t.createPopper=t.createPopperBase=t.detectOverflow=t.popperGenerator=void 0;var o=n(54945);Object.keys(o).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===o[e]||(t[e]=o[e]))}));var i=n(15461);Object.keys(i).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===i[e]||(t[e]=i[e]))}));var a=n(33407);t.popperGenerator=a.popperGenerator,t.detectOverflow=a.detectOverflow,t.createPopperBase=a.createPopper;var u=n(15172);t.createPopper=u.createPopper;var c=n(15327);t.createPopperLite=c.createPopper},1803:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var r,o=(r=n(38012))&&r.__esModule?r:{"default":r},i=n(31966);var a={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},r=t.attributes[e]||{},a=t.elements[e];(0,i.isHTMLElement)(a)&&(0,o["default"])(a)&&(Object.assign(a.style,n),Object.keys(r).forEach((function(e){var t=r[e];!1===t?a.removeAttribute(e):a.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var r=t.elements[e],a=t.attributes[e]||{},u=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce((function(e,t){return e[t]="",e}),{});(0,i.isHTMLElement)(r)&&(0,o["default"])(r)&&(Object.assign(r.style,u),Object.keys(a).forEach((function(e){r.removeAttribute(e)})))}))}},requires:["computeStyles"]};t["default"]=a},35838:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var r=d(n(78044)),o=d(n(52089)),i=d(n(41858)),a=d(n(54484)),u=d(n(99840)),c=d(n(51520)),s=d(n(72882)),l=d(n(8415)),f=n(54945);n(31966);function d(e){return e&&e.__esModule?e:{"default":e}}var p=function(e,t){return e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e,(0,s["default"])("number"!=typeof e?e:(0,l["default"])(e,f.basePlacements))};var h={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,n=e.state,i=e.name,s=e.options,l=n.elements.arrow,d=n.modifiersData.popperOffsets,h=(0,r["default"])(n.placement),v=(0,u["default"])(h),m=[f.left,f.right].indexOf(h)>=0?"height":"width";if(l&&d){var g=p(s.padding,n),y=(0,o["default"])(l),b="y"===v?f.top:f.left,_="y"===v?f.bottom:f.right,w=n.rects.reference[m]+n.rects.reference[v]-d[v]-n.rects.popper[m],x=d[v]-n.rects.reference[v],E=(0,a["default"])(l),S=E?"y"===v?E.clientHeight||0:E.clientWidth||0:0,C=w/2-x/2,N=g[b],O=S-y[m]-g[_],k=S/2-y[m]/2+C,M=(0,c["default"])(N,k,O),A=v;n.modifiersData[i]=((t={})[A]=M,t.centerOffset=M-k,t)}},effect:function(e){var t=e.state,n=e.options.element,r=void 0===n?"[data-popper-arrow]":n;null!=r&&("string"!=typeof r||(r=t.elements.popper.querySelector(r)))&&(0,i["default"])(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};t["default"]=h},42569:function(e,t,n){"use strict";t.__esModule=!0,t.mapToStyles=d,t["default"]=void 0;var r=n(54945),o=l(n(54484)),i=l(n(89778)),a=l(n(36e3)),u=l(n(82020)),c=l(n(78044)),s=n(52209);function l(e){return e&&e.__esModule?e:{"default":e}}var f={top:"auto",right:"auto",bottom:"auto",left:"auto"};function d(e){var t,n=e.popper,c=e.popperRect,l=e.placement,d=e.offsets,p=e.position,h=e.gpuAcceleration,v=e.adaptive,m=e.roundOffsets,g=!0===m?function(e){var t=e.x,n=e.y,r=window.devicePixelRatio||1;return{x:(0,s.round)((0,s.round)(t*r)/r)||0,y:(0,s.round)((0,s.round)(n*r)/r)||0}}(d):"function"==typeof m?m(d):d,y=g.x,b=void 0===y?0:y,_=g.y,w=void 0===_?0:_,x=d.hasOwnProperty("x"),E=d.hasOwnProperty("y"),S=r.left,C=r.top,N=window;if(v){var O=(0,o["default"])(n),k="clientHeight",M="clientWidth";O===(0,i["default"])(n)&&(O=(0,a["default"])(n),"static"!==(0,u["default"])(O).position&&(k="scrollHeight",M="scrollWidth")),O=O,l===r.top&&(C=r.bottom,w-=O[k]-c.height,w*=h?1:-1),l===r.left&&(S=r.right,b-=O[M]-c.width,b*=h?1:-1)}var A,T=Object.assign({position:p},v&&f);return h?Object.assign({},T,((A={})[C]=E?"0":"",A[S]=x?"0":"",A.transform=(N.devicePixelRatio||1)<2?"translate("+b+"px, "+w+"px)":"translate3d("+b+"px, "+w+"px, 0)",A)):Object.assign({},T,((t={})[C]=E?w+"px":"",t[S]=x?b+"px":"",t.transform="",t))}var p={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,r=n.gpuAcceleration,o=void 0===r||r,i=n.adaptive,a=void 0===i||i,u=n.roundOffsets,s=void 0===u||u,l={placement:(0,c["default"])(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,d(Object.assign({},l,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:s})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,d(Object.assign({},l,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:s})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}};t["default"]=p},84886:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var r,o=(r=n(89778))&&r.__esModule?r:{"default":r};var i={passive:!0};var a={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,n=e.instance,r=e.options,a=r.scroll,u=void 0===a||a,c=r.resize,s=void 0===c||c,l=(0,o["default"])(t.elements.popper),f=[].concat(t.scrollParents.reference,t.scrollParents.popper);return u&&f.forEach((function(e){e.addEventListener("scroll",n.update,i)})),s&&l.addEventListener("resize",n.update,i),function(){u&&f.forEach((function(e){e.removeEventListener("scroll",n.update,i)})),s&&l.removeEventListener("resize",n.update,i)}},data:{}};t["default"]=a},75306:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var r=l(n(21784)),o=l(n(78044)),i=l(n(10333)),a=l(n(45073)),u=l(n(9118)),c=n(54945),s=l(n(7938));function l(e){return e&&e.__esModule?e:{"default":e}}var f={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,l=e.name;if(!t.modifiersData[l]._skip){for(var f=n.mainAxis,d=void 0===f||f,p=n.altAxis,h=void 0===p||p,v=n.fallbackPlacements,m=n.padding,g=n.boundary,y=n.rootBoundary,b=n.altBoundary,_=n.flipVariations,w=void 0===_||_,x=n.allowedAutoPlacements,E=t.options.placement,S=(0,o["default"])(E),C=v||(S===E||!w?[(0,r["default"])(E)]:function(e){if((0,o["default"])(e)===c.auto)return[];var t=(0,r["default"])(e);return[(0,i["default"])(e),t,(0,i["default"])(t)]}(E)),N=[E].concat(C).reduce((function(e,n){return e.concat((0,o["default"])(n)===c.auto?(0,u["default"])(t,{placement:n,boundary:g,rootBoundary:y,padding:m,flipVariations:w,allowedAutoPlacements:x}):n)}),[]),O=t.rects.reference,k=t.rects.popper,M=new Map,A=!0,T=N[0],I=0;I=0,j=B?"width":"height",R=(0,a["default"])(t,{placement:P,boundary:g,rootBoundary:y,altBoundary:b,padding:m}),D=B?L?c.right:c.left:L?c.bottom:c.top;O[j]>k[j]&&(D=(0,r["default"])(D));var F=(0,r["default"])(D),K=[];if(d&&K.push(R[V]<=0),h&&K.push(R[D]<=0,R[F]<=0),K.every((function(e){return e}))){T=P,A=!1;break}M.set(P,K)}if(A)for(var z=function(e){var t=N.find((function(t){var n=M.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return T=t,"break"},Y=w?3:1;Y>0;Y--){if("break"===z(Y))break}t.placement!==T&&(t.modifiersData[l]._skip=!0,t.placement=T,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};t["default"]=f},91263:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var r,o=n(54945),i=(r=n(45073))&&r.__esModule?r:{"default":r};function a(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function u(e){return[o.top,o.right,o.bottom,o.left].some((function(t){return e[t]>=0}))}var c={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,n=e.name,r=t.rects.reference,o=t.rects.popper,c=t.modifiersData.preventOverflow,s=(0,i["default"])(t,{elementContext:"reference"}),l=(0,i["default"])(t,{altBoundary:!0}),f=a(s,r),d=a(l,o,c),p=u(f),h=u(d);t.modifiersData[n]={referenceClippingOffsets:f,popperEscapeOffsets:d,isReferenceHidden:p,hasPopperEscaped:h},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":p,"data-popper-escaped":h})}};t["default"]=c},15461:function(e,t,n){"use strict";t.__esModule=!0,t.preventOverflow=t.popperOffsets=t.offset=t.hide=t.flip=t.eventListeners=t.computeStyles=t.arrow=t.applyStyles=void 0;var r=d(n(1803));t.applyStyles=r["default"];var o=d(n(35838));t.arrow=o["default"];var i=d(n(42569));t.computeStyles=i["default"];var a=d(n(84886));t.eventListeners=a["default"];var u=d(n(75306));t.flip=u["default"];var c=d(n(91263));t.hide=c["default"];var s=d(n(36777));t.offset=s["default"];var l=d(n(19860));t.popperOffsets=l["default"];var f=d(n(90992));function d(e){return e&&e.__esModule?e:{"default":e}}t.preventOverflow=f["default"]},36777:function(e,t,n){"use strict";t.__esModule=!0,t.distanceAndSkiddingToXY=a,t["default"]=void 0;var r,o=(r=n(78044))&&r.__esModule?r:{"default":r},i=n(54945);function a(e,t,n){var r=(0,o["default"])(e),a=[i.left,i.top].indexOf(r)>=0?-1:1,u="function"==typeof n?n(Object.assign({},t,{placement:e})):n,c=u[0],s=u[1];return c=c||0,s=(s||0)*a,[i.left,i.right].indexOf(r)>=0?{x:s,y:c}:{x:c,y:s}}var u={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.offset,u=void 0===o?[0,0]:o,c=i.placements.reduce((function(e,n){return e[n]=a(n,t.rects,u),e}),{}),s=c[t.placement],l=s.x,f=s.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=f),t.modifiersData[r]=c}};t["default"]=u},19860:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var r,o=(r=n(89731))&&r.__esModule?r:{"default":r};var i={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=(0,o["default"])({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}};t["default"]=i},90992:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var r=n(54945),o=h(n(78044)),i=h(n(99840)),a=h(n(80776)),u=h(n(51520)),c=h(n(52089)),s=h(n(54484)),l=h(n(45073)),f=h(n(7938)),d=h(n(9775)),p=n(52209);function h(e){return e&&e.__esModule?e:{"default":e}}var v={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,h=e.name,v=n.mainAxis,m=void 0===v||v,g=n.altAxis,y=void 0!==g&&g,b=n.boundary,_=n.rootBoundary,w=n.altBoundary,x=n.padding,E=n.tether,S=void 0===E||E,C=n.tetherOffset,N=void 0===C?0:C,O=(0,l["default"])(t,{boundary:b,rootBoundary:_,padding:x,altBoundary:w}),k=(0,o["default"])(t.placement),M=(0,f["default"])(t.placement),A=!M,T=(0,i["default"])(k),I=(0,a["default"])(T),P=t.modifiersData.popperOffsets,V=t.rects.reference,L=t.rects.popper,B="function"==typeof N?N(Object.assign({},t.rects,{placement:t.placement})):N,j={x:0,y:0};if(P){if(m||y){var R="y"===T?r.top:r.left,D="y"===T?r.bottom:r.right,F="y"===T?"height":"width",K=P[T],z=P[T]+O[R],Y=P[T]-O[D],U=S?-L[F]/2:0,H=M===r.start?V[F]:L[F],W=M===r.start?-L[F]:-V[F],$=t.elements.arrow,G=S&&$?(0,c["default"])($):{width:0,height:0},q=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:(0,d["default"])(),X=q[R],Q=q[D],Z=(0,u["default"])(0,V[F],G[F]),J=A?V[F]/2-U-Z-X-B:H-Z-X-B,ee=A?-V[F]/2+U+Z+Q+B:W+Z+Q+B,te=t.elements.arrow&&(0,s["default"])(t.elements.arrow),ne=te?"y"===T?te.clientTop||0:te.clientLeft||0:0,re=t.modifiersData.offset?t.modifiersData.offset[t.placement][T]:0,oe=P[T]+J-re-ne,ie=P[T]+ee-re;if(m){var ae=(0,u["default"])(S?(0,p.min)(z,oe):z,K,S?(0,p.max)(Y,ie):Y);P[T]=ae,j[T]=ae-K}if(y){var ue="x"===T?r.top:r.left,ce="x"===T?r.bottom:r.right,se=P[I],le=se+O[ue],fe=se-O[ce],de=(0,u["default"])(S?(0,p.min)(le,oe):le,se,S?(0,p.max)(fe,ie):fe);P[I]=de,j[I]=de-se}}t.modifiersData[h]=j}},requiresIfExists:["offset"]};t["default"]=v},15327:function(e,t,n){"use strict";t.__esModule=!0,t.defaultModifiers=t.createPopper=void 0;var r=n(33407);t.popperGenerator=r.popperGenerator,t.detectOverflow=r.detectOverflow;var o=c(n(84886)),i=c(n(19860)),a=c(n(42569)),u=c(n(1803));function c(e){return e&&e.__esModule?e:{"default":e}}var s=[o["default"],i["default"],a["default"],u["default"]];t.defaultModifiers=s;var l=(0,r.popperGenerator)({defaultModifiers:s});t.createPopper=l},15172:function(e,t,n){"use strict";t.__esModule=!0;var r={createPopper:!0,createPopperLite:!0,defaultModifiers:!0,popperGenerator:!0,detectOverflow:!0};t.defaultModifiers=t.createPopperLite=t.createPopper=void 0;var o=n(33407);t.popperGenerator=o.popperGenerator,t.detectOverflow=o.detectOverflow;var i=m(n(84886)),a=m(n(19860)),u=m(n(42569)),c=m(n(1803)),s=m(n(36777)),l=m(n(75306)),f=m(n(90992)),d=m(n(35838)),p=m(n(91263)),h=n(15327);t.createPopperLite=h.createPopper;var v=n(15461);function m(e){return e&&e.__esModule?e:{"default":e}}Object.keys(v).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===v[e]||(t[e]=v[e]))}));var g=[i["default"],a["default"],u["default"],c["default"],s["default"],l["default"],f["default"],d["default"],p["default"]];t.defaultModifiers=g;var y=(0,o.popperGenerator)({defaultModifiers:g});t.createPopperLite=t.createPopper=y},9118:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e,t){void 0===t&&(t={});var n=t,u=n.placement,c=n.boundary,s=n.rootBoundary,l=n.padding,f=n.flipVariations,d=n.allowedAutoPlacements,p=void 0===d?o.placements:d,h=(0,r["default"])(u),v=h?f?o.variationPlacements:o.variationPlacements.filter((function(e){return(0,r["default"])(e)===h})):o.basePlacements,m=v.filter((function(e){return p.indexOf(e)>=0}));0===m.length&&(m=v);var g=m.reduce((function(t,n){return t[n]=(0,i["default"])(e,{placement:n,boundary:c,rootBoundary:s,padding:l})[(0,a["default"])(n)],t}),{});return Object.keys(g).sort((function(e,t){return g[e]-g[t]}))};var r=u(n(7938)),o=n(54945),i=u(n(45073)),a=u(n(78044));function u(e){return e&&e.__esModule?e:{"default":e}}},89731:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t,n=e.reference,u=e.element,c=e.placement,s=c?(0,r["default"])(c):null,l=c?(0,o["default"])(c):null,f=n.x+n.width/2-u.width/2,d=n.y+n.height/2-u.height/2;switch(s){case a.top:t={x:f,y:n.y-u.height};break;case a.bottom:t={x:f,y:n.y+n.height};break;case a.right:t={x:n.x+n.width,y:d};break;case a.left:t={x:n.x-u.width,y:d};break;default:t={x:n.x,y:n.y}}var p=s?(0,i["default"])(s):null;if(null!=p){var h="y"===p?"height":"width";switch(l){case a.start:t[p]=t[p]-(n[h]/2-u[h]/2);break;case a.end:t[p]=t[p]+(n[h]/2-u[h]/2)}}return t};var r=u(n(78044)),o=u(n(7938)),i=u(n(99840)),a=n(54945);function u(e){return e&&e.__esModule?e:{"default":e}}},16936:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){var t;return function(){return t||(t=new Promise((function(n){Promise.resolve().then((function(){t=undefined,n(e())}))}))),t}}},45073:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e,t){void 0===t&&(t={});var n=t,d=n.placement,p=void 0===d?e.placement:d,h=n.boundary,v=void 0===h?c.clippingParents:h,m=n.rootBoundary,g=void 0===m?c.viewport:m,y=n.elementContext,b=void 0===y?c.popper:y,_=n.altBoundary,w=void 0!==_&&_,x=n.padding,E=void 0===x?0:x,S=(0,l["default"])("number"!=typeof E?E:(0,f["default"])(E,c.basePlacements)),C=b===c.popper?c.reference:c.popper,N=e.elements.reference,O=e.rects.popper,k=e.elements[w?C:b],M=(0,o["default"])((0,s.isElement)(k)?k:k.contextElement||(0,i["default"])(e.elements.popper),v,g),A=(0,r["default"])(N),T=(0,a["default"])({reference:A,element:O,strategy:"absolute",placement:p}),I=(0,u["default"])(Object.assign({},O,T)),P=b===c.popper?I:A,V={top:M.top-P.top+S.top,bottom:P.bottom-M.bottom+S.bottom,left:M.left-P.left+S.left,right:P.right-M.right+S.right},L=e.modifiersData.offset;if(b===c.popper&&L){var B=L[p];Object.keys(V).forEach((function(e){var t=[c.right,c.bottom].indexOf(e)>=0?1:-1,n=[c.top,c.bottom].indexOf(e)>=0?"y":"x";V[e]+=B[n]*t}))}return V};var r=d(n(87916)),o=d(n(70846)),i=d(n(36e3)),a=d(n(89731)),u=d(n(77276)),c=n(54945),s=n(31966),l=d(n(72882)),f=d(n(8415));function d(e){return e&&e.__esModule?e:{"default":e}}},8415:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}},50121:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r=0?"x":"y"}},21784:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return e.replace(/left|right|bottom|top/g,(function(e){return n[e]}))};var n={left:"right",right:"left",bottom:"top",top:"bottom"}},10333:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return e.replace(/start|end/g,(function(e){return n[e]}))};var n={start:"end",end:"start"}},7938:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return e.split("-")[1]}},52209:function(e,t){"use strict";t.__esModule=!0,t.round=t.min=t.max=void 0;var n=Math.max;t.max=n;var r=Math.min;t.min=r;var o=Math.round;t.round=o},5495:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){var t=e.reduce((function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e}),{});return Object.keys(t).map((function(e){return t[e]}))}},72882:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return Object.assign({},(0,o["default"])(),e)};var r,o=(r=n(9775))&&r.__esModule?r:{"default":r}},7183:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=function(e){var t=new Map,n=new Set,r=[];function o(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var r=t.get(e);r&&o(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||o(e)})),r}(e);return r.modifierPhases.reduce((function(e,n){return e.concat(t.filter((function(e){return e.phase===n})))}),[])};var r=n(54945)},77276:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}},20675:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e,t){var n=new Set;return e.filter((function(e){var r=t(e);if(!n.has(r))return n.add(r),!0}))}},11026:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){e.forEach((function(t){Object.keys(t).forEach((function(n){switch(n){case"name":t.name;break;case"enabled":t.enabled;case"phase":o.modifierPhases.indexOf(t.phase);break;case"fn":t.fn;break;case"effect":t.effect;break;case"requires":Array.isArray(t.requires);break;case"requiresIfExists":Array.isArray(t.requiresIfExists)}t.requires&&t.requires.forEach((function(t){e.find((function(e){return e.name===t}))}))}))}))};(r=n(50121))&&r.__esModule;var r,o=n(54945)},51520:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e,t,n){return(0,r.max)(e,(0,r.min)(t,n))};var r=n(52209)},13686:function(e){"use strict";e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},85369:function(e,t,n){"use strict";var r=n(88711);e.exports=function(e){if(!r(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},14281:function(e,t,n){"use strict";var r=n(53414),o=n(96093),i=n(96452),a=r("unscopables"),u=Array.prototype;u[a]==undefined&&i.f(u,a,{configurable:!0,value:o(null)}),e.exports=function(e){u[a][e]=!0}},47103:function(e,t,n){"use strict";var r=n(34444).charAt;e.exports=function(e,t,n){return t+(n?r(e,t).length:1)}},2273:function(e){"use strict";e.exports=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e}},14860:function(e,t,n){"use strict";var r=n(88711);e.exports=function(e){if(!r(e))throw TypeError(String(e)+" is not an object");return e}},17811:function(e){"use strict";e.exports="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView},73203:function(e,t,n){"use strict";var r,o=n(17811),i=n(67738),a=n(179),u=n(88711),c=n(18632),s=n(54781),l=n(21413),f=n(77219),d=n(96452).f,p=n(92608),h=n(77715),v=n(53414),m=n(88340),g=a.Int8Array,y=g&&g.prototype,b=a.Uint8ClampedArray,_=b&&b.prototype,w=g&&p(g),x=y&&p(y),E=Object.prototype,S=E.isPrototypeOf,C=v("toStringTag"),N=m("TYPED_ARRAY_TAG"),O=o&&!!h&&"Opera"!==s(a.opera),k=!1,M={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},A={BigInt64Array:8,BigUint64Array:8},T=function(e){if(!u(e))return!1;var t=s(e);return"DataView"===t||c(M,t)||c(A,t)},I=function(e){if(!u(e))return!1;var t=s(e);return c(M,t)||c(A,t)};for(r in M)a[r]||(O=!1);if((!O||"function"!=typeof w||w===Function.prototype)&&(w=function(){throw TypeError("Incorrect invocation")},O))for(r in M)a[r]&&h(a[r],w);if((!O||!x||x===E)&&(x=w.prototype,O))for(r in M)a[r]&&h(a[r].prototype,x);if(O&&p(_)!==x&&h(_,x),i&&!c(x,C))for(r in k=!0,d(x,C,{get:function(){return u(this)?this[N]:undefined}}),M)a[r]&&l(a[r],N,r);e.exports={NATIVE_ARRAY_BUFFER_VIEWS:O,TYPED_ARRAY_TAG:k&&N,aTypedArray:function(e){if(I(e))return e;throw TypeError("Target is not a typed array")},aTypedArrayConstructor:function(e){if(h){if(S.call(w,e))return e}else for(var t in M)if(c(M,r)){var n=a[t];if(n&&(e===n||S.call(n,e)))return e}throw TypeError("Target is not a typed array constructor")},exportTypedArrayMethod:function(e,t,n){if(i){if(n)for(var r in M){var o=a[r];o&&c(o.prototype,e)&&delete o.prototype[e]}x[e]&&!n||f(x,e,n?t:O&&y[e]||t)}},exportTypedArrayStaticMethod:function(e,t,n){var r,o;if(i){if(h){if(n)for(r in M)(o=a[r])&&c(o,e)&&delete o[e];if(w[e]&&!n)return;try{return f(w,e,n?t:O&&g[e]||t)}catch(u){}}for(r in M)!(o=a[r])||o[e]&&!n||f(o,e,t)}},isView:T,isTypedArray:I,TypedArray:w,TypedArrayPrototype:x}},93071:function(e,t,n){"use strict";var r=n(179),o=n(67738),i=n(17811),a=n(21413),u=n(5289),c=n(84921),s=n(2273),l=n(44028),f=n(27842),d=n(66659),p=n(63408),h=n(92608),v=n(77715),m=n(75604).f,g=n(96452).f,y=n(24115),b=n(81978),_=n(28076),w=_.get,x=_.set,E="ArrayBuffer",S="DataView",C="Wrong index",N=r.ArrayBuffer,O=N,k=r.DataView,M=k&&k.prototype,A=Object.prototype,T=r.RangeError,I=p.pack,P=p.unpack,V=function(e){return[255&e]},L=function(e){return[255&e,e>>8&255]},B=function(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]},j=function(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]},R=function(e){return I(e,23,4)},D=function(e){return I(e,52,8)},F=function(e,t){g(e.prototype,t,{get:function(){return w(this)[t]}})},K=function(e,t,n,r){var o=d(n),i=w(e);if(o+t>i.byteLength)throw T(C);var a=w(i.buffer).bytes,u=o+i.byteOffset,c=a.slice(u,u+t);return r?c:c.reverse()},z=function(e,t,n,r,o,i){var a=d(n),u=w(e);if(a+t>u.byteLength)throw T(C);for(var c=w(u.buffer).bytes,s=a+u.byteOffset,l=r(+o),f=0;fW;)(Y=H[W++])in O||a(O,Y,N[Y]);U.constructor=O}v&&h(M)!==A&&v(M,A);var $=new k(new O(2)),G=M.setInt8;$.setInt8(0,2147483648),$.setInt8(1,2147483649),!$.getInt8(0)&&$.getInt8(1)||u(M,{setInt8:function(e,t){G.call(this,e,t<<24>>24)},setUint8:function(e,t){G.call(this,e,t<<24>>24)}},{unsafe:!0})}else O=function(e){s(this,O,E);var t=d(e);x(this,{bytes:y.call(new Array(t),0),byteLength:t}),o||(this.byteLength=t)},k=function(e,t,n){s(this,k,S),s(e,O,S);var r=w(e).byteLength,i=l(t);if(i<0||i>r)throw T("Wrong offset");if(i+(n=n===undefined?r-i:f(n))>r)throw T("Wrong length");x(this,{buffer:e,byteLength:n,byteOffset:i}),o||(this.buffer=e,this.byteLength=n,this.byteOffset=i)},o&&(F(O,"byteLength"),F(k,"buffer"),F(k,"byteLength"),F(k,"byteOffset")),u(k.prototype,{getInt8:function(e){return K(this,1,e)[0]<<24>>24},getUint8:function(e){return K(this,1,e)[0]},getInt16:function(e){var t=K(this,2,e,arguments.length>1?arguments[1]:undefined);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=K(this,2,e,arguments.length>1?arguments[1]:undefined);return t[1]<<8|t[0]},getInt32:function(e){return j(K(this,4,e,arguments.length>1?arguments[1]:undefined))},getUint32:function(e){return j(K(this,4,e,arguments.length>1?arguments[1]:undefined))>>>0},getFloat32:function(e){return P(K(this,4,e,arguments.length>1?arguments[1]:undefined),23)},getFloat64:function(e){return P(K(this,8,e,arguments.length>1?arguments[1]:undefined),52)},setInt8:function(e,t){z(this,1,e,V,t)},setUint8:function(e,t){z(this,1,e,V,t)},setInt16:function(e,t){z(this,2,e,L,t,arguments.length>2?arguments[2]:undefined)},setUint16:function(e,t){z(this,2,e,L,t,arguments.length>2?arguments[2]:undefined)},setInt32:function(e,t){z(this,4,e,B,t,arguments.length>2?arguments[2]:undefined)},setUint32:function(e,t){z(this,4,e,B,t,arguments.length>2?arguments[2]:undefined)},setFloat32:function(e,t){z(this,4,e,R,t,arguments.length>2?arguments[2]:undefined)},setFloat64:function(e,t){z(this,8,e,D,t,arguments.length>2?arguments[2]:undefined)}});b(O,E),b(k,S),e.exports={ArrayBuffer:O,DataView:k}},92475:function(e,t,n){"use strict";var r=n(6289),o=n(13292),i=n(27842),a=Math.min;e.exports=[].copyWithin||function(e,t){var n=r(this),u=i(n.length),c=o(e,u),s=o(t,u),l=arguments.length>2?arguments[2]:undefined,f=a((l===undefined?u:o(l,u))-s,u-c),d=1;for(s0;)s in n?n[c]=n[s]:delete n[c],c+=d,s+=d;return n}},24115:function(e,t,n){"use strict";var r=n(6289),o=n(13292),i=n(27842);e.exports=function(e){for(var t=r(this),n=i(t.length),a=arguments.length,u=o(a>1?arguments[1]:undefined,n),c=a>2?arguments[2]:undefined,s=c===undefined?n:o(c,n);s>u;)t[u++]=e;return t}},70091:function(e,t,n){"use strict";var r=n(77118).forEach,o=n(45944)("forEach");e.exports=o?[].forEach:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}},75372:function(e,t,n){"use strict";var r=n(57386),o=n(6289),i=n(36288),a=n(76774),u=n(27842),c=n(79651),s=n(29863);e.exports=function(e){var t,n,l,f,d,p,h=o(e),v="function"==typeof this?this:Array,m=arguments.length,g=m>1?arguments[1]:undefined,y=g!==undefined,b=s(h),_=0;if(y&&(g=r(g,m>2?arguments[2]:undefined,2)),b==undefined||v==Array&&a(b))for(n=new v(t=u(h.length));t>_;_++)p=y?g(h[_],_):h[_],c(n,_,p);else for(d=(f=b.call(h)).next,n=new v;!(l=d.call(f)).done;_++)p=y?i(f,g,[l.value,_],!0):l.value,c(n,_,p);return n.length=_,n}},53454:function(e,t,n){"use strict";var r=n(94789),o=n(27842),i=n(13292),a=function(e){return function(t,n,a){var u,c=r(t),s=o(c.length),l=i(a,s);if(e&&n!=n){for(;s>l;)if((u=c[l++])!=u)return!0}else for(;s>l;l++)if((e||l in c)&&c[l]===n)return e||l||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},77118:function(e,t,n){"use strict";var r=n(57386),o=n(46317),i=n(6289),a=n(27842),u=n(12384),c=[].push,s=function(e){var t=1==e,n=2==e,s=3==e,l=4==e,f=6==e,d=7==e,p=5==e||f;return function(h,v,m,g){for(var y,b,_=i(h),w=o(_),x=r(v,m,3),E=a(w.length),S=0,C=g||u,N=t?C(h,E):n||d?C(h,0):undefined;E>S;S++)if((p||S in w)&&(b=x(y=w[S],S,_),e))if(t)N[S]=b;else if(b)switch(e){case 3:return!0;case 5:return y;case 6:return S;case 2:c.call(N,y)}else switch(e){case 4:return!1;case 7:c.call(N,y)}return f?-1:s||l?l:N}};e.exports={forEach:s(0),map:s(1),filter:s(2),some:s(3),every:s(4),find:s(5),findIndex:s(6),filterOut:s(7)}},9819:function(e,t,n){"use strict";var r=n(94789),o=n(44028),i=n(27842),a=n(45944),u=Math.min,c=[].lastIndexOf,s=!!c&&1/[1].lastIndexOf(1,-0)<0,l=a("lastIndexOf"),f=s||!l;e.exports=f?function(e){if(s)return c.apply(this,arguments)||0;var t=r(this),n=i(t.length),a=n-1;for(arguments.length>1&&(a=u(a,o(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in t&&t[a]===e)return a||0;return-1}:c},16684:function(e,t,n){"use strict";var r=n(84921),o=n(53414),i=n(32728),a=o("species");e.exports=function(e){return i>=51||!r((function(){var t=[];return(t.constructor={})[a]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},45944:function(e,t,n){"use strict";var r=n(84921);e.exports=function(e,t){var n=[][e];return!!n&&r((function(){n.call(null,t||function(){throw 1},1)}))}},59878:function(e,t,n){"use strict";var r=n(13686),o=n(6289),i=n(46317),a=n(27842),u=function(e){return function(t,n,u,c){r(n);var s=o(t),l=i(s),f=a(s.length),d=e?f-1:0,p=e?-1:1;if(u<2)for(;;){if(d in l){c=l[d],d+=p;break}if(d+=p,e?d<0:f<=d)throw TypeError("Reduce of empty array with no initial value")}for(;e?d>=0:f>d;d+=p)d in l&&(c=n(c,l[d],d,s));return c}};e.exports={left:u(!1),right:u(!0)}},12384:function(e,t,n){"use strict";var r=n(88711),o=n(1897),i=n(53414)("species");e.exports=function(e,t){var n;return o(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!o(n.prototype)?r(n)&&null===(n=n[i])&&(n=undefined):n=undefined),new(n===undefined?Array:n)(0===t?0:t)}},36288:function(e,t,n){"use strict";var r=n(14860),o=n(16284);e.exports=function(e,t,n,i){try{return i?t(r(n)[0],n[1]):t(n)}catch(a){throw o(e),a}}},33652:function(e,t,n){"use strict";var r=n(53414)("iterator"),o=!1;try{var i=0,a={next:function(){return{done:!!i++}},"return":function(){o=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(u){}e.exports=function(e,t){if(!t&&!o)return!1;var n=!1;try{var i={};i[r]=function(){return{next:function(){return{done:n=!0}}}},e(i)}catch(u){}return n}},90726:function(e){"use strict";var t={}.toString;e.exports=function(e){return t.call(e).slice(8,-1)}},54781:function(e,t,n){"use strict";var r=n(97099),o=n(90726),i=n(53414)("toStringTag"),a="Arguments"==o(function(){return arguments}());e.exports=r?o:function(e){var t,n,r;return e===undefined?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(n){}}(t=Object(e),i))?n:a?o(t):"Object"==(r=o(t))&&"function"==typeof t.callee?"Arguments":r}},4721:function(e,t,n){"use strict";var r=n(96452).f,o=n(96093),i=n(5289),a=n(57386),u=n(2273),c=n(8362),s=n(54981),l=n(40548),f=n(67738),d=n(21419).fastKey,p=n(28076),h=p.set,v=p.getterFor;e.exports={getConstructor:function(e,t,n,s){var l=e((function(e,r){u(e,l,t),h(e,{type:t,index:o(null),first:undefined,last:undefined,size:0}),f||(e.size=0),r!=undefined&&c(r,e[s],{that:e,AS_ENTRIES:n})})),p=v(t),m=function(e,t,n){var r,o,i=p(e),a=g(e,t);return a?a.value=n:(i.last=a={index:o=d(t,!0),key:t,value:n,previous:r=i.last,next:undefined,removed:!1},i.first||(i.first=a),r&&(r.next=a),f?i.size++:e.size++,"F"!==o&&(i.index[o]=a)),e},g=function(e,t){var n,r=p(e),o=d(t);if("F"!==o)return r.index[o];for(n=r.first;n;n=n.next)if(n.key==t)return n};return i(l.prototype,{clear:function(){for(var e=p(this),t=e.index,n=e.first;n;)n.removed=!0,n.previous&&(n.previous=n.previous.next=undefined),delete t[n.index],n=n.next;e.first=e.last=undefined,f?e.size=0:this.size=0},"delete":function(e){var t=this,n=p(t),r=g(t,e);if(r){var o=r.next,i=r.previous;delete n.index[r.index],r.removed=!0,i&&(i.next=o),o&&(o.previous=i),n.first==r&&(n.first=o),n.last==r&&(n.last=i),f?n.size--:t.size--}return!!r},forEach:function(e){for(var t,n=p(this),r=a(e,arguments.length>1?arguments[1]:undefined,3);t=t?t.next:n.first;)for(r(t.value,t.key,this);t&&t.removed;)t=t.previous},has:function(e){return!!g(this,e)}}),i(l.prototype,n?{get:function(e){var t=g(this,e);return t&&t.value},set:function(e,t){return m(this,0===e?0:e,t)}}:{add:function(e){return m(this,e=0===e?0:e,e)}}),f&&r(l.prototype,"size",{get:function(){return p(this).size}}),l},setStrong:function(e,t,n){var r=t+" Iterator",o=v(t),i=v(r);s(e,t,(function(e,t){h(this,{type:r,target:e,state:o(e),kind:t,last:undefined})}),(function(){for(var e=i(this),t=e.kind,n=e.last;n&&n.removed;)n=n.previous;return e.target&&(e.last=n=n?n.next:e.state.first)?"keys"==t?{value:n.key,done:!1}:"values"==t?{value:n.value,done:!1}:{value:[n.key,n.value],done:!1}:(e.target=undefined,{value:undefined,done:!0})}),n?"entries":"values",!n,!0),l(t)}}},76568:function(e,t,n){"use strict";var r=n(5289),o=n(21419).getWeakData,i=n(14860),a=n(88711),u=n(2273),c=n(8362),s=n(77118),l=n(18632),f=n(28076),d=f.set,p=f.getterFor,h=s.find,v=s.findIndex,m=0,g=function(e){return e.frozen||(e.frozen=new y)},y=function(){this.entries=[]},b=function(e,t){return h(e.entries,(function(e){return e[0]===t}))};y.prototype={get:function(e){var t=b(this,e);if(t)return t[1]},has:function(e){return!!b(this,e)},set:function(e,t){var n=b(this,e);n?n[1]=t:this.entries.push([e,t])},"delete":function(e){var t=v(this.entries,(function(t){return t[0]===e}));return~t&&this.entries.splice(t,1),!!~t}},e.exports={getConstructor:function(e,t,n,s){var f=e((function(e,r){u(e,f,t),d(e,{type:t,id:m++,frozen:undefined}),r!=undefined&&c(r,e[s],{that:e,AS_ENTRIES:n})})),h=p(t),v=function(e,t,n){var r=h(e),a=o(i(t),!0);return!0===a?g(r).set(t,n):a[r.id]=n,e};return r(f.prototype,{"delete":function(e){var t=h(this);if(!a(e))return!1;var n=o(e);return!0===n?g(t)["delete"](e):n&&l(n,t.id)&&delete n[t.id]},has:function(e){var t=h(this);if(!a(e))return!1;var n=o(e);return!0===n?g(t).has(e):n&&l(n,t.id)}}),r(f.prototype,n?{get:function(e){var t=h(this);if(a(e)){var n=o(e);return!0===n?g(t).get(e):n?n[t.id]:undefined}},set:function(e,t){return v(this,e,t)}}:{add:function(e){return v(this,e,!0)}}),f}}},20991:function(e,t,n){"use strict";var r=n(99592),o=n(179),i=n(61287),a=n(77219),u=n(21419),c=n(8362),s=n(2273),l=n(88711),f=n(84921),d=n(33652),p=n(81978),h=n(69262);e.exports=function(e,t,n){var v=-1!==e.indexOf("Map"),m=-1!==e.indexOf("Weak"),g=v?"set":"add",y=o[e],b=y&&y.prototype,_=y,w={},x=function(e){var t=b[e];a(b,e,"add"==e?function(e){return t.call(this,0===e?0:e),this}:"delete"==e?function(e){return!(m&&!l(e))&&t.call(this,0===e?0:e)}:"get"==e?function(e){return m&&!l(e)?undefined:t.call(this,0===e?0:e)}:"has"==e?function(e){return!(m&&!l(e))&&t.call(this,0===e?0:e)}:function(e,n){return t.call(this,0===e?0:e,n),this})};if(i(e,"function"!=typeof y||!(m||b.forEach&&!f((function(){(new y).entries().next()})))))_=n.getConstructor(t,e,v,g),u.REQUIRED=!0;else if(i(e,!0)){var E=new _,S=E[g](m?{}:-0,1)!=E,C=f((function(){E.has(1)})),N=d((function(e){new y(e)})),O=!m&&f((function(){for(var e=new y,t=5;t--;)e[g](t,t);return!e.has(-0)}));N||((_=t((function(t,n){s(t,_,e);var r=h(new y,t,_);return n!=undefined&&c(n,r[g],{that:r,AS_ENTRIES:v}),r}))).prototype=b,b.constructor=_),(C||O)&&(x("delete"),x("has"),v&&x("get")),(O||S)&&x(g),m&&b.clear&&delete b.clear}return w[e]=_,r({global:!0,forced:_!=y},w),p(_,e),m||n.setStrong(_,e,v),_}},44121:function(e,t,n){"use strict";var r=n(18632),o=n(1051),i=n(8740),a=n(96452);e.exports=function(e,t){for(var n=o(t),u=a.f,c=i.f,s=0;s"+a+""}},97993:function(e,t,n){"use strict";var r=n(9392).IteratorPrototype,o=n(96093),i=n(28804),a=n(81978),u=n(36617),c=function(){return this};e.exports=function(e,t,n){var s=t+" Iterator";return e.prototype=o(r,{next:i(1,n)}),a(e,s,!1,!0),u[s]=c,e}},21413:function(e,t,n){"use strict";var r=n(67738),o=n(96452),i=n(28804);e.exports=r?function(e,t,n){return o.f(e,t,i(1,n))}:function(e,t,n){return e[t]=n,e}},28804:function(e){"use strict";e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},79651:function(e,t,n){"use strict";var r=n(79165),o=n(96452),i=n(28804);e.exports=function(e,t,n){var a=r(t);a in e?o.f(e,a,i(0,n)):e[a]=n}},27051:function(e,t,n){"use strict";var r=n(84921),o=n(61514).start,i=Math.abs,a=Date.prototype,u=a.getTime,c=a.toISOString;e.exports=r((function(){return"0385-07-25T07:06:39.999Z"!=c.call(new Date(-50000000000001))}))||!r((function(){c.call(new Date(NaN))}))?function(){if(!isFinite(u.call(this)))throw RangeError("Invalid time value");var e=this,t=e.getUTCFullYear(),n=e.getUTCMilliseconds(),r=t<0?"-":t>9999?"+":"";return r+o(i(t),r?6:4,0)+"-"+o(e.getUTCMonth()+1,2,0)+"-"+o(e.getUTCDate(),2,0)+"T"+o(e.getUTCHours(),2,0)+":"+o(e.getUTCMinutes(),2,0)+":"+o(e.getUTCSeconds(),2,0)+"."+o(n,3,0)+"Z"}:c},92880:function(e,t,n){"use strict";var r=n(14860),o=n(79165);e.exports=function(e){if("string"!==e&&"number"!==e&&"default"!==e)throw TypeError("Incorrect hint");return o(r(this),"number"!==e)}},54981:function(e,t,n){"use strict";var r=n(99592),o=n(97993),i=n(92608),a=n(77715),u=n(81978),c=n(21413),s=n(77219),l=n(53414),f=n(51684),d=n(36617),p=n(9392),h=p.IteratorPrototype,v=p.BUGGY_SAFARI_ITERATORS,m=l("iterator"),g="keys",y="values",b="entries",_=function(){return this};e.exports=function(e,t,n,l,p,w,x){o(n,t,l);var E,S,C,N=function(e){if(e===p&&T)return T;if(!v&&e in M)return M[e];switch(e){case g:case y:case b:return function(){return new n(this,e)}}return function(){return new n(this)}},O=t+" Iterator",k=!1,M=e.prototype,A=M[m]||M["@@iterator"]||p&&M[p],T=!v&&A||N(p),I="Array"==t&&M.entries||A;if(I&&(E=i(I.call(new e)),h!==Object.prototype&&E.next&&(f||i(E)===h||(a?a(E,h):"function"!=typeof E[m]&&c(E,m,_)),u(E,O,!0,!0),f&&(d[O]=_))),p==y&&A&&A.name!==y&&(k=!0,T=function(){return A.call(this)}),f&&!x||M[m]===T||c(M,m,T),d[t]=T,p)if(S={values:N(y),keys:w?T:N(g),entries:N(b)},x)for(C in S)(v||k||!(C in M))&&s(M,C,S[C]);else r({target:t,proto:!0,forced:v||k},S);return S}},90209:function(e,t,n){"use strict";var r=n(91996),o=n(18632),i=n(42571),a=n(96452).f;e.exports=function(e){var t=r.Symbol||(r.Symbol={});o(t,e)||a(t,e,{value:i.f(e)})}},67738:function(e,t,n){"use strict";var r=n(84921);e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},27383:function(e,t,n){"use strict";var r=n(179),o=n(88711),i=r.document,a=o(i)&&o(i.createElement);e.exports=function(e){return a?i.createElement(e):{}}},13745:function(e,t,n){"use strict";var r=n(97285);e.exports=/(?:iphone|ipod|ipad).*applewebkit/i.test(r)},23043:function(e,t,n){"use strict";var r=n(90726),o=n(179);e.exports="process"==r(o.process)},59137:function(e,t,n){"use strict";var r=n(97285);e.exports=/web0s(?!.*chrome)/i.test(r)},97285:function(e,t,n){"use strict";var r=n(44417);e.exports=r("navigator","userAgent")||""},32728:function(e,t,n){"use strict";var r,o,i=n(179),a=n(97285),u=i.process,c=u&&u.versions,s=c&&c.v8;s?o=(r=s.split("."))[0]+r[1]:a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=r[1]),e.exports=o&&+o},89807:function(e){"use strict";e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},99592:function(e,t,n){"use strict";var r=n(179),o=n(8740).f,i=n(21413),a=n(77219),u=n(53753),c=n(44121),s=n(61287);e.exports=function(e,t){var n,l,f,d,p,h=e.target,v=e.global,m=e.stat;if(n=v?r:m?r[h]||u(h,{}):(r[h]||{}).prototype)for(l in t){if(d=t[l],f=e.noTargetGet?(p=o(n,l))&&p.value:n[l],!s(v?l:h+(m?".":"#")+l,e.forced)&&f!==undefined){if(typeof d==typeof f)continue;c(d,f)}(e.sham||f&&f.sham)&&i(d,"sham",!0),a(n,l,d,e)}}},84921:function(e){"use strict";e.exports=function(e){try{return!!e()}catch(t){return!0}}},27167:function(e,t,n){"use strict";n(30660);var r=n(77219),o=n(84921),i=n(53414),a=n(21413),u=i("species"),c=!o((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$")})),s="$0"==="a".replace(/./,"$0"),l=i("replace"),f=!!/./[l]&&""===/./[l]("a","$0"),d=!o((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));e.exports=function(e,t,n,l){var p=i(e),h=!o((function(){var t={};return t[p]=function(){return 7},7!=""[e](t)})),v=h&&!o((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[u]=function(){return n},n.flags="",n[p]=/./[p]),n.exec=function(){return t=!0,null},n[p](""),!t}));if(!h||!v||"replace"===e&&(!c||!s||f)||"split"===e&&!d){var m=/./[p],g=n(p,""[e],(function(e,t,n,r,o){return t.exec===RegExp.prototype.exec?h&&!o?{done:!0,value:m.call(t,n,r)}:{done:!0,value:e.call(n,t,r)}:{done:!1}}),{REPLACE_KEEPS_$0:s,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:f}),y=g[0],b=g[1];r(String.prototype,e,y),r(RegExp.prototype,p,2==t?function(e,t){return b.call(e,this,t)}:function(e){return b.call(e,this)})}l&&a(RegExp.prototype[p],"sham",!0)}},83632:function(e,t,n){"use strict";var r=n(1897),o=n(27842),i=n(57386);e.exports=function a(e,t,n,u,c,s,l,f){for(var d,p=c,h=0,v=!!l&&i(l,f,3);h0&&r(d))p=a(e,t,d,o(d.length),p,s-1)-1;else{if(p>=9007199254740991)throw TypeError("Exceed the acceptable array length");e[p]=d}p++}h++}return p}},41e3:function(e,t,n){"use strict";var r=n(84921);e.exports=!r((function(){return Object.isExtensible(Object.preventExtensions({}))}))},57386:function(e,t,n){"use strict";var r=n(13686);e.exports=function(e,t,n){if(r(e),t===undefined)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,o){return e.call(t,n,r,o)}}return function(){return e.apply(t,arguments)}}},27314:function(e,t,n){"use strict";var r=n(13686),o=n(88711),i=[].slice,a={},u=function(e,t,n){if(!(t in a)){for(var r=[],o=0;o]*>)/g,u=/\$([$&'`]|\d{1,2})/g;e.exports=function(e,t,n,c,s,l){var f=n+e.length,d=c.length,p=u;return s!==undefined&&(s=r(s),p=a),i.call(l,p,(function(r,i){var a;switch(i.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,n);case"'":return t.slice(f);case"<":a=s[i.slice(1,-1)];break;default:var u=+i;if(0===u)return r;if(u>d){var l=o(u/10);return 0===l?r:l<=d?c[l-1]===undefined?i.charAt(1):c[l-1]+i.charAt(1):r}a=c[u-1]}return a===undefined?"":a}))}},179:function(e,t,n){"use strict";var r=function(e){return e&&e.Math==Math&&e};e.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof n.g&&n.g)||function(){return this}()||Function("return this")()},18632:function(e){"use strict";var t={}.hasOwnProperty;e.exports=function(e,n){return t.call(e,n)}},58825:function(e){"use strict";e.exports={}},63380:function(e,t,n){"use strict";var r=n(179);e.exports=function(e,t){var n=r.console;n&&n.error&&(1===arguments.length?n.error(e):n.error(e,t))}},55780:function(e,t,n){"use strict";var r=n(44417);e.exports=r("document","documentElement")},59807:function(e,t,n){"use strict";var r=n(67738),o=n(84921),i=n(27383);e.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},63408:function(e){"use strict";var t=Math.abs,n=Math.pow,r=Math.floor,o=Math.log,i=Math.LN2;e.exports={pack:function(e,a,u){var c,s,l,f=new Array(u),d=8*u-a-1,p=(1<>1,v=23===a?n(2,-24)-n(2,-77):0,m=e<0||0===e&&1/e<0?1:0,g=0;for((e=t(e))!=e||e===Infinity?(s=e!=e?1:0,c=p):(c=r(o(e)/i),e*(l=n(2,-c))<1&&(c--,l*=2),(e+=c+h>=1?v/l:v*n(2,1-h))*l>=2&&(c++,l/=2),c+h>=p?(s=0,c=p):c+h>=1?(s=(e*l-1)*n(2,a),c+=h):(s=e*n(2,h-1)*n(2,a),c=0));a>=8;f[g++]=255&s,s/=256,a-=8);for(c=c<0;f[g++]=255&c,c/=256,d-=8);return f[--g]|=128*m,f},unpack:function(e,t){var r,o=e.length,i=8*o-t-1,a=(1<>1,c=i-7,s=o-1,l=e[s--],f=127&l;for(l>>=7;c>0;f=256*f+e[s],s--,c-=8);for(r=f&(1<<-c)-1,f>>=-c,c+=t;c>0;r=256*r+e[s],s--,c-=8);if(0===f)f=1-u;else{if(f===a)return r?NaN:l?-Infinity:Infinity;r+=n(2,t),f-=u}return(l?-1:1)*r*n(2,f-t)}}},46317:function(e,t,n){"use strict";var r=n(84921),o=n(90726),i="".split;e.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==o(e)?i.call(e,""):Object(e)}:Object},69262:function(e,t,n){"use strict";var r=n(88711),o=n(77715);e.exports=function(e,t,n){var i,a;return o&&"function"==typeof(i=t.constructor)&&i!==n&&r(a=i.prototype)&&a!==n.prototype&&o(e,a),e}},1306:function(e,t,n){"use strict";var r=n(53252),o=Function.toString;"function"!=typeof r.inspectSource&&(r.inspectSource=function(e){return o.call(e)}),e.exports=r.inspectSource},21419:function(e,t,n){"use strict";var r=n(58825),o=n(88711),i=n(18632),a=n(96452).f,u=n(88340),c=n(41e3),s=u("meta"),l=0,f=Object.isExtensible||function(){return!0},d=function(e){a(e,s,{value:{objectID:"O"+ ++l,weakData:{}}})},p=e.exports={REQUIRED:!1,fastKey:function(e,t){if(!o(e))return"symbol"==typeof e?e:("string"==typeof e?"S":"P")+e;if(!i(e,s)){if(!f(e))return"F";if(!t)return"E";d(e)}return e[s].objectID},getWeakData:function(e,t){if(!i(e,s)){if(!f(e))return!0;if(!t)return!1;d(e)}return e[s].weakData},onFreeze:function(e){return c&&p.REQUIRED&&f(e)&&!i(e,s)&&d(e),e}};r[s]=!0},28076:function(e,t,n){"use strict";var r,o,i,a=n(2900),u=n(179),c=n(88711),s=n(21413),l=n(18632),f=n(53252),d=n(6839),p=n(58825),h=u.WeakMap;if(a){var v=f.state||(f.state=new h),m=v.get,g=v.has,y=v.set;r=function(e,t){return t.facade=e,y.call(v,e,t),t},o=function(e){return m.call(v,e)||{}},i=function(e){return g.call(v,e)}}else{var b=d("state");p[b]=!0,r=function(e,t){return t.facade=e,s(e,b,t),t},o=function(e){return l(e,b)?e[b]:{}},i=function(e){return l(e,b)}}e.exports={set:r,get:o,has:i,enforce:function(e){return i(e)?o(e):r(e,{})},getterFor:function(e){return function(t){var n;if(!c(t)||(n=o(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}}},76774:function(e,t,n){"use strict";var r=n(53414),o=n(36617),i=r("iterator"),a=Array.prototype;e.exports=function(e){return e!==undefined&&(o.Array===e||a[i]===e)}},1897:function(e,t,n){"use strict";var r=n(90726);e.exports=Array.isArray||function(e){return"Array"==r(e)}},61287:function(e,t,n){"use strict";var r=n(84921),o=/#|\.prototype\./,i=function(e,t){var n=u[a(e)];return n==s||n!=c&&("function"==typeof t?r(t):!!t)},a=i.normalize=function(e){return String(e).replace(o,".").toLowerCase()},u=i.data={},c=i.NATIVE="N",s=i.POLYFILL="P";e.exports=i},44616:function(e,t,n){"use strict";var r=n(88711),o=Math.floor;e.exports=function(e){return!r(e)&&isFinite(e)&&o(e)===e}},88711:function(e){"use strict";e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},51684:function(e){"use strict";e.exports=!1},45025:function(e,t,n){"use strict";var r=n(88711),o=n(90726),i=n(53414)("match");e.exports=function(e){var t;return r(e)&&((t=e[i])!==undefined?!!t:"RegExp"==o(e))}},8362:function(e,t,n){"use strict";var r=n(14860),o=n(76774),i=n(27842),a=n(57386),u=n(29863),c=n(16284),s=function(e,t){this.stopped=e,this.result=t};e.exports=function(e,t,n){var l,f,d,p,h,v,m,g=n&&n.that,y=!(!n||!n.AS_ENTRIES),b=!(!n||!n.IS_ITERATOR),_=!(!n||!n.INTERRUPTED),w=a(t,g,1+y+_),x=function(e){return l&&c(l),new s(!0,e)},E=function(e){return y?(r(e),_?w(e[0],e[1],x):w(e[0],e[1])):_?w(e,x):w(e)};if(b)l=e;else{if("function"!=typeof(f=u(e)))throw TypeError("Target is not iterable");if(o(f)){for(d=0,p=i(e.length);p>d;d++)if((h=E(e[d]))&&h instanceof s)return h;return new s(!1)}l=f.call(e)}for(v=l.next;!(m=v.call(l)).done;){try{h=E(m.value)}catch(S){throw c(l),S}if("object"==typeof h&&h&&h instanceof s)return h}return new s(!1)}},16284:function(e,t,n){"use strict";var r=n(14860);e.exports=function(e){var t=e["return"];if(t!==undefined)return r(t.call(e)).value}},9392:function(e,t,n){"use strict";var r,o,i,a=n(84921),u=n(92608),c=n(21413),s=n(18632),l=n(53414),f=n(51684),d=l("iterator"),p=!1;[].keys&&("next"in(i=[].keys())?(o=u(u(i)))!==Object.prototype&&(r=o):p=!0);var h=r==undefined||a((function(){var e={};return r[d].call(e)!==e}));h&&(r={}),f&&!h||s(r,d)||c(r,d,(function(){return this})),e.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:p}},36617:function(e){"use strict";e.exports={}},64674:function(e){"use strict";var t=Math.expm1,n=Math.exp;e.exports=!t||t(10)>22025.465794806718||t(10)<22025.465794806718||-2e-17!=t(-2e-17)?function(e){return 0==(e=+e)?e:e>-1e-6&&e<1e-6?e+e*e/2:n(e)-1}:t},90702:function(e,t,n){"use strict";var r=n(53188),o=Math.abs,i=Math.pow,a=i(2,-52),u=i(2,-23),c=i(2,127)*(2-u),s=i(2,-126);e.exports=Math.fround||function(e){var t,n,i=o(e),l=r(e);return ic||n!=n?l*Infinity:l*n}},36535:function(e){"use strict";var t=Math.log;e.exports=Math.log1p||function(e){return(e=+e)>-1e-8&&e<1e-8?e-e*e/2:t(1+e)}},53188:function(e){"use strict";e.exports=Math.sign||function(e){return 0==(e=+e)||e!=e?e:e<0?-1:1}},63785:function(e,t,n){"use strict";var r,o,i,a,u,c,s,l,f=n(179),d=n(8740).f,p=n(3350).set,h=n(13745),v=n(59137),m=n(23043),g=f.MutationObserver||f.WebKitMutationObserver,y=f.document,b=f.process,_=f.Promise,w=d(f,"queueMicrotask"),x=w&&w.value;x||(r=function(){var e,t;for(m&&(e=b.domain)&&e.exit();o;){t=o.fn,o=o.next;try{t()}catch(n){throw o?a():i=undefined,n}}i=undefined,e&&e.enter()},h||m||v||!g||!y?_&&_.resolve?(s=_.resolve(undefined),l=s.then,a=function(){l.call(s,r)}):a=m?function(){b.nextTick(r)}:function(){p.call(f,r)}:(u=!0,c=y.createTextNode(""),new g(r).observe(c,{characterData:!0}),a=function(){c.data=u=!u})),e.exports=x||function(e){var t={fn:e,next:undefined};i&&(i.next=t),o||(o=t,a()),i=t}},23287:function(e,t,n){"use strict";var r=n(179);e.exports=r.Promise},72974:function(e,t,n){"use strict";var r=n(23043),o=n(32728),i=n(84921);e.exports=!!Object.getOwnPropertySymbols&&!i((function(){return!Symbol.sham&&(r?38===o:o>37&&o<41)}))},2900:function(e,t,n){"use strict";var r=n(179),o=n(1306),i=r.WeakMap;e.exports="function"==typeof i&&/native code/.test(o(i))},15115:function(e,t,n){"use strict";var r=n(13686),o=function(e){var t,n;this.promise=new e((function(e,r){if(t!==undefined||n!==undefined)throw TypeError("Bad Promise constructor");t=e,n=r})),this.resolve=r(t),this.reject=r(n)};e.exports.f=function(e){return new o(e)}},42386:function(e,t,n){"use strict";var r=n(45025);e.exports=function(e){if(r(e))throw TypeError("The method doesn't accept regular expressions");return e}},87419:function(e,t,n){"use strict";var r=n(179).isFinite;e.exports=Number.isFinite||function(e){return"number"==typeof e&&r(e)}},86710:function(e,t,n){"use strict";var r=n(179),o=n(20017).trim,i=n(65094),a=r.parseFloat,u=1/a(i+"-0")!=-Infinity;e.exports=u?function(e){var t=o(String(e)),n=a(t);return 0===n&&"-"==t.charAt(0)?-0:n}:a},42619:function(e,t,n){"use strict";var r=n(179),o=n(20017).trim,i=n(65094),a=r.parseInt,u=/^[+-]?0[Xx]/,c=8!==a(i+"08")||22!==a(i+"0x16");e.exports=c?function(e,t){var n=o(String(e));return a(n,t>>>0||(u.test(n)?16:10))}:a},18174:function(e,t,n){"use strict";var r=n(67738),o=n(84921),i=n(75224),a=n(32645),u=n(32163),c=n(6289),s=n(46317),l=Object.assign,f=Object.defineProperty;e.exports=!l||o((function(){if(r&&1!==l({b:1},l(f({},"a",{enumerable:!0,get:function(){f(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol(),o="abcdefghijklmnopqrst";return e[n]=7,o.split("").forEach((function(e){t[e]=e})),7!=l({},e)[n]||i(l({},t)).join("")!=o}))?function(e,t){for(var n=c(e),o=arguments.length,l=1,f=a.f,d=u.f;o>l;)for(var p,h=s(arguments[l++]),v=f?i(h).concat(f(h)):i(h),m=v.length,g=0;m>g;)p=v[g++],r&&!d.call(h,p)||(n[p]=h[p]);return n}:l},96093:function(e,t,n){"use strict";var r,o=n(14860),i=n(79227),a=n(89807),u=n(58825),c=n(55780),s=n(27383),l=n(6839),f=l("IE_PROTO"),d=function(){},p=function(e){return"