diff --git a/code/modules/goonchat/browserassets/css/browserOutput.css b/code/modules/goonchat/browserassets/css/browserOutput.css index 2a882cf95966b..dd7ce7609c9ff 100644 --- a/code/modules/goonchat/browserassets/css/browserOutput.css +++ b/code/modules/goonchat/browserassets/css/browserOutput.css @@ -405,3 +405,16 @@ h1.alert, h2.alert {color: #a4bad6;} .ml-1 {margin-left: 1em;} .ml-2 {margin-left: 2em;} .ml-3 {margin-left: 3em;} + + + + + +/************** + SierraBay +**************/ + +/* Languages */ +.german {color: #4d5d53;} +.lirris {color: #023638;} +.alain {color: #6a1b9a;} diff --git a/code/modules/goonchat/browserassets/css/browserOutput_white.css b/code/modules/goonchat/browserassets/css/browserOutput_white.css index 7019c57c81de3..f4924e187c0dd 100644 --- a/code/modules/goonchat/browserassets/css/browserOutput_white.css +++ b/code/modules/goonchat/browserassets/css/browserOutput_white.css @@ -402,3 +402,16 @@ h1.alert, h2.alert {color: #000080;} .ml-1 {margin-left: 1em;} .ml-2 {margin-left: 2em;} .ml-3 {margin-left: 3em;} + + + + + +/************** + SierraBay +**************/ + +/* Languages */ +.german {color: #4d5d53;} +.lirris {color: #023638;} +.alain {color: #6a1b9a;} diff --git a/maps/sierra/items/weapons/storage/boxes.dm b/maps/sierra/items/weapons/storage/boxes.dm index b9a9c4c718a6a..9e6270c9dff1e 100644 --- a/maps/sierra/items/weapons/storage/boxes.dm +++ b/maps/sierra/items/weapons/storage/boxes.dm @@ -7,12 +7,6 @@ /obj/item/device/radio/off = 1, /obj/item/reagent_containers/food/snacks/liquidfood = 2) -/obj/item/storage/box/holobombs - name = "box of holobombs" - desc = "A box containing 5 experimental holobombs." - icon_state = "flashbang" - startswith = list(/obj/item/device/holobomb = 5, /obj/item/paper/holobomb = 1) - /obj/item/storage/box/smokeshells name = "box of smoke shells" desc = "A box containing 5 military grade smoke shells." diff --git a/maps/sierra/loadout/loadout_uniform.dm b/maps/sierra/loadout/loadout_uniform.dm index 5532ae3eb3fa9..a506e0c784d77 100644 --- a/maps/sierra/loadout/loadout_uniform.dm +++ b/maps/sierra/loadout/loadout_uniform.dm @@ -11,10 +11,12 @@ /datum/gear/uniform/hazard allowed_roles = TECHNICAL_ROLES +/* SIERRA TO DO: watch for contractors uniforms, may be in mods /datum/gear/uniform/corpsi display_name = "contractor uniform selection" path = /obj/item/clothing/under/solgov/utility allowed_branches = list(/datum/mil_branch/contractor) +*/ /datum/gear/uniform/si_guard display_name = "NanoTrasen guard uniform" diff --git a/mods/antagonists/code/traitor.dm b/mods/antagonists/code/traitor.dm index f9ae9618aa482..15331e19b5362 100644 --- a/mods/antagonists/code/traitor.dm +++ b/mods/antagonists/code/traitor.dm @@ -131,3 +131,96 @@ item_cost = 50 path = /obj/item/clothing/head/helmet/space/psi_amp/lesser desc = "A powerful, illegal psi-amp. Boosts latent psi-faculties to extremely high levels." + +// +// HOLOBOMBS +// + +/obj/item/device/holobomb + name = "holobomb" + desc = "A small explosive charge with a holoprojector designed to disable the curious guards." + icon = 'mods/antagonists/icons/obj/holobomb.dmi' + icon_state = "minibomb" + item_state = "nothing" + slot_flags = SLOT_EARS + w_class = ITEM_SIZE_SMALL + var/active = FALSE + var/mode = 0 + +/obj/item/device/holobomb/afterattack(obj/item/target, mob/user , proximity) + if(!proximity) + return + if(!target) + return + if(target.w_class <= w_class) + name = target.name + desc = target.desc + icon = target.icon + color = target.color + icon_state = target.icon_state + active = TRUE + to_chat(user, "\The [src] is now active.") + playsound(get_turf(src), 'sound/weapons/flash.ogg', 100, 1, -6) + update_icon() + else + to_chat(user, "\The [target] is too big for \the [src] hologramm") + +/obj/item/device/holobomb/attack_self(mob/user) + trigger(user) + +/obj/item/device/holobomb/emp_act() + ..() + trigger() + +/obj/item/device/holobomb/attack_hand(mob/user) + . = ..() + if(!mode) + trigger(user) + +/obj/item/device/holobomb/proc/switch_mode(mob/user) + mode = !mode + if(mode) + to_chat(user, "Mode 1.Now \the [src] will explode upon activation.") + else + to_chat(user, "Mode 2. Now \the [src] will explode as soon as they pick it up or upon activation.") + +/obj/item/device/holobomb/proc/trigger(mob/user) + if(!active) + switch_mode(user) + return + if(!ishuman(user)) + return + var/mob/living/carbon/human/H = user + if(!user) + return + var/obj/item/organ/external/O = H.get_organ(pick(BP_L_HAND, BP_R_HAND)) + if(!O) + return + + var/dam = rand(35, 45) + H.visible_message("\The [src] in \the [H]'s hand explodes with a loud bang!") + H.apply_damage(dam, DAMAGE_BRUTE, O, damage_flags = DAMAGE_FLAG_SHARP, used_weapon = "explode") + explosion(src.loc, 0,0,1,1) + H.Stun(5) + qdel(src) + +/obj/item/paper/holobomb + name = "instruction" + info = "Бомба имеет два режима. В первом она взрывается при попытке \"ипользовать\" её, во втором при прикосновении. Для начала работы с бомбой выберете режим и просканируйте нужный вам небольшой предмет. Всё, бомба взведена, удачи! И помните, после активации режим бомбы лучше не менять." + +/obj/item/storage/box/syndie_kit/holobombs + name = "box of holobombs" + desc = "A box containing 5 experimental holobombs." + icon_state = "flashbang" + startswith = list(/obj/item/device/holobomb = 5, /obj/item/paper/holobomb = 1) + +// +// Holobombs - Uplink part +// + +/datum/uplink_item/item/tools/holobomb + name = "Box of holobombs" + item_cost = 32 + path =/obj/item/storage/box/syndie_kit/holobombs + desc = "Contains 5 holobomb and instruction. \ + A bomb that changes appearance, and can destroy some hands." diff --git a/mods/antagonists/icons/obj/holobomb.dmi b/mods/antagonists/icons/obj/holobomb.dmi new file mode 100644 index 0000000000000..b938a05e136c2 Binary files /dev/null and b/mods/antagonists/icons/obj/holobomb.dmi differ diff --git a/mods/loadout_items/_loadout_items.dme b/mods/loadout_items/_loadout_items.dme index 9da54a326ad20..132e4e54d6d70 100644 --- a/mods/loadout_items/_loadout_items.dme +++ b/mods/loadout_items/_loadout_items.dme @@ -5,7 +5,9 @@ #include "code/cloak.dm" #include "code/gloves.dm" #include "code/shoes.dm" +#include "code/uniforms.dm" #include "code/lists/cloaks.dm" +#include "code/lists/uniforms.dm" #include "code/lists/xenowear.dm" #endif diff --git a/mods/loadout_items/code/lists/uniforms.dm b/mods/loadout_items/code/lists/uniforms.dm new file mode 100644 index 0000000000000..03bdafb110470 --- /dev/null +++ b/mods/loadout_items/code/lists/uniforms.dm @@ -0,0 +1,15 @@ +/datum/gear/uniform/pmc //Some of that is duplicate of standart Torch uniforms selection. But who cares. + display_name = "PMC uniform selection" + allowed_roles = list(/datum/job/detective, /datum/job/officer, /datum/job/hos) + path = /obj/item/clothing/under + +/datum/gear/uniform/pmc/New() + ..() + var/pmc = list() + pmc["SAARE utility uniform"]= /obj/item/clothing/under/saare + pmc["SAARE combat uniform"]= /obj/item/clothing/under/rank/security/saarecombat + pmc["PCRC utility uniform"] = /obj/item/clothing/under/pcrc + pmc["PCRC formal uniform"] = /obj/item/clothing/under/pcrcsuit + pmc["SCP utility uniform"] = /obj/item/clothing/under/scp_uniform + pmc["ZPCI utility uniform"] = /obj/item/clothing/under/zpci_uniform + gear_tweaks += new/datum/gear_tweak/path(pmc) diff --git a/mods/loadout_items/code/uniforms.dm b/mods/loadout_items/code/uniforms.dm new file mode 100644 index 0000000000000..7d21f014e5105 --- /dev/null +++ b/mods/loadout_items/code/uniforms.dm @@ -0,0 +1,32 @@ +/obj/item/clothing/under/scp_uniform + name = "SCP guard uniform" + desc = "It's dark grey uniform made of a slightly sturdier material than standard jumpsuits, to allow for good protection.\nThis uniform has SCP tags on shoulders, terran organization of NT asset protection." + icon = 'mods/loadout_items/icons/obj_under.dmi' + item_icons = list(slot_w_uniform_str = 'mods/loadout_items/icons/onmob_under.dmi') + icon_state = "scp_uniform" + item_state = "scp_uniform" + worn_state = "scp_uniform" + armor = list(melee = 10, bullet = 5, laser = 5,energy = 0, bomb = 0, bio = 0, rad = 0) + siemens_coefficient = 0.9 + +/obj/item/clothing/under/zpci_uniform + name = "ZPCI uniform" + desc = "This is a standard model of the ZPCI uniform." + icon = 'mods/loadout_items/icons/obj_under.dmi' + item_icons = list(slot_w_uniform_str = 'mods/loadout_items/icons/onmob_under.dmi') + icon_state = "zpci_uniform" + item_state = "zpci_uniform" + armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) //it's security uniform's stats + siemens_coefficient = 0.9 + +/obj/item/clothing/under/rank/security/saarecombat + name = "\improper SAARE combat uniform" + desc = "Tight-fitting dark uniform with a bright-green SAARE patch on the shoulder. The perfect outfit in which to kick doors out and teeth in." + icon = 'mods/loadout_items/icons/obj_under.dmi' + item_icons = list(slot_w_uniform_str = 'mods/loadout_items/icons/onmob_under.dmi') + icon_state = "saarecombat" + item_state = "saarecombat" + worn_state = "saarecombat" + gender_icons = 1 + +// SIERRA TO DO: Cleanup icons from unused loadout diff --git a/mods/loadout_items/icons/obj_under.dmi b/mods/loadout_items/icons/obj_under.dmi new file mode 100644 index 0000000000000..851673d868b23 Binary files /dev/null and b/mods/loadout_items/icons/obj_under.dmi differ diff --git a/mods/loadout_items/icons/onmob_under.dmi b/mods/loadout_items/icons/onmob_under.dmi new file mode 100644 index 0000000000000..1369299873065 Binary files /dev/null and b/mods/loadout_items/icons/onmob_under.dmi differ