mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-07-17 18:13:34 +01:00
The Most Non-Edgey PR Ever
This commit is contained in:
@@ -69,7 +69,6 @@
|
||||
attack_verb = list("sliced")
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
sharp = 1
|
||||
edge = 1
|
||||
|
||||
/obj/item/clothing/glasses/meson/cyber
|
||||
name = "Eye Replacement Implant"
|
||||
|
||||
@@ -131,7 +131,6 @@
|
||||
desc = "A replica claymore with strange markings scratched into the blade."
|
||||
force = 5
|
||||
sharp = 0
|
||||
edge = 0
|
||||
|
||||
/obj/item/weapon/claymore/fluff/hit_reaction()
|
||||
return 0
|
||||
|
||||
@@ -136,7 +136,6 @@
|
||||
attack_verb = list("stabbed", "slashed", "attacked")
|
||||
var/icon/broken_outline = icon('icons/obj/drinks.dmi', "broken")
|
||||
sharp = 1
|
||||
edge = 1
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/gin
|
||||
name = "Griffeater Gin"
|
||||
|
||||
@@ -89,7 +89,6 @@
|
||||
attack_verb = list("chopped", "torn", "cut")
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
sharp = 1
|
||||
edge = 1
|
||||
|
||||
/obj/item/weapon/hatchet/suicide_act(mob/user)
|
||||
user.visible_message("<span class='suicide'>[user] is chopping at \himself with the [src.name]! It looks like \he's trying to commit suicide.</span>")
|
||||
@@ -119,7 +118,6 @@
|
||||
attack_verb = list("chopped", "sliced", "cut", "reaped")
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
sharp = 1
|
||||
edge = 1
|
||||
var/extend = 1
|
||||
|
||||
/obj/item/weapon/scythe/suicide_act(mob/user)
|
||||
@@ -128,7 +126,7 @@
|
||||
var/mob/living/carbon/human/H = user
|
||||
var/obj/item/organ/external/affecting = H.get_organ("head")
|
||||
if(affecting)
|
||||
affecting.droplimb(1, DROPLIMB_EDGE)
|
||||
affecting.droplimb(1, DROPLIMB_SHARP)
|
||||
playsound(loc, pick('sound/misc/desceration-01.ogg','sound/misc/desceration-02.ogg','sound/misc/desceration-01.ogg'), 50, 1, -1)
|
||||
return (BRUTELOSS)
|
||||
|
||||
@@ -139,7 +137,6 @@
|
||||
desc = "A sharp and curved blade on a collapsable fibre metal handle, this tool is the pinnacle of covert reaping technology."
|
||||
force = 3
|
||||
sharp = 0
|
||||
edge = 0
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
extend = 0
|
||||
slot_flags = SLOT_BELT
|
||||
@@ -172,7 +169,6 @@
|
||||
//Collapse sound (blade sheath)
|
||||
playsound(src.loc, 'sound/weapons/blade_sheath.ogg', 50, 1) //Sound credit to Q.K. of Freesound.org
|
||||
sharp = extend
|
||||
edge = extend
|
||||
if(ishuman(user))
|
||||
var/mob/living/carbon/human/H = user
|
||||
H.update_inv_l_hand()
|
||||
|
||||
@@ -978,7 +978,6 @@
|
||||
hitsound = 'sound/weapons/bladeslice.ogg'
|
||||
attack_verb = list("smashes", "crushes", "cleaves", "chops", "pulps")
|
||||
sharp = 1
|
||||
edge = 1
|
||||
var/charged = 1
|
||||
var/charge_time = 16
|
||||
var/atom/mark = null
|
||||
|
||||
@@ -24,7 +24,6 @@
|
||||
item_state = "spectral"
|
||||
flags = CONDUCT
|
||||
sharp = 1
|
||||
edge = 1
|
||||
w_class = WEIGHT_CLASS_BULKY
|
||||
force = 1
|
||||
throwforce = 1
|
||||
|
||||
@@ -87,7 +87,6 @@
|
||||
var/list/digsound = list('sound/effects/picaxe1.ogg','sound/effects/picaxe2.ogg','sound/effects/picaxe3.ogg')
|
||||
var/drill_verb = "picking"
|
||||
sharp = 1
|
||||
edge = 1
|
||||
var/excavation_amount = 100
|
||||
usesound = 'sound/effects/picaxe1.ogg'
|
||||
toolspeed = 1
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
// Only make the limb drop if it's not too damaged
|
||||
if(prob(100 - E.get_damage()))
|
||||
// Override the current limb status and don't cause an explosion
|
||||
E.droplimb(DROPLIMB_EDGE)
|
||||
E.droplimb(DROPLIMB_SHARP)
|
||||
|
||||
for(var/mob/M in src)
|
||||
if(M in stomach_contents)
|
||||
|
||||
@@ -226,7 +226,7 @@
|
||||
while(limbs_affected != 0 && valid_limbs.len > 0)
|
||||
processing_dismember = pick(valid_limbs)
|
||||
if(processing_dismember.limb_name != "chest" && processing_dismember.limb_name != "head" && processing_dismember.limb_name != "groin")
|
||||
processing_dismember.droplimb(1,DROPLIMB_EDGE,0,1)
|
||||
processing_dismember.droplimb(1,DROPLIMB_SHARP,0,1)
|
||||
valid_limbs -= processing_dismember
|
||||
limbs_affected -= 1
|
||||
else valid_limbs -= processing_dismember
|
||||
@@ -252,7 +252,7 @@
|
||||
while(limbs_affected != 0 && valid_limbs.len > 0)
|
||||
processing_dismember = pick(valid_limbs)
|
||||
if(processing_dismember.limb_name != "chest" && processing_dismember.limb_name != "head" && processing_dismember.limb_name != "groin")
|
||||
processing_dismember.droplimb(1,DROPLIMB_EDGE,0,1)
|
||||
processing_dismember.droplimb(1,DROPLIMB_SHARP,0,1)
|
||||
valid_limbs -= processing_dismember
|
||||
limbs_affected -= 1
|
||||
else valid_limbs -= processing_dismember
|
||||
@@ -277,7 +277,7 @@
|
||||
while(limbs_affected != 0 && valid_limbs.len > 0)
|
||||
processing_dismember = pick(valid_limbs)
|
||||
if(processing_dismember.limb_name != "chest" && processing_dismember.limb_name != "head" && processing_dismember.limb_name != "groin")
|
||||
processing_dismember.droplimb(1,DROPLIMB_EDGE,0,1)
|
||||
processing_dismember.droplimb(1,DROPLIMB_SHARP,0,1)
|
||||
valid_limbs -= processing_dismember
|
||||
limbs_affected -= 1
|
||||
else valid_limbs -= processing_dismember
|
||||
|
||||
@@ -158,7 +158,7 @@
|
||||
|
||||
visible_message("<span class='danger'>[M] [pick(attack.attack_verb)]ed [src]!</span>")
|
||||
|
||||
apply_damage(damage, BRUTE, affecting, armor_block, sharp=attack.sharp, edge=attack.edge) //moving this back here means Armalis are going to knock you down 70% of the time, but they're pure adminbus anyway.
|
||||
apply_damage(damage, BRUTE, affecting, armor_block, sharp = attack.sharp) //moving this back here means Armalis are going to knock you down 70% of the time, but they're pure adminbus anyway.
|
||||
if((stat != DEAD) && damage >= M.species.punchstunthreshold)
|
||||
visible_message("<span class='danger'>[M] has weakened [src]!</span>", \
|
||||
"<span class='userdanger'>[M] has weakened [src]!</span>")
|
||||
|
||||
@@ -112,7 +112,7 @@
|
||||
var/obj/item/organ/external/O = get_organ(organ_name)
|
||||
|
||||
if(amount > 0)
|
||||
O.take_damage(amount, 0, sharp=is_sharp(damage_source), edge=has_edge(damage_source), used_weapon=damage_source)
|
||||
O.take_damage(amount, 0, sharp=is_sharp(damage_source), used_weapon=damage_source)
|
||||
else
|
||||
//if you don't want to heal robot organs, they you will have to check that yourself before using this proc.
|
||||
O.heal_damage(-amount, 0, internal=0, robo_repair=(O.status & ORGAN_ROBOT))
|
||||
@@ -126,7 +126,7 @@
|
||||
var/obj/item/organ/external/O = get_organ(organ_name)
|
||||
|
||||
if(amount > 0)
|
||||
O.take_damage(0, amount, sharp=is_sharp(damage_source), edge=has_edge(damage_source), used_weapon=damage_source)
|
||||
O.take_damage(0, amount, sharp=is_sharp(damage_source), used_weapon=damage_source)
|
||||
else
|
||||
//if you don't want to heal robot organs, they you will have to check that yourself before using this proc.
|
||||
O.heal_damage(0, -amount, internal=0, robo_repair=(O.status & ORGAN_ROBOT))
|
||||
@@ -240,7 +240,7 @@
|
||||
if(!parts.len)
|
||||
return
|
||||
var/obj/item/organ/external/picked = pick(parts)
|
||||
if(picked.take_damage(brute,burn,sharp,edge))
|
||||
if(picked.take_damage(brute, burn, sharp))
|
||||
UpdateDamageIcon()
|
||||
updatehealth()
|
||||
speech_problem_flag = 1
|
||||
@@ -285,7 +285,7 @@
|
||||
var/burn_was = picked.burn_dam
|
||||
|
||||
|
||||
update |= picked.take_damage(brute_per_part,burn_per_part,sharp,edge,used_weapon)
|
||||
update |= picked.take_damage(brute_per_part, burn_per_part, sharp, used_weapon)
|
||||
|
||||
brute -= (picked.brute_dam - brute_was)
|
||||
burn -= (picked.burn_dam - burn_was)
|
||||
@@ -333,7 +333,7 @@ This function restores all organs.
|
||||
|
||||
return bodyparts_by_name[zone]
|
||||
|
||||
/mob/living/carbon/human/apply_damage(damage = 0, damagetype = BRUTE, def_zone = null, blocked = 0, sharp = 0, edge = 0, obj/used_weapon = null)
|
||||
/mob/living/carbon/human/apply_damage(damage = 0, damagetype = BRUTE, def_zone = null, blocked = 0, sharp = 0, obj/used_weapon = null)
|
||||
//Handle other types of damage
|
||||
if((damagetype != BRUTE) && (damagetype != BURN))
|
||||
..(damage, damagetype, def_zone, blocked)
|
||||
@@ -364,7 +364,7 @@ This function restores all organs.
|
||||
if(species)
|
||||
damage = damage * species.brute_mod
|
||||
|
||||
if(organ.take_damage(damage, 0, sharp, edge, used_weapon))
|
||||
if(organ.take_damage(damage, 0, sharp, used_weapon))
|
||||
UpdateDamageIcon()
|
||||
|
||||
if(LAssailant && ishuman(LAssailant)) //superheros still get the comical hit markers
|
||||
@@ -389,7 +389,7 @@ This function restores all organs.
|
||||
if(species)
|
||||
damage = damage * species.burn_mod
|
||||
|
||||
if(organ.take_damage(0, damage, sharp, edge, used_weapon))
|
||||
if(organ.take_damage(0, damage, sharp, used_weapon))
|
||||
UpdateDamageIcon()
|
||||
|
||||
// Will set our damageoverlay icon to the next level, which will then be set back to the normal level the next mob.Life().
|
||||
|
||||
@@ -61,7 +61,7 @@ emp_act
|
||||
/mob/living/carbon/human/check_projectile_dismemberment(obj/item/projectile/P, def_zone)
|
||||
var/obj/item/organ/external/affecting = get_organ(check_zone(def_zone))
|
||||
if(affecting && !affecting.cannot_amputate && affecting.get_damage() >= (affecting.max_damage - P.dismemberment))
|
||||
var/damtype = DROPLIMB_EDGE
|
||||
var/damtype = DROPLIMB_SHARP
|
||||
switch(P.damage_type)
|
||||
if(BRUTE)
|
||||
damtype = DROPLIMB_BLUNT
|
||||
@@ -234,16 +234,14 @@ emp_act
|
||||
|
||||
var/armor = run_armor_check(affecting, "melee", "Your armor has protected your [hit_area].", "Your armor has softened hit to your [hit_area].", armour_penetration = I.armour_penetration)
|
||||
var/weapon_sharp = is_sharp(I)
|
||||
var/weapon_edge = has_edge(I)
|
||||
if((weapon_sharp || weapon_edge) && prob(getarmor(user.zone_sel.selecting, "melee")))
|
||||
if(weapon_sharp && prob(getarmor(user.zone_sel.selecting, "melee")))
|
||||
weapon_sharp = 0
|
||||
weapon_edge = 0
|
||||
|
||||
if(armor >= 100) return 0
|
||||
if(!I.force) return 0
|
||||
var/Iforce = I.force //to avoid runtimes on the forcesay checks at the bottom. Some items might delete themselves if you drop them. (stunning yourself, ninja swords)
|
||||
|
||||
apply_damage(I.force, I.damtype, affecting, armor, sharp=weapon_sharp, edge=weapon_edge, used_weapon=I)
|
||||
apply_damage(I.force, I.damtype, affecting, armor, sharp = weapon_sharp, used_weapon = I)
|
||||
|
||||
var/bloody = 0
|
||||
if(I.damtype == BRUTE && I.force && prob(25 + I.force * 2))
|
||||
@@ -327,7 +325,7 @@ emp_act
|
||||
blocked = 1
|
||||
/*else if(I)
|
||||
if(I.throw_speed >= EMBED_THROWSPEED_THRESHOLD)
|
||||
if(!I.is_robot_module())
|
||||
if(!I.is_robot_module())
|
||||
var/armor = run_armor_check(affecting, "melee", "Your armor has protected your [hit_area].", "Your armor has softened hit to your [hit_area].", I.armour_penetration) //I guess "melee" is the best fit here
|
||||
var/sharp = is_sharp(I)
|
||||
var/damage = throwpower * (I.throw_speed / 5)
|
||||
|
||||
@@ -519,7 +519,6 @@
|
||||
var/attack_sound = "punch"
|
||||
var/miss_sound = 'sound/weapons/punchmiss.ogg'
|
||||
var/sharp = 0
|
||||
var/edge = 0
|
||||
|
||||
/datum/unarmed_attack/punch
|
||||
attack_verb = list("punch")
|
||||
@@ -535,7 +534,6 @@
|
||||
attack_sound = 'sound/weapons/slice.ogg'
|
||||
miss_sound = 'sound/weapons/slashmiss.ogg'
|
||||
sharp = 1
|
||||
edge = 1
|
||||
|
||||
/datum/unarmed_attack/claws/armalis
|
||||
attack_verb = list("slash", "claw")
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
Returns
|
||||
standard 0 if fail
|
||||
*/
|
||||
/mob/living/proc/apply_damage(var/damage = 0, var/damagetype = BRUTE, var/def_zone = null, var/blocked = 0, var/sharp = 0, var/edge = 0, var/used_weapon = null)
|
||||
/mob/living/proc/apply_damage(var/damage = 0, var/damagetype = BRUTE, var/def_zone = null, var/blocked = 0, var/sharp = 0, var/used_weapon = null)
|
||||
blocked = (100-blocked)/100
|
||||
if(!damage || (blocked <= 0)) return 0
|
||||
switch(damagetype)
|
||||
|
||||
@@ -41,12 +41,6 @@
|
||||
/mob/living/bullet_act(var/obj/item/projectile/P, var/def_zone)
|
||||
//Armor
|
||||
var/armor = run_armor_check(def_zone, P.flag, armour_penetration = P.armour_penetration)
|
||||
var/proj_sharp = is_sharp(P)
|
||||
var/proj_edge = has_edge(P)
|
||||
if((proj_sharp || proj_edge) && prob(getarmor(def_zone, P.flag)))
|
||||
proj_sharp = 0
|
||||
proj_edge = 0
|
||||
|
||||
if(!P.nodamage)
|
||||
apply_damage(P.damage, P.damage_type, def_zone, armor)
|
||||
if(P.dismemberment)
|
||||
@@ -78,7 +72,7 @@
|
||||
if(istype(AM, /obj/item))
|
||||
var/obj/item/I = AM
|
||||
var/zone = ran_zone("chest", 65)//Hits a random part of the body, geared towards the chest
|
||||
var/dtype = BRUTE
|
||||
var/dtype = BRUTE
|
||||
var/volume = I.get_volume_by_throwforce_and_or_w_class()
|
||||
if(istype(I, /obj/item/weapon))
|
||||
var/obj/item/weapon/W = I
|
||||
@@ -97,7 +91,7 @@
|
||||
visible_message("<span class='danger'>[src] has been hit by [I].</span>",
|
||||
"<span class='userdanger'>[src] has been hit by [I].</span>")
|
||||
var/armor = run_armor_check(zone, "melee", "Your armor has protected your [parse_zone(zone)].", "Your armor has softened hit to your [parse_zone(zone)].", I.armour_penetration)
|
||||
apply_damage(I.throwforce, dtype, zone, armor, is_sharp(I), has_edge(I), I)
|
||||
apply_damage(I.throwforce, dtype, zone, armor, is_sharp(I), I)
|
||||
if(I.thrownby)
|
||||
add_logs(I.thrownby, src, "hit", I)
|
||||
else
|
||||
|
||||
@@ -34,13 +34,15 @@
|
||||
installed = -1
|
||||
uninstall()
|
||||
|
||||
/datum/robot_component/proc/take_damage(brute, electronics, sharp, edge)
|
||||
if(installed != 1) return
|
||||
/datum/robot_component/proc/take_damage(brute, electronics, sharp)
|
||||
if(installed != 1)
|
||||
return
|
||||
|
||||
brute_damage += brute
|
||||
electronics_damage += electronics
|
||||
|
||||
if(brute_damage + electronics_damage >= max_damage) destroy()
|
||||
if(brute_damage + electronics_damage >= max_damage)
|
||||
destroy()
|
||||
|
||||
/datum/robot_component/proc/heal_damage(brute, electronics)
|
||||
if(installed != 1)
|
||||
|
||||
@@ -98,11 +98,11 @@
|
||||
|
||||
var/datum/robot_component/armour/A = get_armour()
|
||||
if(A)
|
||||
A.take_damage(brute,burn,sharp,edge)
|
||||
A.take_damage(brute, burn, sharp)
|
||||
return
|
||||
|
||||
var/datum/robot_component/C = pick(components)
|
||||
C.take_damage(brute,burn,sharp,edge)
|
||||
C.take_damage(brute, burn, sharp)
|
||||
|
||||
/mob/living/silicon/robot/heal_overall_damage(var/brute, var/burn)
|
||||
var/list/datum/robot_component/parts = get_damaged_components(brute,burn)
|
||||
@@ -149,7 +149,7 @@
|
||||
|
||||
var/datum/robot_component/armour/A = get_armour()
|
||||
if(A)
|
||||
A.take_damage(brute,burn,sharp)
|
||||
A.take_damage(brute, burn, sharp)
|
||||
return
|
||||
|
||||
while(parts.len && (brute>0 || burn>0) )
|
||||
@@ -158,7 +158,7 @@
|
||||
var/brute_was = picked.brute_damage
|
||||
var/burn_was = picked.electronics_damage
|
||||
|
||||
picked.take_damage(brute,burn)
|
||||
picked.take_damage(brute, burn)
|
||||
|
||||
brute -= (picked.brute_damage - brute_was)
|
||||
burn -= (picked.electronics_damage - burn_was)
|
||||
|
||||
@@ -477,7 +477,7 @@
|
||||
var/mob/living/carbon/human/H = parrot_interest
|
||||
var/obj/item/organ/external/affecting = H.get_organ(ran_zone(pick(parrot_dam_zone)))
|
||||
|
||||
H.apply_damage(damage, BRUTE, affecting, H.run_armor_check(affecting, "melee"), sharp=1)
|
||||
H.apply_damage(damage, BRUTE, affecting, H.run_armor_check(affecting, "melee"), sharp = 1)
|
||||
custom_emote(1, pick("pecks [H]'s [affecting].", "cuts [H]'s [affecting] with its talons."))
|
||||
|
||||
else
|
||||
|
||||
@@ -155,7 +155,6 @@
|
||||
on = 0
|
||||
force = initial(force)
|
||||
sharp = 0
|
||||
edge = 0
|
||||
w_class = initial(w_class)
|
||||
name = initial(name)
|
||||
hitsound = initial(hitsound)
|
||||
@@ -166,7 +165,6 @@
|
||||
on = 1
|
||||
force = 18
|
||||
sharp = 1
|
||||
edge = 1
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
name = "energy dagger"
|
||||
hitsound = 'sound/weapons/blade1.ogg'
|
||||
|
||||
@@ -49,8 +49,6 @@
|
||||
name = "alloy spike"
|
||||
desc = "A broadhead spike made out of a weird silvery metal."
|
||||
projectile_type = /obj/item/projectile/bullet/spike
|
||||
sharp = 1
|
||||
edge = 0
|
||||
throwforce = 5
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
caliber = "spike"
|
||||
|
||||
@@ -144,7 +144,6 @@
|
||||
attack_verb = list("attacked", "slashed", "cut", "sliced")
|
||||
force = 12
|
||||
sharp = 1
|
||||
edge = 1
|
||||
can_charge = 0
|
||||
|
||||
/obj/item/weapon/gun/energy/plasmacutter/examine(mob/user)
|
||||
|
||||
@@ -68,7 +68,7 @@
|
||||
icon_state = "focus"
|
||||
item_state = "focus"
|
||||
ammo_type = list(/obj/item/ammo_casing/forcebolt)
|
||||
|
||||
|
||||
/obj/item/weapon/gun/magic/staff/spellblade
|
||||
name = "spellblade"
|
||||
desc = "A deadly combination of laziness and boodlust, this blade allows the user to dismember their enemies without all the hard work of actually swinging the sword."
|
||||
@@ -81,7 +81,6 @@
|
||||
armour_penetration = 75
|
||||
block_chance = 50
|
||||
sharp = 1
|
||||
edge = 1
|
||||
max_charges = 4
|
||||
|
||||
/obj/item/weapon/gun/magic/staff/spellblade/hit_reaction(mob/living/carbon/human/owner, attack_text, final_block_chance, damage, attack_type)
|
||||
|
||||
@@ -77,7 +77,6 @@
|
||||
desc = "Stab, stab, stab."
|
||||
icon_state = "arrow"
|
||||
force = 10
|
||||
sharp = 1
|
||||
projectile_type = /obj/item/projectile/bullet/reusable/arrow
|
||||
caliber = "arrow"
|
||||
|
||||
|
||||
@@ -155,7 +155,6 @@
|
||||
throwforce = 20
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
sharp = 1
|
||||
edge = 0
|
||||
|
||||
/obj/item/weapon/arrow/proc/removed() //Helper for metal rods falling apart.
|
||||
return
|
||||
|
||||
@@ -5,7 +5,6 @@
|
||||
damage_type = BRUTE
|
||||
flag = "bullet"
|
||||
embed = 1
|
||||
sharp = 1
|
||||
hitsound_wall = "ricochet"
|
||||
|
||||
/obj/item/projectile/bullet/weakbullet //beanbag, heavy stamina damage
|
||||
@@ -15,7 +14,6 @@
|
||||
|
||||
/obj/item/projectile/bullet/weakbullet/rubber //beanbag that shells that don't embed
|
||||
embed = 0
|
||||
sharp = 0
|
||||
|
||||
/obj/item/projectile/bullet/weakbullet/booze
|
||||
embed = 0
|
||||
@@ -46,7 +44,6 @@
|
||||
|
||||
/obj/item/projectile/bullet/weakbullet2/rubber //detective's bullets that don't embed
|
||||
embed = 0
|
||||
sharp = 0
|
||||
|
||||
/obj/item/projectile/bullet/weakbullet3
|
||||
damage = 20
|
||||
@@ -57,7 +54,6 @@
|
||||
stamina = 30
|
||||
icon_state = "bullet-r"
|
||||
embed = 0
|
||||
sharp = 0
|
||||
|
||||
/obj/item/projectile/bullet/toxinbullet
|
||||
damage = 15
|
||||
@@ -146,7 +142,6 @@
|
||||
damage = 3
|
||||
stamina = 25
|
||||
embed = 0
|
||||
sharp = 0
|
||||
icon_state = "bullet-r"
|
||||
|
||||
/obj/item/projectile/bullet/stunshot//taser slugs for shotguns, nothing special
|
||||
@@ -158,7 +153,6 @@
|
||||
jitter = 20
|
||||
range = 7
|
||||
embed = 0
|
||||
sharp = 0
|
||||
icon_state = "spark"
|
||||
color = "#FFFF00"
|
||||
|
||||
@@ -210,7 +204,6 @@
|
||||
forcedodge = 1
|
||||
nodamage = 1
|
||||
embed = 0
|
||||
sharp = 0
|
||||
pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE
|
||||
hitsound = 'sound/items/bikehorn.ogg'
|
||||
icon = 'icons/obj/hydroponics/harvest.dmi'
|
||||
@@ -245,7 +238,6 @@
|
||||
icon_state = "cbbolt"
|
||||
damage = 6
|
||||
embed = 0
|
||||
sharp = 0
|
||||
var/piercing = 0
|
||||
|
||||
/obj/item/projectile/bullet/dart/New()
|
||||
@@ -308,7 +300,6 @@
|
||||
damage = 0
|
||||
nodamage = 1
|
||||
embed = 0
|
||||
sharp = 0
|
||||
|
||||
/obj/item/projectile/bullet/cap/fire()
|
||||
loc = null
|
||||
|
||||
@@ -35,7 +35,6 @@
|
||||
ammo_type = /obj/item/ammo_casing/caseless/foam_dart
|
||||
range = 10
|
||||
var/obj/item/weapon/pen/pen = null
|
||||
edge = 0
|
||||
embed = 0
|
||||
log_override = TRUE//it won't log even when there's a pen inside, but since the damage will be so low, I don't think there's any point in making it any more complex
|
||||
|
||||
|
||||
@@ -23,8 +23,6 @@
|
||||
icon_state= "bolter"
|
||||
damage = 50
|
||||
flag = "bullet"
|
||||
sharp = 1
|
||||
edge = 1
|
||||
|
||||
/obj/item/projectile/bullet/gyro/on_hit(var/atom/target, var/blocked = 0)
|
||||
..()
|
||||
|
||||
@@ -6,7 +6,6 @@
|
||||
throwforce = 15.0
|
||||
icon_state = "plasmalarge"
|
||||
sharp = 1
|
||||
edge = 1
|
||||
|
||||
/obj/item/weapon/shard/plasma/New()
|
||||
|
||||
|
||||
@@ -106,7 +106,7 @@
|
||||
var/obj/item/organ/external/affected = target.get_organ(target_zone)
|
||||
user.visible_message("<span class='warning'> [user]'s hand slips, tearing skin on [target]'s face with \the [tool]!</span>", \
|
||||
"<span class='warning'> Your hand slips, tearing skin on [target]'s face with \the [tool]!</span>")
|
||||
target.apply_damage(10, BRUTE, affected, sharp=1, edge=1)
|
||||
target.apply_damage(10, BRUTE, affected, sharp = 1)
|
||||
return 0
|
||||
|
||||
/datum/surgery_step/face/cauterize
|
||||
|
||||
@@ -143,7 +143,7 @@
|
||||
msg = "<span class='warning'> [user]'s hand slips, damaging several organs [target]'s lower abdomen with \the [tool]</span>"
|
||||
self_msg = "<span class='warning'> Your hand slips, damaging several organs [target]'s lower abdomen with \the [tool]!</span>"
|
||||
user.visible_message(msg, self_msg)
|
||||
target.apply_damage(12, BRUTE, affected, sharp=1)
|
||||
target.apply_damage(12, BRUTE, affected, sharp = 1)
|
||||
return 0
|
||||
|
||||
/datum/surgery_step/generic/cauterize
|
||||
@@ -236,7 +236,7 @@
|
||||
|
||||
add_logs(user, target, "surgically removed [affected.name] from", addition="INTENT: [uppertext(user.a_intent)]")//log it
|
||||
|
||||
var/atom/movable/thing = affected.droplimb(1,DROPLIMB_EDGE)
|
||||
var/atom/movable/thing = affected.droplimb(1,DROPLIMB_SHARP)
|
||||
if(istype(thing,/obj/item))
|
||||
user.put_in_hands(thing)
|
||||
return 1
|
||||
|
||||
@@ -126,7 +126,7 @@
|
||||
var/obj/item/organ/external/E = tool
|
||||
user.visible_message("<span class='alert'>[user]'s hand slips, damaging [target]'s [E.amputation_point]!</span>", \
|
||||
"<span class='alert'>Your hand slips, damaging [target]'s [E.amputation_point]!</span>")
|
||||
target.apply_damage(10, BRUTE, null, sharp=1)
|
||||
target.apply_damage(10, BRUTE, null, sharp = 1)
|
||||
return 0
|
||||
|
||||
|
||||
@@ -213,7 +213,7 @@
|
||||
var/obj/item/organ/external/E = target.get_organ(target_zone)
|
||||
user.visible_message("<span class='alert'>[user]'s hand slips, damaging [target]'s [E.amputation_point]!</span>", \
|
||||
"<span class='alert'>Your hand slips, damaging [target]'s [E.amputation_point]!</span>")
|
||||
target.apply_damage(10, BRUTE, null, sharp=1)
|
||||
target.apply_damage(10, BRUTE, null, sharp = 1)
|
||||
return 0
|
||||
|
||||
/datum/surgery_step/limb/mechanize
|
||||
@@ -271,5 +271,5 @@
|
||||
/datum/surgery_step/limb/mechanize/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
|
||||
user.visible_message("<span class='alert'>[user]'s hand slips, damaging [target]'s flesh!</span>", \
|
||||
"<span class='alert'>Your hand slips, damaging [target]'s flesh!</span>")
|
||||
target.apply_damage(10, BRUTE, null, sharp=1)
|
||||
target.apply_damage(10, BRUTE, null, sharp = 1)
|
||||
return 0
|
||||
|
||||
@@ -315,10 +315,10 @@
|
||||
if(prob(50))
|
||||
if(lasthand == "r_hand")
|
||||
var/obj/item/organ/external/limb = owner.get_organ("r_arm")
|
||||
limb.droplimb(0, DROPLIMB_EDGE)
|
||||
limb.droplimb(0, DROPLIMB_SHARP)
|
||||
else if(lasthand == "l_hand")
|
||||
var/obj/item/organ/external/limb = owner.get_organ("l_arm")
|
||||
limb.droplimb(0, DROPLIMB_EDGE)
|
||||
limb.droplimb(0, DROPLIMB_SHARP)
|
||||
owner.say("I HAVE BEEN DISARMED!!!")
|
||||
owner.adjustFireLoss(25)//severely injure him!
|
||||
overloaded = TRUE
|
||||
|
||||
@@ -233,7 +233,7 @@ var/list/organ_cache = list()
|
||||
W.time_inflicted = world.time
|
||||
|
||||
//Note: external organs have their own version of this proc
|
||||
/obj/item/organ/proc/take_damage(amount, var/silent=0)
|
||||
/obj/item/organ/proc/take_damage(amount, silent = 0)
|
||||
if(tough)
|
||||
return
|
||||
if(status & ORGAN_ROBOT)
|
||||
|
||||
@@ -194,7 +194,7 @@
|
||||
DAMAGE PROCS
|
||||
****************************************************/
|
||||
|
||||
/obj/item/organ/external/take_damage(brute, burn, sharp, edge, used_weapon = null, list/forbidden_limbs = list())
|
||||
/obj/item/organ/external/take_damage(brute, burn, sharp, used_weapon = null, list/forbidden_limbs = list())
|
||||
if(tough)
|
||||
brute = max(0, brute - 5)
|
||||
burn = max(0, burn - 4)
|
||||
@@ -276,7 +276,7 @@
|
||||
if(possible_points.len)
|
||||
//And pass the pain around
|
||||
var/obj/item/organ/external/target = pick(possible_points)
|
||||
target.take_damage(brute, burn, sharp, edge, used_weapon, forbidden_limbs + src)
|
||||
target.take_damage(brute, burn, sharp, used_weapon, forbidden_limbs + src)
|
||||
if(fail_at_full_damage == 2 && body_part != UPPER_TORSO && body_part != LOWER_TORSO)
|
||||
var/losstype
|
||||
if(burn > brute)
|
||||
@@ -292,8 +292,8 @@
|
||||
if(owner && loc == owner)
|
||||
if(!cannot_amputate && config.limbs_can_break && (brute_dam) >= (max_damage * config.organ_health_multiplier))
|
||||
if(prob(brute / 2))
|
||||
if(edge)
|
||||
droplimb(0,DROPLIMB_EDGE)
|
||||
if(sharp)
|
||||
droplimb(0, DROPLIMB_SHARP)
|
||||
|
||||
if(owner_old) owner_old.updatehealth()
|
||||
return update_icon()
|
||||
@@ -696,10 +696,10 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
return
|
||||
|
||||
if(!disintegrate)
|
||||
disintegrate = DROPLIMB_EDGE
|
||||
disintegrate = DROPLIMB_SHARP
|
||||
|
||||
switch(disintegrate)
|
||||
if(DROPLIMB_EDGE)
|
||||
if(DROPLIMB_SHARP)
|
||||
if(!clean)
|
||||
var/gore_sound = "[(status & ORGAN_ROBOT) ? "tortured metal" : "ripping tendons and flesh"]"
|
||||
owner.visible_message(
|
||||
@@ -748,7 +748,7 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
victim.regenerate_icons()
|
||||
dir = 2
|
||||
switch(disintegrate)
|
||||
if(DROPLIMB_EDGE)
|
||||
if(DROPLIMB_SHARP)
|
||||
compile_icon()
|
||||
add_blood(victim)
|
||||
var/matrix/M = matrix()
|
||||
|
||||
@@ -219,8 +219,8 @@
|
||||
|
||||
..()
|
||||
|
||||
/obj/item/organ/external/head/take_damage(brute, burn, sharp, edge, used_weapon = null, list/forbidden_limbs = list())
|
||||
..(brute, burn, sharp, edge, used_weapon, forbidden_limbs)
|
||||
/obj/item/organ/external/head/take_damage(brute, burn, sharp, used_weapon = null, list/forbidden_limbs = list())
|
||||
..(brute, burn, sharp, used_weapon, forbidden_limbs)
|
||||
if(!disfigured)
|
||||
if(brute_dam > 40)
|
||||
if(prob(50))
|
||||
|
||||
@@ -318,15 +318,15 @@ datum/wound/cut/massive
|
||||
/datum/wound/lost_limb/New(var/obj/item/organ/external/lost_limb, var/losstype, var/clean)
|
||||
var/damage_amt = lost_limb.max_damage
|
||||
if(clean) damage_amt /= 2
|
||||
|
||||
|
||||
switch(losstype)
|
||||
if(DROPLIMB_EDGE, DROPLIMB_BLUNT)
|
||||
if(DROPLIMB_SHARP, DROPLIMB_BLUNT)
|
||||
damage_type = CUT
|
||||
max_bleeding_stage = 3 //clotted stump and above can bleed.
|
||||
stages = list(
|
||||
"ripped stump" = damage_amt*1.3,
|
||||
"bloody stump" = damage_amt,
|
||||
"clotted stump" = damage_amt*0.5,
|
||||
"bloody stump" = damage_amt,
|
||||
"clotted stump" = damage_amt*0.5,
|
||||
"scarred stump" = 0
|
||||
)
|
||||
if(DROPLIMB_BURN)
|
||||
@@ -337,7 +337,7 @@ datum/wound/cut/massive
|
||||
"scarred stump" = damage_amt*0.5,
|
||||
"scarred stump" = 0
|
||||
)
|
||||
|
||||
|
||||
..(damage_amt)
|
||||
|
||||
/datum/wound/lost_limb/can_merge(var/datum/wound/other)
|
||||
|
||||
@@ -538,7 +538,7 @@
|
||||
|
||||
add_logs(user, target, "surgically removed [affected.name] from", addition="INTENT: [uppertext(user.a_intent)]")//log it
|
||||
|
||||
var/atom/movable/thing = affected.droplimb(1,DROPLIMB_EDGE)
|
||||
var/atom/movable/thing = affected.droplimb(1,DROPLIMB_SHARP)
|
||||
if(istype(thing,/obj/item))
|
||||
user.put_in_hands(thing)
|
||||
|
||||
|
||||
@@ -43,7 +43,6 @@
|
||||
flags = CONDUCT
|
||||
force = 15.0
|
||||
sharp = 1
|
||||
edge = 1
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
origin_tech = "materials=1;biotech=1"
|
||||
attack_verb = list("drilled")
|
||||
@@ -63,7 +62,6 @@
|
||||
flags = CONDUCT
|
||||
force = 10.0
|
||||
sharp = 1
|
||||
edge = 1
|
||||
w_class = WEIGHT_CLASS_TINY
|
||||
throwforce = 5.0
|
||||
throw_speed = 3
|
||||
@@ -123,7 +121,6 @@
|
||||
flags = CONDUCT
|
||||
force = 15.0
|
||||
sharp = 1
|
||||
edge = 1
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
throwforce = 9.0
|
||||
throw_speed = 3
|
||||
|
||||
Reference in New Issue
Block a user