Merge branch 'master' into cm13-pain-emote

This commit is contained in:
dzahlus
2021-02-11 23:42:42 +01:00
108 changed files with 988 additions and 188 deletions

View File

@@ -537,4 +537,9 @@
path = /obj/item/clothing/suit/custom/exo
ckeywhitelist = list("jesterz7")
/datum/gear/donator/choker
name = "NT Choker"
slot = SLOT_NECK
path = /obj/item/clothing/neck/petcollar/choker
ckeywhitelist = list("trigillass")

View File

@@ -159,6 +159,11 @@
path = /obj/item/clothing/suit/jacket/miljacket
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
/datum/gear/suit/urbanjacket
name = "Urban Jacket"
path = /obj/item/clothing/suit/jacket/urbanjacket
subcategory = LOADOUT_SUBCATEGORY_SUIT_JACKETS
/datum/gear/suit/ianshirt
name = "Ian Shirt"
path = /obj/item/clothing/suit/ianshirt

View File

@@ -32,6 +32,10 @@
name = "Tan suit"
path = /obj/item/clothing/under/suit/tan
/datum/gear/uniform/suit/charismatic_suit
name = "Charismatic suit"
path = /obj/item/clothing/under/suit/charismatic_suit
/datum/gear/uniform/suit/white
name = "White suit"
path = /obj/item/clothing/under/suit/white

View File

@@ -585,3 +585,12 @@
icon = 'icons/obj/custom.dmi'
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
mutantrace_variation = NONE
/obj/item/clothing/neck/petcollar/choker
name = "NT Choker"
desc = "NT property since January 21st, 2562."
icon = 'icons/obj/custom.dmi'
icon_state = "choker"
mob_overlay_icon = 'icons/mob/clothing/custom_w.dmi'
item_state = "choker"
tagname = null

View File

@@ -9,7 +9,7 @@
item_state = "arg"
slot_flags = 0
mag_type = /obj/item/ammo_box/magazine/m556 //Uses the m90gl's magazine, just like the NT-ARG
fire_sound = 'sound/weapons/gunshot_smg.ogg'
fire_sound = 'sound/weapons/rifleshot.ogg'
can_suppress = 0
burst_size = 6 //in line with XCOMEU stats. This can fire 5 bursts from a full magazine.
fire_delay = 1
@@ -85,23 +85,20 @@
///projectiles///
/obj/item/projectile/bullet/cflechetteap //shreds armor
/obj/item/projectile/bullet/cflechetteap //shreds armor but no wounds
name = "flechette (armor piercing)"
damage = 8
armour_penetration = 80
damage = 15
armour_penetration = 100
wound_bonus = -100
/obj/item/projectile/bullet/cflechettes //shreds flesh and forces bleeding
/obj/item/projectile/bullet/cflechettes //causes wounds fast but is heavily countered by armor
name = "flechette (serrated)"
damage = 15
dismemberment = 10
armour_penetration = -80
/obj/item/projectile/bullet/cflechettes/on_hit(atom/target, blocked = FALSE)
if((blocked != 100) && iscarbon(target))
var/mob/living/carbon/C = target
C.bleed(10)
return ..()
wound_bonus = 15
sharpness = SHARP_EDGED
wound_falloff_tile = 0
///ammo casings (CASELESS AMMO CASINGS WOOOOOOOO)///
/obj/item/ammo_casing/caseless/flechetteap
@@ -148,7 +145,7 @@
slot_flags = 0
pin = /obj/item/firing_pin/implant/pindicate
mag_type = /obj/item/ammo_box/magazine/flechette
fire_sound = 'sound/weapons/gunshot_smg.ogg'
fire_sound = 'sound/weapons/rifleshot.ogg'
can_suppress = 0
burst_size = 5
fire_delay = 1
@@ -168,15 +165,19 @@
///unique variant///
/obj/item/projectile/bullet/cflechetteshredder
/obj/item/projectile/bullet/cflechetteshredder //you only get this with a 30TC bundle,5 magazines, as such this should be the superior ammotype
name = "flechette (shredder)"
damage = 5
dismemberment = 40
damage = 10
dismemberment = 50
wound_bonus = 50
armour_penetration = 100
sharpness = SHARP_EDGED
wound_falloff_tile = 0
/obj/item/ammo_casing/caseless/flechetteshredder
name = "flechette (shredder)"
desc = "A serrated flechette made of a special alloy that forms a monofilament edge."
projectile_type = /obj/item/projectile/bullet/cflechettes
projectile_type = /obj/item/projectile/bullet/cflechetteshredder
/obj/item/ammo_box/magazine/flechette/shredder
name = "flechette magazine (shredder)"
@@ -185,7 +186,7 @@
/obj/item/gun/ballistic/automatic/flechette/shredder
name = "\improper CX Shredder"
desc = "A flechette launching machine pistol made of ultra-light CFRP optimized for firing serrated monofillament flechettes."
desc = "A flechette launching machine pistol made of ultra-light CFRP optimized for firing serrated monofilament flechettes."
w_class = WEIGHT_CLASS_SMALL
spread = 15
recoil = 0.1

View File

@@ -334,39 +334,75 @@
holder.clear_reagents()
/datum/reagent/fermi/acidic_buffer
name = "Acidic buffer"
name = "Strong acidic buffer"
description = "This reagent will consume itself and move the pH of a beaker towards acidity when added to another."
color = "#fbc314"
pH = 0
chemical_flags = REAGENT_FORCEONNEW
can_synth = TRUE
var/strength = 1.5
//Consumes self on addition and shifts pH
/datum/reagent/fermi/acidic_buffer/on_new(datapH)
if(!holder)
return ..()
if(holder.reagents_holder_flags & NO_REACT)
return..()
if(holder.has_reagent(/datum/reagent/stabilizing_agent))
return ..()
data = datapH
if(LAZYLEN(holder.reagent_list) == 1)
return ..()
holder.pH = ((holder.pH * holder.total_volume)+(pH * (volume)))/(holder.total_volume + (volume))
if(holder.pH < pH)
holder.my_atom.visible_message("<span class='warning'>The beaker fizzes as the buffer is added, to no effect.</b></span>")
playsound(holder.my_atom, 'sound/FermiChem/bufferadd.ogg', 50, 1)
return ..()
holder.pH = clamp((((holder.pH * (holder.total_volume-(volume*strength)))+(pH * (volume*strength)) )/holder.total_volume), 0, 14) //This is BEFORE removal
holder.my_atom.visible_message("<span class='warning'>The beaker fizzes as the pH changes!</b></span>")
playsound(holder.my_atom, 'sound/FermiChem/bufferadd.ogg', 50, 1)
holder.remove_reagent(type, volume, ignore_pH = TRUE)
..()
/datum/reagent/fermi/acidic_buffer/weak
name = "Acidic buffer"
description = "This reagent will consume itself and move the pH of a beaker towards acidity when added to another."
color = "#fbf344"
pH = 4
can_synth = TRUE
strength = 0.25
/datum/reagent/fermi/basic_buffer
name = "Basic buffer"
name = "Strong basic buffer"
description = "This reagent will consume itself and move the pH of a beaker towards alkalinity when added to another."
color = "#3853a4"
pH = 14
chemical_flags = REAGENT_FORCEONNEW
can_synth = TRUE
var/strength = 1.5
/datum/reagent/fermi/basic_buffer/weak
name = "Basic buffer"
description = "This reagent will consume itself and move the pH of a beaker towards alkalinity when added to another."
color = "#5873c4"
pH = 10
can_synth = TRUE
strength = 0.25
/datum/reagent/fermi/basic_buffer/on_new(datapH)
if(!holder)
return ..()
if(holder.reagents_holder_flags & NO_REACT)
return..()
if(holder.has_reagent(/datum/reagent/stabilizing_agent))
return ..()
data = datapH
if(LAZYLEN(holder.reagent_list) == 1)
return ..()
holder.pH = ((holder.pH * holder.total_volume)+(pH * (volume)))/(holder.total_volume + (volume))
if(holder.pH > pH)
holder.my_atom.visible_message("<span class='warning'>The beaker froths as the buffer is added, to no effect.</b></span>")
playsound(holder.my_atom, 'sound/FermiChem/bufferadd.ogg', 50, 1)
return ..()
holder.pH = clamp((((holder.pH * (holder.total_volume-(volume*strength)))+(pH * (volume*strength)) )/holder.total_volume), 0, 14) //This is BEFORE removal
holder.my_atom.visible_message("<span class='warning'>The beaker froths as the pH changes!</b></span>")
playsound(holder.my_atom, 'sound/FermiChem/bufferadd.ogg', 50, 1)
holder.remove_reagent(type, volume, ignore_pH = TRUE)