diff --git a/code/WorkInProgress/ZomgPonies/clothing/civilian.dm b/code/WorkInProgress/ZomgPonies/clothing/civilian.dm index ea89908ba9d..507cd00f4da 100644 --- a/code/WorkInProgress/ZomgPonies/clothing/civilian.dm +++ b/code/WorkInProgress/ZomgPonies/clothing/civilian.dm @@ -1,30 +1,30 @@ //Mime's Hardsuit -/obj/item/clothing/head/helmet/space/mime - name = "mime hardsuit helmet" +/obj/item/clothing/head/helmet/space/eva/mime + name = "mime eva helmet" // icon = 'spaceciv.dmi' - desc = "A hardsuit helmet specifically designed for the mime." + desc = "An eva helmet specifically designed for the mime." icon_state = "spacemimehelmet" item_state = "spacemimehelmet" -obj/item/clothing/suit/space/mime - name = "mime hardsuit" +obj/item/clothing/suit/space/eva/mime + name = "mime eva suit" // icon = 'spaceciv.dmi' - desc = "A hardsuit specifically designed for the mime." + desc = "An EVA suit specifically designed for the mime." icon_state = "spacemime_suit" item_state = "spacemime_items" allowed = list(/obj/item/weapon/tank) -/obj/item/clothing/head/helmet/space/clown - name = "clown hardsuit helmet" +/obj/item/clothing/head/helmet/space/eva/clown + name = "clown eva helmet" // icon = 'spaceciv.dmi' - desc = "A hardsuit helmet specifically designed for the clown. SPESSHONK!" + desc = "An EVA helmet specifically designed for the clown. SPESSHONK!" icon_state = "clownhelmet" item_state = "clownhelmet" -obj/item/clothing/suit/space/clown - name = "clown hardsuit" +obj/item/clothing/suit/space/eva/clown + name = "clown eva suit" // icon = 'spaceciv.dmi' - desc = "A hardsuit specifically designed for the clown. SPESSHONK!" + desc = "An EVA suit specifically designed for the clown. SPESSHONK!" icon_state = "spaceclown_suit" item_state = "spaceclown_items" allowed = list(/obj/item/weapon/tank) diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index 098ff4eb232..9de817ecb89 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -207,6 +207,8 @@ hear += C.mob else if(C.mob && C.mob.loc.loc in hear_and_objects) hear += C.mob + else if(C.mob && C.mob.loc.loc.loc in hear_and_objects) + hear += C.mob return hear @@ -444,7 +446,7 @@ proc/isInSight(var/atom/A, var/atom/B) var/r = mixOneColor(weights, reds) var/g = mixOneColor(weights, greens) var/b = mixOneColor(weights, blues) - return rgb(r,g,b) + return rgb(r,g,b) /proc/alone_in_area(var/area/the_area, var/mob/must_be_alone, var/check_type = /mob/living/carbon) var/area/our_area = get_area_master(the_area) @@ -456,6 +458,6 @@ proc/isInSight(var/atom/A, var/atom/B) if(our_area == get_area_master(C)) return 0 return 1 - + /proc/MinutesToTicks(var/minutes as num) return minutes * 60 * 10 \ No newline at end of file diff --git a/code/controllers/master_controller.dm b/code/controllers/master_controller.dm index e0615702b49..590474c2dbb 100644 --- a/code/controllers/master_controller.dm +++ b/code/controllers/master_controller.dm @@ -186,7 +186,7 @@ datum/controller/game_controller/proc/process() machines_cost = (world.timeofday - timer) / 10 sleep(breather_ticks) - + //BOTS timer = world.timeofday process_bots() @@ -280,7 +280,7 @@ datum/controller/game_controller/proc/process() continue - Machinery.removeAtProcessing() + if(Machinery) Machinery.removeAtProcessing() /datum/controller/game_controller/proc/process_bots() for(var/obj/machinery/bot/Bot in aibots) @@ -289,8 +289,8 @@ datum/controller/game_controller/proc/process() spawn(0) Bot.bot_process() continue - aibots -= Bot - + aibots -= Bot + /datum/controller/game_controller/proc/processObjects() for (var/obj/Object in processing_objects) if (Object && Object.loc) diff --git a/code/game/atoms.dm b/code/game/atoms.dm index b58e3bf099f..6dec5fed5c8 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -257,16 +257,25 @@ its easier to just keep the beam vertical. return 0 if(H.gloves) if(fingerprintslast != H.ckey) + //Add the list if it does not exist. + if(!fingerprintshidden) + fingerprintshidden = list() fingerprintshidden += text("\[[time_stamp()]\] (Wearing gloves). Real name: [], Key: []",H.real_name, H.key) fingerprintslast = H.ckey return 0 if(!( fingerprints )) if(fingerprintslast != H.ckey) + //Add the list if it does not exist. + if(!fingerprintshidden) + fingerprintshidden = list() fingerprintshidden += text("\[[time_stamp()]\] Real name: [], Key: []",H.real_name, H.key) fingerprintslast = H.ckey return 1 else if(fingerprintslast != M.ckey) + //Add the list if it does not exist. + if(!fingerprintshidden) + fingerprintshidden = list() fingerprintshidden += text("\[[time_stamp()]\] Real name: [], Key: []",M.real_name, M.key) fingerprintslast = M.ckey return diff --git a/code/game/machinery/suit_storage_unit.dm b/code/game/machinery/suit_storage_unit.dm index 072cc4667b8..0b81ccabbeb 100644 --- a/code/game/machinery/suit_storage_unit.dm +++ b/code/game/machinery/suit_storage_unit.dm @@ -31,8 +31,8 @@ //The units themselves///////////////// /obj/machinery/suit_storage_unit/standard_unit - SUIT_TYPE = /obj/item/clothing/suit/space - HELMET_TYPE = /obj/item/clothing/head/helmet/space + SUIT_TYPE = /obj/item/clothing/suit/space/eva + HELMET_TYPE = /obj/item/clothing/head/helmet/space/eva MASK_TYPE = /obj/item/clothing/mask/breath diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index f7ce12324ca..420f73eac21 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -1017,7 +1017,7 @@ /obj/machinery/vending/eva name = "Hardsuit Kits" desc = "Conversion kits for your alien hardsuit needs." - products = list(/obj/item/device/modkit = 6,/obj/item/device/modkit/tajaran = 6,/obj/item/device/modkit/unathi = 6) + products = list(/obj/item/device/modkit = 6,/obj/item/device/modkit/tajaran = 6,/obj/item/device/modkit/unathi = 6,/obj/item/device/modkit/vox = 6) /obj/machinery/vending/sustenance diff --git a/code/game/objects/items/devices/modkit.dm b/code/game/objects/items/devices/modkit.dm index 26a0c066b01..ef7e6d6d4c2 100644 --- a/code/game/objects/items/devices/modkit.dm +++ b/code/game/objects/items/devices/modkit.dm @@ -70,8 +70,13 @@ name = "Tajaran hardsuit modification kit" desc = "A kit containing all the needed tools and parts to modify a hardsuit for another user. This one looks like it's meant for Tajaran." target_species = "Tajaran" - + /obj/item/device/modkit/unathi name = "Unathi hardsuit modification kit" desc = "A kit containing all the needed tools and parts to modify a hardsuit for another species. This one looks like it's meant for Unathi." - target_species = "Unathi" \ No newline at end of file + target_species = "Unathi" + +/obj/item/device/modkit/vox + name = "Vox hardsuit modification kit" + desc = "A kit containing all the needed tools and parts to modify a hardsuit for another species. This one looks like it's meant for Vox." + target_species = "Vox" \ No newline at end of file diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 89f222808b8..ed8989c3302 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -425,6 +425,9 @@ var/list/admin_verbs_mod = list( if ("Badmin") severity = 99 D.makerandom(severity) + + D.spreadtype = input("What method of contagion should the disease have?", "Give Disease") in list("Airborne","Contact","Injection") + D.infectionchance = input("How virulent is this disease? (1-100)", "Give Disease", D.infectionchance) as num if(istype(T,/mob/living/carbon/human)) diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index ca66eaf0ca9..fe90597b4c3 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -281,7 +281,7 @@ BLIND // can't see anything icon_state = "space" desc = "A special helmet designed for work in a hazardous, low-pressure environment." flags = FPRINT | TABLEPASS | HEADCOVERSEYES | BLOCKHAIR | HEADCOVERSMOUTH | STOPSPRESSUREDMAGE - item_state = "space" + item_state = "s_helmet" permeability_coefficient = 0.01 armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50) flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE diff --git a/code/modules/clothing/spacesuits/alien.dm b/code/modules/clothing/spacesuits/alien.dm index 51cf2a0903f..3f9ceacc2da 100644 --- a/code/modules/clothing/spacesuits/alien.dm +++ b/code/modules/clothing/spacesuits/alien.dm @@ -236,7 +236,27 @@ ..() if (magpulse) usr << "It would be hard to take these off without relaxing your grip first." //theoretically this message should only be seen by the wearer when the claws are equipped. - + +/obj/item/clothing/suit/space/eva/vox + name = "Vox Space Suit" + icon_state = "voxspace" + item_state = "voxspace" + species_restricted = list("Vox", "Vox Armalis") + sprite_sheets = list( + "Vox" = 'icons/mob/species/vox/suit.dmi', + "Vox Armalis" = 'icons/mob/species/armalis/suit.dmi', + ) + +/obj/item/clothing/head/helmet/space/eva/vox + name = "Vox Space Suit" + icon_state = "voxspace" + item_state = "voxspace" + species_restricted = list("Vox","Vox Armalis") + sprite_sheets = list( + "Vox" = 'icons/mob/species/vox/head.dmi', + "Vox Armalis" = 'icons/mob/species/armalis/head.dmi', + ) + /obj/item/clothing/suit/space/plasmaman w_class = 3 allowed = list(/obj/item/weapon/gun,/obj/item/ammo_box/magazine,/obj/item/ammo_casing,/obj/item/weapon/melee/baton,/obj/item/weapon/melee/energy/sword,/obj/item/weapon/handcuffs,/obj/item/weapon/tank) diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm index e7a24a77ff4..9250796e29a 100644 --- a/code/modules/clothing/spacesuits/miscellaneous.dm +++ b/code/modules/clothing/spacesuits/miscellaneous.dm @@ -112,3 +112,19 @@ desc = "A paramedic space suit. Used in the recovery of bodies from space." slowdown = 1 flags = FPRINT | TABLEPASS | STOPSPRESSUREDMAGE | ONESIZEFITSALL + +/obj/item/clothing/suit/space/eva + name = "EVA suit" + icon_state = "spacenew" + item_state = "s_suit" + desc = "A lightweight space suit with the basic ability to protect the wearer from the vacuum of space during emergencies." + slowdown = 1 + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 20) + +/obj/item/clothing/head/helmet/space/eva + name = "EVA helmet" + icon_state = "spacenew" + item_state = "s_helmet" + desc = "A lightweight space helmet with the basic ability to protect the wearer from the vacuum of space during emergencies." + flags_inv = HIDEMASK|HIDEEARS|HIDEEYES + armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 20) \ No newline at end of file diff --git a/code/modules/clothing/spacesuits/rig.dm b/code/modules/clothing/spacesuits/rig.dm index 21c3248bcc0..f3dc8d6b36e 100644 --- a/code/modules/clothing/spacesuits/rig.dm +++ b/code/modules/clothing/spacesuits/rig.dm @@ -17,11 +17,13 @@ "Unathi" = 'icons/mob/species/unathi/helmet.dmi', "Tajaran" = 'icons/mob/species/tajaran/helmet.dmi', "Skrell" = 'icons/mob/species/skrell/helmet.dmi', + "Vox" = 'icons/mob/species/vox/helmet.dmi', ) sprite_sheets_obj = list( "Unathi" = 'icons/obj/clothing/species/unathi/hats.dmi', "Tajaran" = 'icons/obj/clothing/species/tajaran/hats.dmi', "Skrell" = 'icons/obj/clothing/species/skrell/hats.dmi', + "Vox" = 'icons/obj/clothing/species/vox/hats.dmi', ) attack_self(mob/user) @@ -65,11 +67,13 @@ "Unathi" = 'icons/mob/species/unathi/suit.dmi', "Tajaran" = 'icons/mob/species/tajaran/suit.dmi', "Skrell" = 'icons/mob/species/skrell/suit.dmi', + "Vox" = 'icons/mob/species/vox/suit.dmi', ) sprite_sheets_obj = list( "Unathi" = 'icons/obj/clothing/species/unathi/suits.dmi', "Tajaran" = 'icons/obj/clothing/species/tajaran/suits.dmi', "Skrell" = 'icons/obj/clothing/species/skrell/suits.dmi', + "Vox" = 'icons/obj/clothing/species/vox/suits.dmi', ) //Breach thresholds, should ideally be inherited by most (if not all) hardsuits. diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 51d33edde47..53c834cb371 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1014,6 +1014,8 @@ number += 2 if(istype(src.head, /obj/item/clothing/head/helmet/space)) number += 2 + if(istype(src.head, /obj/item/clothing/head/helmet/space/eva)) + number -= 2 if(istype(src.glasses, /obj/item/clothing/glasses/thermal)) number -= 1 if(istype(src.glasses, /obj/item/clothing/glasses/sunglasses)) diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index f1cf208b4b1..bad5c10d9e0 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -83,7 +83,7 @@ var/list/department_radio_keys = list( else dongle = H.r_ear if(!istype(dongle)) return - if(dongle.translate_binary) return 1 + if(dongle.translate_hive) return 1 /mob/living/say(var/message) diff --git a/code/modules/mob/living/simple_animal/borer.dm b/code/modules/mob/living/simple_animal/borer.dm index 56ca314b62e..abcd7b94627 100644 --- a/code/modules/mob/living/simple_animal/borer.dm +++ b/code/modules/mob/living/simple_animal/borer.dm @@ -233,7 +233,7 @@ else src << "\red You plunge your probosci deep into the cortex of the host brain, interfacing directly with their nervous system." host << "\red You feel a strange shifting sensation behind your eyes as an alien consciousness displaces yours." - + var/borer_key = src.key host.attack_log += text("\[[time_stamp()]\] [src.name] ([src.ckey]) has assumed control of [host.name] ([host.ckey])") msg_admin_attack("[src.name] ([src.ckey]) has assumed control of [host.name] ([host.ckey]) (JMP)") // host -> brain @@ -275,6 +275,8 @@ host.verbs += /mob/living/carbon/proc/punish_host host.verbs += /mob/living/carbon/proc/spawn_larvae + if(src && !src.key) + src.key = "@[borer_key]" return /mob/living/simple_animal/borer/verb/secrete_chemicals() diff --git a/code/modules/mob/say.dm b/code/modules/mob/say.dm index 8ba4a4555fa..41612819446 100644 --- a/code/modules/mob/say.dm +++ b/code/modules/mob/say.dm @@ -62,31 +62,28 @@ if(!other) return 1 //Universal speak makes everything understandable, for obvious reasons. - else if(other.universal_speak || src.universal_speak || src.universal_understand) + if(other.universal_speak || src.universal_speak || src.universal_understand) return 1 - else if (src.stat == 2) + if (src.stat == 2) return 1 - else if (speaking) //Language check. - var/understood - for(var/datum/language/L in src.languages) - if(speaking.name == L.name) - understood = 1 - break - - if(understood || universal_speak) + if(!speaking) //Handle languages later + if(other.universal_speak || src.universal_speak) + return 1 + if(isAI(src) && ispAI(other)) + return 1 + if (istype(other, src.type) || istype(src, other.type)) + return 1 + if (istype(other, /mob/living/carbon/human) && (istype(src, /mob/living/carbon/human) || istype(src, /mob/living/silicon/pai))) + return 1 + if(istype(other, /mob/living/carbon/alien) && istype(src, /mob/living/carbon/alien)) + return 1 + return 0 + + for(var/datum/language/L in src.languages) //Handling languages + if(speaking.name == L.name) return 1 - else - return 0 - else if(other.universal_speak || src.universal_speak) - return 1 - else if(isAI(src) && ispAI(other)) - return 1 - else if (istype(other, src.type) || istype(src, other.type)) - return 1 - else if (istype(other, /mob/living/carbon/human) && istype(src, /mob/living/carbon/human)) - return 1 return 0 /mob/proc/say_quote(var/text,var/datum/language/speaking) diff --git a/code/modules/power/singularity/generator.dm b/code/modules/power/singularity/generator.dm index f2081503195..69c3b611e39 100644 --- a/code/modules/power/singularity/generator.dm +++ b/code/modules/power/singularity/generator.dm @@ -12,16 +12,21 @@ /obj/machinery/the_singularitygen/process() var/turf/T = get_turf(src) if(src.energy >= 200) - if(fingerprintshidden && fingerprintshidden.len) - var/prints - for(var/i = 1, i < fingerprintshidden.len, i++) - if(i > fingerprintshidden.len) - break - if(i == 1) - prints += fingerprintshidden[i] - else - prints += ", [fingerprintshidden[i]]" - log_admin("New singularity made, all touchers. [prints]. Last touched by [fingerprintslast].") + var/admin_message = "New singularity made" + world << "lengthy = [length(fingerprintshidden)]" + if(fingerprintshidden && length(fingerprintshidden)) + admin_message += "touched by: " + if(islist(fingerprintshidden)) + for(var/fp in fingerprintshidden) + admin_message += "[fp], " + admin_message += " - Last touched by [fingerprintslast]. at [x],[y],[z]" + else + admin_message += fingerprintshidden + + log_admin(admin_message) + message_admins("[admin_message] at [x],[y],[z]",1) + investigate_log("[admin_message] at [x],[y],[z]","singulo") + new /obj/machinery/singularity/(T, 50) if(src) del(src) @@ -34,6 +39,9 @@ "You secure the [src.name] to the floor.", \ "You hear a ratchet") src.add_hiddenprint(user) + + + else user.visible_message("[user.name] unsecures [src.name] from the floor.", \ "You unsecure the [src.name] from the floor.", \ diff --git a/code/modules/research/xenoarchaeology/artifact/effect.dm b/code/modules/research/xenoarchaeology/artifact/effect.dm index 06337842153..0518e677419 100644 --- a/code/modules/research/xenoarchaeology/artifact/effect.dm +++ b/code/modules/research/xenoarchaeology/artifact/effect.dm @@ -92,12 +92,12 @@ proc/GetAnomalySusceptibility(var/mob/living/carbon/human/H) //anomaly suits give best protection, but excavation suits are almost as good if(istype(H.wear_suit,/obj/item/clothing/suit/bio_suit/anomaly)) protected += 0.6 - else if(istype(H.wear_suit,/obj/item/clothing/suit/space/anomaly)) + else if(istype(H.wear_suit,/obj/item/clothing/suit/space/eva/anomaly)) protected += 0.5 if(istype(H.head,/obj/item/clothing/head/bio_hood/anomaly)) protected += 0.3 - else if(istype(H.head,/obj/item/clothing/head/helmet/space/anomaly)) + else if(istype(H.head,/obj/item/clothing/head/helmet/space/eva/anomaly)) protected += 0.2 //latex gloves and science goggles also give a bit of bonus protection diff --git a/code/modules/research/xenoarchaeology/tools/anomaly_suit.dm b/code/modules/research/xenoarchaeology/tools/anomaly_suit.dm index 8922c5dae17..b8277fa5e8e 100644 --- a/code/modules/research/xenoarchaeology/tools/anomaly_suit.dm +++ b/code/modules/research/xenoarchaeology/tools/anomaly_suit.dm @@ -14,7 +14,7 @@ item_state = "engspace_helmet" armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 100) -/obj/item/clothing/suit/space/anomaly +/obj/item/clothing/suit/space/eva/anomaly name = "Excavation suit" desc = "A pressure resistant excavation suit partially capable of insulating against exotic alien energies." icon_state = "cespace_suit" @@ -22,7 +22,7 @@ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 100) allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank,/obj/item/device/suit_cooling_unit) -/obj/item/clothing/head/helmet/space/anomaly +/obj/item/clothing/head/helmet/space/eva/anomaly name = "Excavation hood" desc = "A pressure resistant excavation hood partially capable of insulating against exotic alien energies." icon_state = "cespace_helmet" diff --git a/code/modules/virus2/disease2.dm b/code/modules/virus2/disease2.dm index 41787ac3ef9..f699c68a82d 100644 --- a/code/modules/virus2/disease2.dm +++ b/code/modules/virus2/disease2.dm @@ -1,7 +1,7 @@ /datum/disease2/disease var/infectionchance = 70 var/speed = 1 - var/spreadtype = "Contact" // Can also be "Airborne" + var/spreadtype = "Contact" // Can also be "Airborne" or "Injection" var/stage = 1 var/stageprob = 10 var/dead = 0 @@ -16,7 +16,7 @@ uniqueID = rand(0,10000) ..() -/datum/disease2/disease/proc/makerandom(var/greater=0) +/datum/disease2/disease/proc/makerandom(var/greater=0, var/allow_injection=0) for(var/i=1 ; i <= max_stage ; i++ ) var/datum/disease2/effectholder/holder = new /datum/disease2/effectholder holder.stage = i @@ -30,6 +30,7 @@ antigen |= text2num(pick(ANTIGENS)) antigen |= text2num(pick(ANTIGENS)) spreadtype = prob(70) ? "Airborne" : "Contact" + if(allow_injection) spreadtype = prob(20) ? spreadtype : "Injection" if(all_species.len) affected_species = get_infectable_species() @@ -58,15 +59,18 @@ return var/mob/living/carbon/human/MS = mob - if(MS && (MS.species.flags & IS_SYNTHETIC)) - return + if(istype(MS)) + if(MS.species.flags & IS_SYNTHETIC) + return if(stage <= 1 && clicks == 0) // with a certain chance, the mob may become immune to the disease before it starts properly if(prob(5)) mob.antibodies |= antigen - if(mob.radiation > 50) - if(prob(1)) - majormutateinactivate(mob) + +// NO MORE MUTATING IN MOBS - Bone White +// if(mob.radiation > 50) +// if(prob(1)) +// majormutateinactivate(mob) //Space antibiotics stop disease completely if(mob.reagents.has_reagent("spaceacillin")) diff --git a/code/modules/virus2/helpers.dm b/code/modules/virus2/helpers.dm index c1fd6ea2139..e3525797d71 100644 --- a/code/modules/virus2/helpers.dm +++ b/code/modules/virus2/helpers.dm @@ -24,6 +24,8 @@ proc/get_infection_chance(var/mob/living/carbon/M, var/vector = "Airborne") if(istype(M:wear_suit, /obj/item/clothing/suit/bio_suit) && istype(M:head, /obj/item/clothing/head/bio_hood)) score += 15 + if (vector == "Injection") score = 30 // Makes sure Injection viruses cannot be caught normally + // log_debug("[M]'s resistance to [vector] viruses: [score]") diff --git a/code/modules/virus2/items_devices.dm b/code/modules/virus2/items_devices.dm index 914622c96f5..a43d8c15502 100644 --- a/code/modules/virus2/items_devices.dm +++ b/code/modules/virus2/items_devices.dm @@ -3,7 +3,7 @@ /obj/item/device/antibody_scanner name = "\improper Antibody Scanner" desc = "Scans living beings for antibodies in their blood." - icon_state = "health" + icon_state = "antibody" w_class = 2.0 item_state = "electronic" flags = FPRINT | TABLEPASS | CONDUCT @@ -50,7 +50,7 @@ /obj/item/weapon/virusdish/random/New() ..() src.virus2 = new /datum/disease2/disease - src.virus2.makerandom() + src.virus2.makerandom(0, 1) // Virus dishes get minor effects only on creation, and have a chance of being injection type growth = rand(5, 50) /obj/item/weapon/virusdish/attackby(var/obj/item/weapon/W as obj,var/mob/living/carbon/user as mob) diff --git a/icons/mob/head.dmi b/icons/mob/head.dmi index c9125d4430b..f0cc991cef5 100644 Binary files a/icons/mob/head.dmi and b/icons/mob/head.dmi differ diff --git a/icons/mob/species/vox/head.dmi b/icons/mob/species/vox/head.dmi index db10541af06..67a90c9c4c5 100644 Binary files a/icons/mob/species/vox/head.dmi and b/icons/mob/species/vox/head.dmi differ diff --git a/icons/mob/species/vox/helmet.dmi b/icons/mob/species/vox/helmet.dmi new file mode 100644 index 00000000000..afbbc2f1cca Binary files /dev/null and b/icons/mob/species/vox/helmet.dmi differ diff --git a/icons/mob/species/vox/suit.dmi b/icons/mob/species/vox/suit.dmi index 336b49d7d3d..b401a0b05f9 100644 Binary files a/icons/mob/species/vox/suit.dmi and b/icons/mob/species/vox/suit.dmi differ diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi index 661aa232a8e..254c1abce75 100644 Binary files a/icons/mob/suit.dmi and b/icons/mob/suit.dmi differ diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi index c9b8287764a..d8af262681a 100644 Binary files a/icons/obj/clothing/hats.dmi and b/icons/obj/clothing/hats.dmi differ diff --git a/icons/obj/clothing/species/vox/hats.dmi b/icons/obj/clothing/species/vox/hats.dmi new file mode 100644 index 00000000000..ff959db69f9 Binary files /dev/null and b/icons/obj/clothing/species/vox/hats.dmi differ diff --git a/icons/obj/clothing/species/vox/suits.dmi b/icons/obj/clothing/species/vox/suits.dmi new file mode 100644 index 00000000000..ae8595ac047 Binary files /dev/null and b/icons/obj/clothing/species/vox/suits.dmi differ diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi index a9923205537..f59d96322a0 100644 Binary files a/icons/obj/clothing/suits.dmi and b/icons/obj/clothing/suits.dmi differ diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index 977071c5f4d..c44bceb4655 100644 Binary files a/icons/obj/device.dmi and b/icons/obj/device.dmi differ diff --git a/maps/cyberiad.dmm b/maps/cyberiad.dmm index 9653666ba8d..502d469d089 100644 --- a/maps/cyberiad.dmm +++ b/maps/cyberiad.dmm @@ -1743,8 +1743,8 @@ "aHA" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor,/area/ai_monitored/storage/eva) "aHB" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/machinery/camera{c_tag = "EVA East"; dir = 8; network = list("SS13")},/obj/structure/table/reinforced,/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/obj/item/stack/sheet/metal{amount = 50},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) "aHC" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/ai_monitored/storage/eva) -"aHD" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/suit/space/skrell/white,/obj/item/clothing/head/helmet/space/skrell/white,/turf/simulated/floor{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/ai_monitored/storage/eva) -"aHE" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/head/helmet/space/skrell/black,/obj/item/clothing/suit/space/skrell/black,/turf/simulated/floor{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/ai_monitored/storage/eva) +"aHD" = (/obj/item/clothing/suit/space/eva/mime,/obj/item/clothing/head/helmet/space/eva/mime,/obj/structure/rack{dir = 8; layer = 2.9},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) +"aHE" = (/obj/item/clothing/suit/space/eva/clown,/obj/item/clothing/head/helmet/space/eva/clown,/obj/structure/rack{dir = 8; layer = 2.9},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) "aHF" = (/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 11; level = 1},/turf/simulated/floor/plating,/area/maintenance/fsmaint) "aHG" = (/obj/machinery/atmospherics/unary/vent_pump{dir = 8; on = 1},/turf/simulated/floor{icon_state = "white"},/area/crew_quarters/sleep) "aHH" = (/obj/structure/sink{icon_state = "sink"; dir = 8; pixel_x = -12; pixel_y = 2},/obj/structure/mirror{pixel_x = -28},/obj/machinery/light{dir = 1},/turf/simulated/floor{icon_state = "freezerfloor"},/area/crew_quarters/toilet) @@ -1884,8 +1884,8 @@ "aKl" = (/obj/structure/table/reinforced,/obj/machinery/cell_charger,/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/weapon/cell/high{charge = 100; maxcharge = 15000},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/item/stack/cable_coil{pixel_x = 3; pixel_y = -7},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/ai_monitored/storage/eva) "aKm" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) "aKn" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/table/reinforced,/obj/item/weapon/book/manual/evaguide,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) -"aKo" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/suit/space/vox/pressure{armor = list("melee" = 40, "bullet" = 10, "laser" = 20, "energy" = 15, "bomb" = 30, "bio" = 100, "rad" = 80); desc = "A huge, armoured, pressurized suit, designed for distinctly nonhuman proportions. Built by NT to emulate Vox design, but with the materials seen in an engineering RIG."; name = "NT Vox RIG"},/obj/item/clothing/gloves/yellow/vox,/obj/item/clothing/head/helmet/space/vox/pressure{armor = list("melee" = 40, "bullet" = 10, "laser" = 20, "energy" = 15, "bomb" = 30, "bio" = 100, "rad" = 80); name = "NT Vox Helmet"},/obj/item/clothing/mask/breath,/obj/item/clothing/shoes/magboots/vox,/obj/item/weapon/tank/nitrogen,/turf/simulated/floor{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/ai_monitored/storage/eva) -"aKp" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/mask/breath,/obj/item/clothing/suit/space/unathi/rig_cheap,/obj/item/clothing/head/helmet/space/unathi/helmet_cheap,/obj/item/clothing/shoes/magboots,/turf/simulated/floor{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/ai_monitored/storage/eva) +"aKo" = (/obj/structure/rack{dir = 8; layer = 2.9},/obj/item/clothing/shoes/magboots,/obj/item/weapon/tank/nitrogen,/obj/item/clothing/suit/space/eva/vox,/obj/item/clothing/mask/breath/vox,/obj/item/clothing/head/helmet/space/eva/vox,/turf/simulated/floor{dir = 8; icon_state = "vault"; tag = "icon-vault (WEST)"},/area/ai_monitored/storage/eva) +"aKp" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 30},/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) "aKq" = (/obj/machinery/door/firedoor/border_only,/turf/simulated/floor{dir = 8; icon_state = "bluecorner"},/area/hallway/primary/fore) "aKr" = (/obj/machinery/door/firedoor/border_only,/turf/simulated/floor{icon_state = "bluecorner"},/area/hallway/primary/fore) "aKs" = (/obj/machinery/camera{c_tag = "Dormitories South"; c_tag_order = 999; dir = 4; network = list("SS13")},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4},/turf/simulated/floor{dir = 8; icon_state = "neutral"},/area/crew_quarters/fitness) @@ -1945,8 +1945,8 @@ "aLu" = (/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,/obj/machinery/atmospherics/pipe/simple/hidden/supply,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/hologram/holopad,/turf/simulated/floor,/area/gateway) "aLv" = (/turf/simulated/floor,/area/gateway) "aLw" = (/obj/machinery/firealarm{dir = 4; pixel_x = 24},/turf/simulated/floor,/area/gateway) -"aLx" = (/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/obj/machinery/suit_storage_unit,/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/ai_monitored/storage/eva) -"aLy" = (/obj/machinery/light{icon_state = "tube1"; dir = 4},/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = 30},/obj/machinery/suit_storage_unit,/turf/simulated/floor{dir = 4; icon_state = "warning"},/area/ai_monitored/storage/eva) +"aLx" = (/obj/item/device/radio/intercom{freerange = 1; frequency = 1459; name = "Station Intercom (General)"; pixel_x = -30},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/ai_monitored/storage/eva) +"aLy" = (/obj/structure/rack,/obj/item/weapon/storage/belt/archaeology,/obj/item/clothing/suit/space/eva/anomaly,/obj/item/clothing/head/helmet/space/eva/anomaly,/obj/item/clothing/mask/breath,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor,/area/research_outpost/gearstore) "aLz" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor{dir = 8; icon_state = "bluecorner"},/area/hallway/primary/fore) "aLA" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor,/area/hallway/primary/fore) "aLB" = (/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor{icon_state = "bluecorner"},/area/hallway/primary/fore) @@ -2120,8 +2120,7 @@ "aON" = (/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{dir = 4; initialize_directions = 11; level = 1},/turf/simulated/floor{icon_state = "dark"},/area/chapel/main) "aOO" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1},/turf/simulated/floor,/area/gateway) "aOP" = (/obj/machinery/light{dir = 4},/obj/effect/decal/warning_stripes/southwest,/obj/structure/closet/secure_closet/exile,/turf/simulated/floor,/area/gateway) -"aOQ" = (/obj/item/clothing/suit/space/mime,/obj/item/clothing/head/helmet/space/mime,/obj/structure/rack{dir = 8; layer = 2.9},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) -"aOR" = (/obj/item/clothing/suit/space/clown,/obj/item/clothing/head/helmet/space/clown,/obj/structure/rack{dir = 8; layer = 2.9},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) +"aOQ" = (/obj/structure/rack,/obj/item/weapon/storage/belt/archaeology,/obj/item/clothing/suit/space/eva/anomaly,/obj/item/clothing/head/helmet/space/eva/anomaly,/obj/item/clothing/mask/breath,/obj/machinery/light_switch{pixel_x = 0; pixel_y = 23},/turf/simulated/floor,/area/research_outpost/gearstore) "aOS" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor{dir = 8; icon_state = "warning"},/area/ai_monitored/storage/eva) "aOT" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0; tag = ""},/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor,/area/ai_monitored/storage/eva) "aOU" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; tag = ""},/turf/simulated/floor{icon_state = "dark"},/area/ai_monitored/storage/eva) @@ -10690,7 +10689,6 @@ "dYE" = (/turf/simulated/wall,/area/research_outpost/gearstore) "dYF" = (/obj/structure/closet/excavation,/turf/simulated/floor,/area/research_outpost/gearstore) "dYG" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor,/area/research_outpost/gearstore) -"dYH" = (/obj/structure/rack,/obj/item/weapon/storage/belt/archaeology,/obj/item/clothing/suit/space/anomaly,/obj/item/clothing/head/helmet/space/anomaly,/obj/item/clothing/mask/breath,/obj/machinery/light_switch{pixel_x = 0; pixel_y = 23},/turf/simulated/floor,/area/research_outpost/gearstore) "dYI" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{level = 1},/turf/simulated/floor/plating,/area/research_outpost/gearstore) "dYJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"; pixel_y = 0},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor,/area/research_outpost/gearstore) "dYK" = (/obj/machinery/light{dir = 1},/obj/machinery/atmospherics/pipe/manifold/hidden/supply{dir = 8; initialize_directions = 11; level = 1},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_y = 0},/obj/machinery/alarm{pixel_y = 24},/turf/simulated/floor,/area/research_outpost/gearstore) @@ -10727,7 +10725,6 @@ "dZs" = (/obj/structure/transit_tube{tag = "icon-D-NW"; icon_state = "D-NW"},/turf/simulated/mineral,/area/mine/unexplored) "dZt" = (/obj/structure/closet/excavation,/obj/machinery/firealarm{dir = 8; pixel_x = -24},/turf/simulated/floor,/area/research_outpost/gearstore) "dZu" = (/obj/machinery/atmospherics/unary/vent_scrubber{dir = 4; on = 1},/turf/simulated/floor,/area/research_outpost/gearstore) -"dZv" = (/obj/structure/rack,/obj/item/weapon/storage/belt/archaeology,/obj/item/clothing/suit/space/anomaly,/obj/item/clothing/head/helmet/space/anomaly,/obj/item/clothing/mask/breath,/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{dir = 4; level = 1},/turf/simulated/floor,/area/research_outpost/gearstore) "dZw" = (/obj/structure/grille,/obj/structure/window/reinforced,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{level = 1},/turf/simulated/floor/plating,/area/research_outpost/gearstore) "dZx" = (/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/machinery/atmospherics/unary/vent_scrubber{dir = 8; on = 1; scrub_Toxins = 0},/turf/simulated/floor,/area/research_outpost/gearstore) "dZy" = (/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; pixel_x = 0},/obj/machinery/atmospherics/pipe/simple/hidden/supply{level = 1},/turf/simulated/floor,/area/research_outpost/gearstore) @@ -12647,12 +12644,12 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDwaDxaDyaDzaDAaDBaDCaDDaDEaDCaDFaDGaDCaDCaDHaySaxCayWaabaabaaaaaaaaaaaaaaaaabaDIaDJaDKaDLaDMaaaaabaaaaaaaaaaaaaaaazbaDNazbaDOaDPaDQaDQaDQaDRaDQaDQaDQaDSaDOaDTaDUaDUaDUaDUaDUaDUaDUaAYaaiaDVaDWaDXaDYaDZaEaaEbaEcaEdaEeaEfaDWaEgaaiaEhauRaEiaaqaEjaosaEkaElaElaEmaEnaEoaEpaEqaEqaEraEsaBnaEtaEsaEsaEuaEvaEwayRayRaExaEyaEzaEAaEAaEAaEBayRaECaEDaxZaxZaxZaxZaxZaEEaaiaaiaaiaaaaaaaaaaEFaEGaEFaaaaaaaaqaaqaEHaaqaEIaEJaEKaELaCuaCuaEMaENaCuaEOaaqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaySaEPaEQaEPaERaDyaDyaESaEPaEQaEPaETaEUaEVaEWaySaxCayVayVaEXayZayZayZayZazaayVaEYaEZaFaaFbaEYazbazbaFcaFdaFeazbazbazbaDNaFfaDOaaaaabaaaaabaaaaabaaaaabaaaaDOaDTaDUaFgaFhaFiaFjaFkaDUaAYaaiaFlaFlaFmaFnaFoaFpaFqaFpaFraFsaFtaFlaFlaaiaEhauRaFuaaqaEjaosaBeaysaytaaqaztaFvaFwaFxaFyaFzaFzaFAaFBaFzaFBaFCaFDaFEaFFaFGaFHaFIaFJaFKaFKaFKaFLayRaaqaFMaxZaxZaxZaxZaxZaFNaaiaabaaaaaaaaaaoHaFOaFPaFQaFRaaaaaqaFSaFTaFUaFVaFWaFXaCuaCuaCuaFYaFZaCuaGaaaqaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaaaaabaGbayaaGcaAPaGdaGeaGfaGgaGhaGdaAPaGiaGjayaaGkaGlaySaxCaxCaxCaxCaxCaxCaxCaxCaGmaGnaEYaGoaGpaGqaEYaGraGsaCNaCNaCNaCNaCNaGuaGtaGvaDOaabaGwaGwaGwaGwaGwaGwaGwaabaDOaDTaDUaGxaGyaGzaGAaGxaDUaAYaaiaaiaaiaaiaGBaGCaDWaGDaDWaGCaGEaaiaaiaaiaaiaEhauRaGFaaqaEjaosaAuaysaytaaqaAvaGGaaqaaqaaqaaqaaqaaqaaqaGHaaqaaqaaqaaqaaqaaqaGIaaqaGJaGKaGLaGMaGNaaqaaqaFMaxZaxZaxZaxZaxZaFNaaiaaaaaaaaaaaaaaiaGOaGPaGQaaiaaaaaqaGRaGSaaqaGTaGUaGVaGWaGXaGYaGZaHaaDtaaqaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDwaEQaHbaHcaHcaHcaHcaHdaEQaDwaHeayaaHfaHgaySaHhaHhaHhaHhaHhaHhaHhaxCaHiaHjaEYaHkaHlaHmaEYaHnaHoaHnaHnaHnaHnaHnaHnaHnaHnaHpaaaaGwaHqaHraHsaHtaHuaGwaaaaDOaDTaDUaGxaHvaHwaHxaGxaDUaAYaaibqbbqbaFmaHzaHAaFpaFqaFpaHAaHBaHCaHDaHEaaiaEhauRaEiaaqaHFaxQaHGaysaytaaqaztaGGaaqaHHaHIaHJaHJaaqaHKaHIaHLaaqaHMaHNaHOaaqaHPaaqaHQaHRaHRaHRaHSaaqaabaHTaHUaHUaHUaHUaHUaHVaabaaaaaaaagaaaaaiaHWaHXaHYaaiaaaaaqaHZaIaaaqaaqaaqaaqaaqaIbaaqaaqaaqaaqaaqaaqaaiaaiaaiaaiaaiaaiaaiaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaDwaEQaHbaHcaHcaHcaHcaHdaEQaDwaHeayaaHfaHgaySaHhaHhaHhaHhaHhaHhaHhaxCaHiaHjaEYaHkaHlaHmaEYaHnaHoaHnaHnaHnaHnaHnaHnaHnaHnaHpaaaaGwaHqaHraHsaHtaHuaGwaaaaDOaDTaDUaGxaHvaHwaHxaGxaDUaAYaaibqbbqbaFmaHzaHAaFpaFqaFpaHAaHBaHCaFlaFlaaiaEhauRaEiaaqaHFaxQaHGaysaytaaqaztaGGaaqaHHaHIaHJaHJaaqaHKaHIaHLaaqaHMaHNaHOaaqaHPaaqaHQaHRaHRaHRaHSaaqaabaHTaHUaHUaHUaHUaHUaHVaabaaaaaaaagaaaaaiaHWaHXaHYaaiaaaaaqaHZaIaaaqaaqaaqaaqaaqaIbaaqaaqaaqaaqaaqaaqaaiaaiaaiaaiaaiaaiaaiaaiaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIcaIdaIeaIdaIdaIfaIgaIdaIdaIeaIhaIiayaaERaIjaySaIkaIlaImaInaIoaIpaHhaxCaIqayVaEYaEYaIraIsaHpaItaIuaIvaIwaIxaIyaIzaIAaIBaICaHpaabaGwaIDaIEaIFaIGaIHaGwaabaDOaDTaDUaIIaIJaIKaILaIMaDUaAYaaiaDVaDWaHyaIOaGCaDWaIPaDWaGCaIQaIRaDWaEgaaiaEhauRaISaaqaEjazrazsaysaytaaqaITaIUaaqaIVaHIaHIaHIaIWaIXaIYaIZaaqaJaaJbaJcaJdaJeaaqaJfaJgaJhaJgaJiaaqaaaaabaaaaabaaaaabaaaaabaaaaaaaaaaaaaaaaaiaJjaJkaJlaaiaJmaaqaaqaaqaaqaJnaJoaJpaJpaJqaJpaJraJpaJsaJtaJtaNHaJtaJtaJtaJtaJvaJwaJxaaiaJyaaiaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIcaIhaIdaJzbpZaJBaJCaJDaJEaJFaJGaINaJAaJHaJIaEPaERaJJaySaJKaJLaJMaJNaJMaJOaJPaxCaJQaJRaJSaJTaJUaJuaJVaJXaJYaJZaJZaJZaKaaJZaJZaKbaKcaHpaaaaGwaKdaIEaKeaIGaKfaGwaaaaDOaDTaDUaKgaKhaKiaKjaKkaDUaAYaaibqabqaaFmaKlaHAaFpaKmaFpaHAaKnaFtaKoaKpaaiaKqawzaKraaqaEjazrabZabZabZabZaKsaKtaKuaKvaKwabZabZabZaaEabZabsaKxaKyaKzaJWabZaKBaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaiaaiaaiaaiaoHaoJaaiaaiaaiaaiaaiaaiaKCaamaaiaKDaKEaKFaKGaKHaKIaKJabZabZabZabZaaEaKKaKAabZabZaKMabZaBbabZabZaaEaKOaaqaaqaKPaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiabAacOaaaaaaaaaaaaaaaaaaaaaaKQaKQaKQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJHaKRaKSaKTaJAaKUaJBaKUaJBaKUaJBaKUaJAaKVaKWaGdaERaKXaySaKYaKZaLaaLbaLcaLdaHhaLeaKNaKLaLhaLfaLiaLgaHnaLlaJZaJZaJZaJZaJZaJZaJZaKbaLmaHpaabaGwaLnaLoaLpaLqaLraGwaabaDOaDTaDUaLsaLtaLuaLvaLwaDUaAYaaiaaiaaiaaiaLxaGCaDWaGDaDWaGCaLyaaiaaiaaiaaiaLzaLAaLBaaqaHFaLCaLDaLDaLDaLEaLFaADabJaLGaLHabJaLIabJaLJabJaLKaxXaLLaLMaLNaaqaLOaLPaLQaLRaLRaLPaLjaLTaLTaLTaLTaLTaLkaLVaLTaLWaLXaLYaLZaMaaMbaMbaLSaMdaMeaMeaMeaMfaJwaMgaMhaMiaMjaaqaMkaMlaMmaaJaaqaMnaaqaMoaMpaMqaMraMsaMtaMuaMvaMwaMxaMyaaiaMzaMAaMBaMCaMDaMEaMFaMGaMHaMIaaaaaaaaaaaaaaaaaaaaaaKQaKQaKQaKQaKQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMJaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaIcaIhaIdaJzbpZaJBaJCaJDaJEaJFaJGaINaJAaJHaJIaEPaERaJJaySaJKaJLaJMaJNaJMaJOaJPaxCaJQaJRaJSaJTaJUaJuaJVaJXaJYaJZaJZaJZaKaaJZaJZaKbaKcaHpaaaaGwaKdaIEaKeaIGaKfaGwaaaaDOaDTaDUaKgaKhaKiaKjaKkaDUaAYaaibqabqaaFmaKlaHAaFpaKmaFpaHAaKnaFtaKoaKoaaiaKqawzaKraaqaEjazrabZabZabZabZaKsaKtaKuaKvaKwabZabZabZaaEabZabsaKxaKyaKzaJWabZaKBaaqaaqaaqaaqaaqaaqaaqaaqaaqaaqaaiaaiaaiaaiaoHaoJaaiaaiaaiaaiaaiaaiaKCaamaaiaKDaKEaKFaKGaKHaKIaKJabZabZabZabZaaEaKKaKAabZabZaKMabZaBbabZabZaaEaKOaaqaaqaKPaaiaaiaaiaaiaaiaaiaaiaaiaaiaaiabAacOaaaaaaaaaaaaaaaaaaaaaaKQaKQaKQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaJHaKRaKSaKTaJAaKUaJBaKUaJBaKUaJBaKUaJAaKVaKWaGdaERaKXaySaKYaKZaLaaLbaLcaLdaHhaLeaKNaKLaLhaLfaLiaLgaHnaLlaJZaJZaJZaJZaJZaJZaJZaKbaLmaHpaabaGwaLnaLoaLpaLqaLraGwaabaDOaDTaDUaLsaLtaLuaLvaLwaDUaAYaaiaaiaaiaaiaLxaGCaDWaGDaDWaGCaKpaaiaaiaaiaaiaLzaLAaLBaaqaHFaLCaLDaLDaLDaLEaLFaADabJaLGaLHabJaLIabJaLJabJaLKaxXaLLaLMaLNaaqaLOaLPaLQaLRaLRaLPaLjaLTaLTaLTaLTaLTaLkaLVaLTaLWaLXaLYaLZaMaaMbaMbaLSaMdaMeaMeaMeaMfaJwaMgaMhaMiaMjaaqaMkaMlaMmaaJaaqaMnaaqaMoaMpaMqaMraMsaMtaMuaMvaMwaMxaMyaaiaMzaMAaMBaMCaMDaMEaMFaMGaMHaMIaaaaaaaaaaaaaaaaaaaaaaKQaKQaKQaKQaKQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMJaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaMKaJBaJBaIeaJAaKUaJBaKUaMLaKUaJBaKUaJAaKVaKWaGdaERaMMaySaySaMNaMOaMPaMOaySaySaySaySaySaMQaMRaMSaMTaHnaMUaMVaMWaJZaJZaMXaJZaMYaMZaNaaHpaaaaGwaGwaNbaNcaNbaGwaGwaaaaDOaDTaDUaNdaNeaNfaLvaNgaDUaAYaaiaDVaDWaNhaIOaGCaDWaGDaDWaGCaIQaNiaaiaaiaaiaNjaNkaNlaNmaNnabmaaiaaiaaiaaqaNoaNpaaqaNqaHIaaqaNraaqaNsaaqaNtaLUaNvaNwaNxaNyaNzaNAaNBaNCaNDaxSaNEaNDaNDaNFaNDaNAaNGaNAaNHaNAaNAaNIaNJaNKaNLaNLaNMaNNaNOaNPaNLaNQaJtabJbNxaNSaNTaNUaNVaNWaNXaaJaNYaNZaaqaOaaObaOcaOdaMsaOeaMuaMvaMwaOfaOgaaiaOhaOiaOiaOjaMGaMGaMGaMGaMHaMIaaaaaaaaaaaaaaaaaaaKQaKQaKQaKQaKQaKQaKQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaJHaOkaKSaKTaJAaKUaJBaKUaJBaKUaJBaKUaJAaKVaKWaGdaERaMcaOmaOnaOoaOpaOqaDyaOraOsaOtaOuaNuaNRaOxaOyaOyaHnaOzaOAaOBaOCaODaOEaOFaOGaOHaOIayaaaaaabaaaaOJaOKaOJaaaaabaaaayaaDTaDUaOLaOMaOlaOOaOPaDUaAYaaiaOQaORaFmaOSaOTaFpaOUaFpaOVaOWaOXaaiaOYaOZaPaaPbaPcaPdaPeaPfaaaaaaaaiaPgaPhaPiaaqaPjaHIaHIaHIaPkaHIaHIaHIaaJaPlaPmaaqaPnaosaaqaPoaaqaaqaPpaPqaPraPsaPtaaqaPuaPvaaqaPnaaqaaqaaqaaqaPwaaqaaqaosaaqaaqaaqaaqaPxaJwaaqaPyaNTaPzaPAaPBaPCaPDaPEaPFaPGaaqaPHaPIaPJaPKaPLaOeaMuaMvaMwaPMaPNaaiaPOaOiaOiaOjaMGaMGaMGaMGaMHaMIaaaaaaaaaaaaaaaaaaaKQaKQaKQaKQaKQaKQaKQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaagaaaaaaaaaaaaaaaaJHaOkaKSaKTaJAaKUaJBaKUaJBaKUaJBaKUaJAaKVaKWaGdaERaMcaOmaOnaOoaOpaOqaDyaOraOsaOtaOuaNuaNRaOxaOyaOyaHnaOzaOAaOBaOCaODaOEaOFaOGaOHaOIayaaaaaabaaaaOJaOKaOJaaaaabaaaayaaDTaDUaOLaOMaOlaOOaOPaDUaAYaaiaHDaHEaFmaOSaOTaFpaOUaFpaOVaOWaOXaaiaOYaOZaPaaPbaPcaPdaPeaPfaaaaaaaaiaPgaPhaPiaaqaPjaHIaHIaHIaPkaHIaHIaHIaaJaPlaPmaaqaPnaosaaqaPoaaqaaqaPpaPqaPraPsaPtaaqaPuaPvaaqaPnaaqaaqaaqaaqaPwaaqaaqaosaaqaaqaaqaaqaPxaJwaaqaPyaNTaPzaPAaPBaPCaPDaPEaPFaPGaaqaPHaPIaPJaPKaPLaOeaMuaMvaMwaPMaPNaaiaPOaOiaOiaOjaMGaMGaMGaMGaMHaMIaaaaaaaaaaaaaaaaaaaKQaKQaKQaKQaKQaKQaKQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaPPaPQaIdaJzaJAaJBaJBaPRaJBaJBaPSaJBaJAaJHaPTaPUaERaPVaPWaPXaPYaPXaPXaPXaPXaPXaPZaDyaySaQaaQaaQaaQaaQaaQbaQcaQdaHnaHnaHnaHnaQbaQeaQfaQgaQhaQiaQiaQjaQkaQlaQiaQiaQmaQgaQnaQgaQoaDUaQpaQqaQraQsaQtaaiaaiaaiaaiaQuaQvaQwaQxaQwaQyaQzaaiaaiaQAaPbaPbaPbaPbaQBaOvaQDaQEaQFaaiaQGaPhaQHaaqaaqaaqaaqaaqaaqaaqaaqaaqaaJaQIaQJaQKaQLaQMaQNaQOaQPaaqaQQaQRaQSaQTaQUaaqaQVaQWaQXaQYaQXaQZaRaaRbaRcaRdaReaRfaRgaRhaRiaaqaRjaMbaRkaRlaRmaPzaRnaPBaPCaRoaaqaRpaRqaRraRsaRtaOdaOdaaqaOgaMuaMvaMwaRuaRvaaiaRwaRxaRyaRzaRAaRBaMGaMGaRCaMIaaaaaaaaaaaaaaaaKQaKQaKQaKQaKQaKQaKQaKQaKQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaPPaIdaIeaIdaIdaIfaIgaIdaIdaIeaPQaRDayaaREaPVaCyaRFaRFaRGaRFaRHaySaRIaRJaDyaRKaRLaRMaRNaROaRPaRNaRQaRNaRNaRNaRRaRNaRNaRSaRTaRUaRVaRWaRXaRVaRYaRVaRVaRVaRVaRZaSaaSbaRNaRNaScaSdaSeaSfaSgaShaSiaSjaSkaSlaSmaSmaSmaSmaSmaSmaSnaSoaSpaSqaSraSsaStaSuaSvaSwaPbaPbaSxaSyaSzaSyaSAaSBaSCaSDaSEaSFaSGaaqaSHaSIaSJaSKaSLaSLaSMaSNaSOaSPaaqaSQaSRaSSaSSaSTaaqaSUaSVaSWaSXaSYaSYaSZaTaaTbaTaaTcaTdaTeaTfaTgaaqaPxaThaaqaOwaTjaTjaTkaTlaTjaTmaaqaTnaToaaqaTpaTqaOdaTraaqaTsaTtaONaMwaOgaOgaaiaTvaaiabmafaaaiaaiaaiaaiaaiabAacOaaaaaaaaaaaaaKQaKQaKQaKQaKQaKQaKQaKQaKQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaCyaTwaTxaHcaHcaHcaHcaTyaTwaCyaHeayaaTzaTAaTBaTCaTDaTEaTEaTFaySaTGaRJaTHaTIaRLaTJaTKaTLaTMaTMaTMaTOaTOaTOaTPaTQaTQaTRaTSaTTaTMaTMaTUaTVaTWaQCaTYaTYaTZaTYaUaaTVaTVaTVaTiaSdaSeaSfaSgaSgaSgaSgaUcaSgaSgaSgaSgaSgaSgaUdaUeaUfaUgaUhaUiaUjaUkaUlaUmaUnaUnaUnaUoaUpaUpaUpaUqaSGaSGaSGaUraUsaSGaaqaUtaUuaSLaSLaUvaSLaUwaUxaSOaUyaaqaUzaUAaUBaUCaUDaaqaUEaUFaUGaUHaUIaUJaaqaUKaULaUKaaqaaqaaqaosaaqaaqaPxaJwaaqaUMaNTaNTaNTaUNaNTaUOaaqaaqaaqaaqaaqaaqaaqaUPaaqaMwaMwaMvaMwaUQaURaaqaUSaUTaUUaUVaUWaUXaUYaUZaVaaaaaaaaaaaaaaKQaKQaKQaKQaKQaKQaKQaKQaKQaKQaKQaKQaKQaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa @@ -13637,8 +13634,8 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabdVUdVVdVWdSSdVcdVXdTxdVYdTydVZdQGdWadWbdQGdWcdSWdWddWedQGdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdMwdMwdMwdMwdMwdMwdMwdMwdMwdMwdMwdMwdMwdMwaaaaaaaaaaaaaaadWfdWgdUrdUrdWhdUrdWidWjdWkdWlcNXdWndWodWpdUAdWqdWrdWsdWtdWudWvdWwdWxdWydWzdWAdWBdWCdWDdWAdWEdWBdWFdWAdWBdWGdWHdWIdWJdWKdWLdWMdWNdWOdWPdWQdWQdWRdUWdNOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabaabaabdNAdNAdQGdSVdWSdWTdWUdVWdWVdTydTzdWWdOgdQfdWXdQGdWcdRSdSWdWedQGdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdMwdMwdMwdMwdWYdWYdWYdWYdWYdWYdMwdMwdMwdMwdMwdMwdMwaaaaaaaaaaaadWZdXadUrdXbdXcdXddXedXfdXgdXhdXidXjdXkdXldUAdXmdXndXodXpdXpdXpdXpdXqdXrdXsdXtdXrdXudXvdXwdXudXxdXydXzdXxdXxdXAdXBdXCdXDdUWdXEdXFdUWdXGdWQdWQdXHdUWdNOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdQGdQGdQGdQGdQGdQGdSUdTydXIdWSdTydVddXJdWWdWWdTBdSWdWadQGdWcdRmdXKdWedQGdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdMwdMwdWYdWYdWYdXLdXLdXLdXLdWYdWYdWYdMwdMwdMwdMwdXMdXNaaaaaaaaadXOdXPdTFdXQdXRdXRdXRdXRdXSdXTdXUdNsdXVdXVdUAdXWdXpdXXdXpdXYdXZdYadYbdXrdYcdYddYedXudYfdYgdYhdXxdYidYjdYkdXxdYldYmdXCdYndYodUWdUWdUWdYpdYqdYrdVTdUWdNOaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdQGdYsdQfdTzdYtdQGdYudYvdYwdQGdVedQGdYxdYydYzdQGdQfdYAdOJdYBdRmdRRdOJdQGdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdMwdMwdMwdWYdWYdXLdXLdXLdXLdXLdXLdXLdXLdWYdWYdMwdMwdYCdYDcMucMudMBcMudNRdNSaabaabdYEdYFdYGdYHdYIdYJdYKdYLdYMdYNdYOdYPdYQdYRdYSdYTdYUdYVdYWdXrcNYdYYdYZdXucOhdZbdZcdXxcOgdZedZfdXxdZgdZhdZidZjdZkdZldZmdUWdUWdUWdUWdUWdZndNBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadNAdQGdYsdRmdQfdTxdVedYAdWSdQfdWSdRRdQfdQfdZodSWdQfdRmdRmdQGdOJdZpdRmdQfdQGdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdMwdMwdWYdWYdXLdXLdXLdXLdXLdXLdXLdXLdXLdXLdWYdWYdZqdZrdZsdMwaaaaaaaaaaaaaaaaaaaabdYEdZtdZudZvdZwdZxdZydZzdXVdZAdZBdUAdXpdXXdXpdZCdXpdZDdZEdXrdZFdZGdZHdXudZIdZJdZKdXxdZLdZMdZNdXxdZOdZPdZQdZRdZSdZSdZTdYodZUdMAcMucMudZVdZWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabdQGdYsdQfdTzdYtdQGdYudYvdYwdQGdVedQGdYxdYydYzdQGdQfdYAdOJdYBdRmdRRdOJdQGdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdMwdMwdMwdWYdWYdXLdXLdXLdXLdXLdXLdXLdXLdWYdWYdMwdMwdYCdYDcMucMudMBcMudNRdNSaabaabdYEdYFdYGaOQdYIdYJdYKdYLdYMdYNdYOdYPdYQdYRdYSdYTdYUdYVdYWdXrcNYdYYdYZdXucOhdZbdZcdXxcOgdZedZfdXxdZgdZhdZidZjdZkdZldZmdUWdUWdUWdUWdUWdZndNBaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadNAdQGdYsdRmdQfdTxdVedYAdWSdQfdWSdRRdQfdQfdZodSWdQfdRmdRmdQGdOJdZpdRmdQfdQGdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdMwdMwdWYdWYdXLdXLdXLdXLdXLdXLdXLdXLdXLdXLdWYdWYdZqdZrdZsdMwaaaaaaaaaaaaaaaaaaaabdYEdZtdZuaLydZwdZxdZydZzdXVdZAdZBdUAdXpdXXdXpdZCdXpdZDdZEdXrdZFdZGdZHdXudZIdZJdZKdXxdZLdZMdZNdXxdZOdZPdZQdZRdZSdZSdZTdYodZUdMAcMucMudZVdZWaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadNAdNAdQGdYsdZXdRmdRmdVedRmdXKdSxdRmdZYdRRdXKdWXdOJdRmdZZdRSdQGdWSdOJdYAdQfdQGdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdMwdWYeaadXLdXLdXLdXLdXLdXLdXLdXLdXLdXLdXLeabdWYeaceaddWYdWYaaaaaaaaaaaaaaaaaaaabdYEeaeeafeageaheagcPueajdXVdXVeakdUAealeameaneaodXpeapeaqdXreareaseatdXueaueaveawdXxeaxeayeazdXxeaAeaBdYoeaCeaDeaEeaDdYoeaFeaGdNAaabaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadNAdNAdNAdQGdYseaHdTxdSUdQGeaIdQGeaJeaKdQGdTzdQGeaJeaKdQGdTydYAdQGdZodVgdOJdWadQGdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdMwdWYeaLdXLdXLdXLdXLdXLdXLdXLdXLdXLdXLdXLeaMeaaeaNeaadWYaaaaaaaaaaaaaaaaaaaaaaabdYEeaOeajeajeaPeaQeaReajeaSdXVeaTdUAeaUeaUeaUeaUdXpeaVdYVdXreaWeaXeaYdXueaZebaebbdXxebcebdebedXxebfebgebhdYodYodYodYoebiebjdMwdNAdNAdNAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadNAdNAdNAdNAdNAdNAdQGdQGdQGdQGdQGdQGeaIdQGebkdSWdTzdWadRSdTydWVdTydVgdTxdQGeaJeblebmebndQGdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdNAdMwdWYeabdXLdXLdXLdXLdXLdXLdXLdXLdXLdXLdXLdXLeboebpebqaaaaaaaaaaaaaaaaaaaaaaabaabdYEebrebrebsebtebuebvebwebxdXVebydUAdXLdXLdXLdXLdXpebzebAdXrebBebCebDdXuebEebFebGdXxebHebIebJdXxebKebLebhdMwdNAdMwebMebNebOdMwdNAdNAdNAaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa diff --git a/paradise.dme b/paradise.dme index 6407ea038b9..a790a81d85a 100644 --- a/paradise.dme +++ b/paradise.dme @@ -49,6 +49,7 @@ #define FILE_DIR "icons/obj/clothing/species/skrell" #define FILE_DIR "icons/obj/clothing/species/tajaran" #define FILE_DIR "icons/obj/clothing/species/unathi" +#define FILE_DIR "icons/obj/clothing/species/vox" #define FILE_DIR "icons/obj/doors" #define FILE_DIR "icons/obj/flora" #define FILE_DIR "icons/obj/machines"