This commit is contained in:
Ghommie
2020-02-22 00:55:32 +01:00
1009 changed files with 20505 additions and 13193 deletions
+44 -1
View File
@@ -488,4 +488,47 @@
if(client && client.prefs.uses_glasses_colour && glasses_equipped)
add_client_colour(G.glass_colour_type)
else
remove_client_colour(G.glass_colour_type)
remove_client_colour(G.glass_colour_type)
/obj/item/clothing/glasses/debug
name = "debug glasses"
desc = "Medical, security and diagnostic hud. Alt click to toggle xray."
icon_state = "nvgmeson"
item_state = "nvgmeson"
flags_cover = GLASSESCOVERSEYES
darkness_view = 8
flash_protect = 2
lighting_alpha = LIGHTING_PLANE_ALPHA_MOSTLY_INVISIBLE
glass_colour_type = FALSE
clothing_flags = SCAN_REAGENTS
vision_flags = SEE_TURFS
var/list/hudlist = list(DATA_HUD_MEDICAL_ADVANCED, DATA_HUD_DIAGNOSTIC_ADVANCED, DATA_HUD_SECURITY_ADVANCED)
var/xray = FALSE
/obj/item/clothing/glasses/debug/equipped(mob/user, slot)
. = ..()
if(slot != ITEM_SLOT_EYES)
return
if(ishuman(user))
for(var/hud in hudlist)
var/datum/atom_hud/H = GLOB.huds[hud]
H.add_hud_to(user)
/obj/item/clothing/glasses/debug/dropped(mob/user)
. = ..()
if(ishuman(user))
for(var/hud in hudlist)
var/datum/atom_hud/H = GLOB.huds[hud]
H.remove_hud_from(user)
/obj/item/clothing/glasses/debug/AltClick(mob/user)
. = ..()
if(ishuman(user))
if(xray)
vision_flags -= SEE_MOBS|SEE_OBJS
else
vision_flags += SEE_MOBS|SEE_OBJS
xray = !xray
var/mob/living/carbon/human/H = user
H.update_sight()
+2
View File
@@ -11,6 +11,8 @@
var/transfer_blood = 0
strip_delay = 20
equip_delay_other = 40
var/strip_mod = 1 //how much they alter stripping items time by, higher is quicker
var/strip_silence = FALSE //if it shows a warning when stripping
/obj/item/clothing/gloves/ComponentInitialize()
. = ..()
+1
View File
@@ -5,6 +5,7 @@
item_state = "boxing"
equip_delay_other = 60
species_exception = list(/datum/species/golem) // now you too can be a golem boxing champion
strip_mod = 0.5
/obj/item/clothing/gloves/boxing/green
icon_state = "boxinggreen"
+2
View File
@@ -41,6 +41,7 @@
permeability_coefficient = 1
resistance_flags = NONE
transfer_prints = TRUE
strip_mod = 0.8
/obj/item/clothing/gloves/cut/family
desc = "The old gloves your great grandfather stole from Engineering, many moons ago. They've seen some tough times recently."
@@ -76,6 +77,7 @@
max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT
resistance_flags = NONE
var/can_be_cut = 1
strip_mod = 1.2
/obj/item/clothing/gloves/color/black/hos
item_color = "hosred" //Exists for washing machines. Is not different from black gloves in any way.
@@ -10,6 +10,7 @@
equip_delay_other = 20
cold_protection = HANDS
min_cold_protection_temperature = GLOVES_MIN_TEMP_PROTECT
strip_mod = 0.9
/obj/item/clothing/gloves/botanic_leather
name = "botanist's leather gloves"
@@ -23,6 +24,7 @@
max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT
resistance_flags = NONE
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 70, "acid" = 30)
strip_mod = 0.9
/obj/item/clothing/gloves/combat
name = "combat gloves"
@@ -38,6 +40,7 @@
max_heat_protection_temperature = GLOVES_MAX_TEMP_PROTECT
resistance_flags = NONE
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 50)
strip_mod = 1.5
/obj/item/clothing/gloves/bracer
@@ -103,3 +106,15 @@
/obj/item/clothing/gloves/rapid/hug/attack_self(mob/user)
return FALSE
/obj/item/clothing/gloves/thief
name = "black gloves"
desc = "Gloves made with completely frictionless, insulated cloth, easier to steal from people with."
icon_state = "thief"
item_state = "blackgloves"
siemens_coefficient = 0
permeability_coefficient = 0.05
strip_delay = 80
transfer_prints = FALSE
strip_mod = 5
strip_silence = TRUE
+7 -1
View File
@@ -5,6 +5,7 @@
w_class = WEIGHT_CLASS_TINY
icon = 'icons/obj/ring.dmi'
icon_state = "ringgold"
item_state = "gring"
body_parts_covered = 0
attack_verb = list("proposed")
transfer_prints = TRUE
@@ -17,10 +18,15 @@
/obj/item/clothing/gloves/ring/diamond
name = "diamond ring"
desc = "A tiny gold ring, studded with a diamond. Cultures have used these rings in courtship for a millenia."
desc = "An expensive ring, studded with a diamond. Cultures have used these rings in courtship for a millenia."
icon_state = "ringdiamond"
item_state = "dring"
/obj/item/clothing/gloves/ring/diamond/attack_self(mob/user)
user.visible_message("<span class='warning'>\The [user] gets down on one knee, presenting \the [src].</span>","<span class='warning'>You get down on one knee, presenting \the [src].</span>")
/obj/item/clothing/gloves/ring/silver
name = "silver ring"
desc = "A tiny silver ring, sized to wrap around a finger."
icon_state = "ringsilver"
item_state = "sring"
+6
View File
@@ -39,6 +39,12 @@
/obj/item/clothing/mask/gas/welding/attack_self(mob/user)
weldingvisortoggle(user)
/obj/item/clothing/mask/gas/welding/up
/obj/item/clothing/mask/gas/welding/up/Initialize()
..()
visor_toggling()
// ********************************************************************
+23 -10
View File
@@ -272,7 +272,7 @@
/datum/outfit/wizard
name = "Blue Wizard"
uniform = /obj/item/clothing/under/color/lightpurple
uniform = /obj/item/clothing/under/color/lightpurple/trackless
suit = /obj/item/clothing/suit/wizrobe
shoes = /obj/item/clothing/shoes/sandal/magic
ears = /obj/item/radio/headset
@@ -427,14 +427,27 @@
/datum/outfit/debug //Debug objs plus hardsuit
name = "Debug outfit"
uniform = /obj/item/clothing/under/patriotsuit
suit = /obj/item/clothing/suit/space/hardsuit/syndi/elite
shoes = /obj/item/clothing/shoes/magboots/advance
suit_store = /obj/item/tank/internals/oxygen
mask = /obj/item/clothing/mask/gas/welding
belt = /obj/item/storage/belt/utility/chief/full
gloves = /obj/item/clothing/gloves/combat
id = /obj/item/card/id/ert
glasses = /obj/item/clothing/glasses/meson/night
suit = /obj/item/clothing/suit/space/hardsuit/syndi/elite/debug
glasses = /obj/item/clothing/glasses/debug
ears = /obj/item/radio/headset/headset_cent/commander
mask = /obj/item/clothing/mask/gas/welding/up
gloves = /obj/item/clothing/gloves/combat
belt = /obj/item/storage/belt/utility/chief/full
l_pocket = /obj/item/gun/magic/wand/resurrection/debug
r_pocket = /obj/item/gun/magic/wand/death/debug
shoes = /obj/item/clothing/shoes/magboots/advance/debug
id = /obj/item/card/id/debug
suit_store = /obj/item/tank/internals/oxygen
back = /obj/item/storage/backpack/holding
backpack_contents = list(/obj/item/card/emag=1, /obj/item/flashlight/emp/debug=1, /obj/item/construction/rcd/combat=1, /obj/item/gun/magic/wand/resurrection/debug=1, /obj/item/melee/transforming/energy/axe=1)
box = /obj/item/storage/box/debugtools
internals_slot = ITEM_SLOT_SUITSTORE
backpack_contents = list(
/obj/item/melee/transforming/energy/axe=1,\
/obj/item/storage/part_replacer/bluespace/tier4=1,\
/obj/item/debug/human_spawner=1,\
)
/datum/outfit/debug/post_equip(mob/living/carbon/human/H, visualsOnly = FALSE)
var/obj/item/card/id/W = H.wear_id
W.registered_name = H.real_name
W.update_label()
+37 -2
View File
@@ -30,8 +30,9 @@
magpulse = !magpulse
icon_state = "[magboot_state][magpulse]"
to_chat(user, "<span class='notice'>You [magpulse ? "enable" : "disable"] the mag-pulse traction system.</span>")
user.update_inv_shoes() //so our mob-overlays update
user.update_gravity(user.has_gravity())
if(user)
user.update_inv_shoes() //so our mob-overlays update
user.update_gravity(user.has_gravity())
for(var/X in actions)
var/datum/action/A = X
A.UpdateButtonIcon()
@@ -52,8 +53,42 @@
slowdown_active = SHOES_SLOWDOWN
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF
/obj/item/clothing/shoes/magboots/advance/debug
/obj/item/clothing/shoes/magboots/advance/debug/Initialize()
attack_self(src)
/obj/item/clothing/shoes/magboots/syndie
desc = "Reverse-engineered magnetic boots that have a heavy magnetic pull. Property of Gorlex Marauders."
name = "blood-red magboots"
icon_state = "syndiemag0"
magboot_state = "syndiemag"
/obj/item/clothing/shoes/magboots/crushing
desc = "Normal looking magboots that are altered to increase magnetic pull to crush anything underfoot."
/obj/item/clothing/shoes/magboots/crushing/proc/crush(mob/living/user)
if (!isturf(user.loc) || !magpulse)
return
var/turf/T = user.loc
for (var/mob/living/A in T)
if (A != user && A.lying)
A.adjustBruteLoss(rand(10,13))
to_chat(A,"<span class='userdanger'>[user]'s magboots press down on you, crushing you!</span>")
A.emote("scream")
/obj/item/clothing/shoes/magboots/crushing/attack_self(mob/user)
. = ..()
if (magpulse)
RegisterSignal(user, COMSIG_MOVABLE_MOVED,.proc/crush)
else
UnregisterSignal(user,COMSIG_MOVABLE_MOVED)
/obj/item/clothing/shoes/magboots/crushing/equipped(mob/user,slot)
. = ..()
if (slot == SLOT_SHOES && magpulse)
RegisterSignal(user, COMSIG_MOVABLE_MOVED,.proc/crush)
/obj/item/clothing/shoes/magboots/crushing/dropped(mob/user)
. = ..()
UnregisterSignal(user,COMSIG_MOVABLE_MOVED)
+10 -1
View File
@@ -269,7 +269,7 @@
item_state = "syndie_helm"
item_color = "syndi"
armor = list("melee" = 40, "bullet" = 50, "laser" = 30, "energy" = 15, "bomb" = 35, "bio" = 100, "rad" = 50, "fire" = 50, "acid" = 90)
on = TRUE
on = FALSE
var/obj/item/clothing/suit/space/hardsuit/syndi/linkedsuit = null
actions_types = list(/datum/action/item_action/toggle_helmet_mode)
visor_flags_inv = HIDEMASK|HIDEEYES|HIDEFACE|HIDEFACIALHAIR
@@ -367,6 +367,12 @@
on = FALSE
resistance_flags = FIRE_PROOF | ACID_PROOF
/obj/item/clothing/head/helmet/space/hardsuit/syndi/elite/debug
/obj/item/clothing/head/helmet/space/hardsuit/syndi/elite/debug/Initialize()
. = ..()
soundloop.volume = 0
/obj/item/clothing/suit/space/hardsuit/syndi/elite
name = "elite syndicate hardsuit"
desc = "An elite version of the syndicate hardsuit, with improved armour and fireproofing. It is in travel mode."
@@ -380,6 +386,9 @@
resistance_flags = FIRE_PROOF | ACID_PROOF
mutantrace_variation = STYLE_DIGITIGRADE|STYLE_SNEK_TAURIC|STYLE_PAW_TAURIC
/obj/item/clothing/suit/space/hardsuit/syndi/elite/debug
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/syndi/elite/debug
slowdown = 0
//The Owl Hardsuit
/obj/item/clothing/head/helmet/space/hardsuit/syndi/owl
+24 -1
View File
@@ -15,6 +15,13 @@
if(!allowed)
allowed = GLOB.security_vest_allowed
/obj/item/clothing/suit/armor/navyblue
name = "security officer's jacket"
desc = "This jacket is for those special occasions when a security officer isn't required to wear their armor."
icon_state = "officerbluejacket"
item_state = "officerbluejacket"
body_parts_covered = CHEST|ARMS
/obj/item/clothing/suit/armor/vest
name = "armor vest"
desc = "A slim Type I armored vest that provides decent protection against most types of damage."
@@ -52,8 +59,17 @@
heat_protection = CHEST|GROIN|LEGS|ARMS
strip_delay = 80
/obj/item/clothing/suit/armor/hos/navyblue
name = "head of security's jacket"
desc = "This piece of clothing was specifically designed for asserting superior authority."
icon_state = "hosbluejacket"
item_state = "hosbluejacket"
body_parts_covered = CHEST|ARMS
cold_protection = CHEST|ARMS
heat_protection = CHEST|ARMS
/obj/item/clothing/suit/armor/hos/trenchcoat
name = "armored trenchoat"
name = "armored trenchcoat"
desc = "A trenchcoat enhanced with a special lightweight kevlar. The epitome of tactical plainclothes."
icon_state = "hostrench"
item_state = "hostrench"
@@ -78,6 +94,13 @@
desc = "A red jacket with silver rank pips and body armor strapped on top."
icon_state = "warden_jacket"
/obj/item/clothing/suit/armor/vest/warden/navyblue
name = "warden's jacket"
desc = "Perfectly suited for the warden that wants to leave an impression of style on those who visit the brig."
icon_state = "wardenbluejacket"
item_state = "wardenbluejacket"
body_parts_covered = CHEST|ARMS
/obj/item/clothing/suit/armor/vest/leather
name = "security overcoat"
desc = "Lightly armored leather overcoat meant as casual wear for high-ranking officers. Bears the crest of Nanotrasen Security."
-22
View File
@@ -155,28 +155,6 @@
blood_overlay_type = "armor" //it's the less thing that I can put here
body_parts_covered = NONE
//Security
/obj/item/clothing/suit/security/officer
name = "security officer's jacket"
desc = "This jacket is for those special occasions when a security officer isn't required to wear their armor."
icon_state = "officerbluejacket"
item_state = "officerbluejacket"
body_parts_covered = CHEST|ARMS
/obj/item/clothing/suit/security/warden
name = "warden's jacket"
desc = "Perfectly suited for the warden that wants to leave an impression of style on those who visit the brig."
icon_state = "wardenbluejacket"
item_state = "wardenbluejacket"
body_parts_covered = CHEST|ARMS
/obj/item/clothing/suit/security/hos
name = "head of security's jacket"
desc = "This piece of clothing was specifically designed for asserting superior authority."
icon_state = "hosbluejacket"
item_state = "hosbluejacket"
body_parts_covered = CHEST|ARMS
//Surgeon
/obj/item/clothing/suit/apron/surgical
name = "surgical apron"
+6 -7
View File
@@ -317,7 +317,7 @@
flags_cover = HEADCOVERSEYES
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE|HIDEHAIR|HIDEFACIALHAIR
/obj/item/clothing/suit/security/officer/russian
/obj/item/clothing/suit/armor/navyblue/russian
name = "\improper Russian officer's jacket"
desc = "This jacket is for those special occasions when a russian officer isn't required to wear their armor."
icon_state = "officertanjacket"
@@ -325,17 +325,16 @@
body_parts_covered = CHEST|ARMS
/obj/item/clothing/suit/ran
name = "Shikigami costume"
name = "shikigami costume"
desc = "A costume that looks like a certain shikigami, is super fluffy."
icon_state = "ran_suit"
item_state = "ran_suit"
body_parts_covered = CHEST|GROIN|LEGS
flags_inv = HIDEJUMPSUIT|HIDETAUR
heat_protection = CHEST|GROIN|LEGS //fluffy tails!
//2061
/obj/item/clothing/head/ran
name = "Shikigami hat"
name = "shikigami hat"
desc = "A hat that looks like it keeps any fluffy ears contained super warm, has little charms over it."
icon_state = "ran_hat"
item_state = "ran_hat"
@@ -704,8 +703,9 @@
name = "cosmic winter coat"
icon_state = "coatcosmic"
item_state = "coatcosmic"
allowed = list(/obj/item/flashlight)
hoodtype = /obj/item/clothing/head/hooded/winterhood/cosmic
light_power = 1.8
light_range = 1.2
/obj/item/clothing/head/hooded/winterhood/cosmic
icon_state = "winterhood_cosmic"
@@ -880,7 +880,6 @@
blood_overlay_type = "armor"
body_parts_covered = CHEST
resistance_flags = NONE
mutantrace_variation = NONE
armor = list("melee" = 0, "bullet" = 0, "laser" = 0,"energy" = 0, "bomb" = 5, "bio" = 0, "rad" = 0, "fire" = -5, "acid" = -15) //nylon sucks against acid
/obj/item/clothing/suit/assu_suit
@@ -996,4 +995,4 @@
tertiary_color = sanitize_hexcolor(tertiary_color_input, desired_format=6, include_crunch=1)
update_icon()
user.regenerate_icons()
return TRUE
return TRUE
+17 -7
View File
@@ -215,14 +215,24 @@
playsound(get_turf(owner),'sound/magic/repulse.ogg', 100, 1)
owner.visible_message("<span class='danger'>[src] blocks [attack_text], converting the attack into a wave of force!</span>")
var/turf/T = get_turf(owner)
var/list/thrown_items = list()
for(var/atom/movable/A in range(T, 7))
if(A == owner || A.anchored || thrown_items[A])
var/list/cachedrange = range(T, 7) - owner
var/safety = 50
var/list/to_throw = list()
for(var/mob/living/L in cachedrange)
if(L.move_resist > MOVE_FORCE_EXTREMELY_STRONG)
continue
var/throwtarget = get_edge_target_turf(T, get_dir(T, get_step_away(A, T)))
A.throw_at(throwtarget,10,1)
thrown_items[A] = A
to_throw += L
for(var/obj/O in cachedrange)
if(O.anchored)
continue
to_throw += O
for(var/i in to_throw)
if(!safety)
break
var/atom/movable/AM = i
var/throwtarget = get_edge_target_turf(T, get_dir(T, get_step_away(AM, T)))
AM.throw_at(throwtarget,10,1)
safety--
reactivearmor_cooldown = world.time + reactivearmor_cooldown_duration
return 1
+8 -1
View File
@@ -41,6 +41,10 @@
item_color = "black"
resistance_flags = NONE
/obj/item/clothing/under/color/black/trackless
desc = "A black jumpsuit that has its sensors removed."
has_sensor = NO_SENSORS
/obj/item/clothing/under/skirt/color/black
name = "black jumpskirt"
icon_state = "black_skirt"
@@ -189,13 +193,16 @@
item_state = "b_suit"
item_color = "teal_skirt"
/obj/item/clothing/under/color/lightpurple
name = "purple jumpsuit"
icon_state = "lightpurple"
item_state = "p_suit"
item_color = "lightpurple"
/obj/item/clothing/under/color/lightpurple/trackless
desc = "A magically colored jumpsuit. No sensors are attached!"
has_sensor = NO_SENSORS
/obj/item/clothing/under/skirt/color/lightpurple
name = "lightpurple jumpskirt"
icon_state = "lightpurple_skirt"