mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 18:22:39 +00:00
Added macros for droplimb flags.
This commit is contained in:
@@ -182,7 +182,7 @@ Implant Specifics:<BR>"}
|
||||
del(src)
|
||||
else
|
||||
explosion(get_turf(imp_in), -1, -1, 2, 3)
|
||||
part.droplimb()
|
||||
part.droplimb(0,DROPLIMB_BLUNT)
|
||||
del(src)
|
||||
if (elevel == "Destroy Body")
|
||||
explosion(get_turf(T), -1, 0, 1, 6)
|
||||
@@ -247,7 +247,7 @@ Implant Specifics:<BR>"}
|
||||
istype(part,/obj/item/organ/external/head))
|
||||
part.createwound(BRUISE, 60) //mangle them instead
|
||||
else
|
||||
part.droplimb()
|
||||
part.droplimb(0,DROPLIMB_BLUNT)
|
||||
explosion(get_turf(imp_in), -1, -1, 2, 3)
|
||||
del(src)
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
I.throw_at(get_edge_target_turf(src,pick(alldirs)),rand(1,3),30)
|
||||
|
||||
for(var/obj/item/organ/external/E in src.organs)
|
||||
E.droplimb(0,0,1)
|
||||
E.droplimb(0,DROPLIMB_EDGE,1)
|
||||
|
||||
sleep(1)
|
||||
|
||||
|
||||
@@ -221,15 +221,15 @@
|
||||
var/dropped
|
||||
if((burn >= threshold) && prob(burn/3))
|
||||
dropped = 1
|
||||
droplimb(0,1)
|
||||
droplimb(0,DROPLIMB_BURN)
|
||||
if(!dropped && prob(brute))
|
||||
if(brute >= threshold)
|
||||
if((sharp || edge) && istype(used_weapon,/obj/item))
|
||||
var/obj/item/W = used_weapon
|
||||
if(W.w_class >= 3)
|
||||
droplimb()
|
||||
droplimb(0,DROPLIMB_EDGE)
|
||||
else
|
||||
droplimb(0,2)
|
||||
droplimb(0,DROPLIMB_BLUNT)
|
||||
|
||||
owner.updatehealth()
|
||||
return update_icon()
|
||||
@@ -364,7 +364,7 @@ This function completely restores a damaged organ to perfect condition.
|
||||
//Dismemberment
|
||||
if(status & ORGAN_DESTROYED)
|
||||
if(config.limbs_can_break)
|
||||
droplimb()
|
||||
droplimb(0,DROPLIMB_EDGE) //Might be worth removing this check since take_damage handles it.
|
||||
return
|
||||
if(parent)
|
||||
if(parent.status & ORGAN_DESTROYED)
|
||||
@@ -624,21 +624,21 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
return
|
||||
|
||||
if(!disintegrate)
|
||||
disintegrate = 0
|
||||
disintegrate = DROPLIMB_EDGE
|
||||
|
||||
switch(disintegrate)
|
||||
if(0)
|
||||
if(DROPLIMB_EDGE)
|
||||
if(!clean)
|
||||
owner.visible_message(
|
||||
"<span class='danger'>\The [owner]'s [src.name] flies off in an arc!</span>",\
|
||||
"<span class='moderate'><b>Your [src.name] goes flying off!</b></span>",\
|
||||
"<span class='danger'>You hear a terrible sound of ripping tendons and flesh.</span>")
|
||||
if(1)
|
||||
if(DROPLIMB_BURN)
|
||||
owner.visible_message(
|
||||
"<span class='danger'>\The [owner]'s [src.name] flashes away into ashes!</span>",\
|
||||
"<span class='moderate'><b>Your [src.name] flashes away into ashes!</b></span>",\
|
||||
"<span class='danger'>You hear the crackling sound of burning flesh.</span>")
|
||||
if(2)
|
||||
if(DROPLIMB_BLUNT)
|
||||
owner.visible_message(
|
||||
"<span class='danger'>\The [owner]'s [src.name] explodes in a shower of gore!</span>",\
|
||||
"<span class='moderate'><b>Your [src.name] explodes in a shower of gore!</b></span>",\
|
||||
@@ -672,7 +672,7 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
dir = 2
|
||||
|
||||
switch(disintegrate)
|
||||
if(0)
|
||||
if(DROPLIMB_EDGE)
|
||||
compile_icon()
|
||||
add_blood(owner)
|
||||
var/matrix/M = matrix()
|
||||
@@ -684,9 +684,9 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
throw_at(get_edge_target_turf(src,pick(alldirs)),rand(1,3),30)
|
||||
dir = 2
|
||||
return
|
||||
if(1)
|
||||
if(DROPLIMB_BURN)
|
||||
new /obj/effect/decal/cleanable/ash(get_turf(owner))
|
||||
if(2)
|
||||
if(DROPLIMB_BLUNT)
|
||||
var/obj/effect/decal/cleanable/blood/gibs/gore = new owner.species.single_gib_type(get_turf(owner))
|
||||
if(owner.species.flesh_color)
|
||||
gore.fleshcolor = owner.species.flesh_color
|
||||
|
||||
@@ -305,7 +305,7 @@
|
||||
var/obj/item/organ/external/affected = target.get_organ(target_zone)
|
||||
user.visible_message("\blue [user] amputates [target]'s [affected.name] at the [affected.amputation_point] with \the [tool].", \
|
||||
"\blue You amputate [target]'s [affected.name] with \the [tool].")
|
||||
affected.droplimb(1)
|
||||
affected.droplimb(1,DROPLIMB_EDGE)
|
||||
|
||||
fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool)
|
||||
var/obj/item/organ/external/affected = target.get_organ(target_zone)
|
||||
|
||||
@@ -81,11 +81,11 @@
|
||||
var/mob/living/carbon/human/H = mob
|
||||
var/obj/item/organ/external/O = pick(H.organs)
|
||||
if(prob(25))
|
||||
mob << "<span class='warning'>Your [O.name] feels as if it might fall off!</span>"
|
||||
mob << "<span class='warning'>Your [O.name] feels as if it might burst!</span>"
|
||||
if(prob(10))
|
||||
spawn(50)
|
||||
if(O)
|
||||
O.droplimb()
|
||||
O.droplimb(0,DROPLIMB_BLUNT)
|
||||
else
|
||||
if(prob(75))
|
||||
mob << "<span class='warning'>Your whole body feels like it might fall apart!</span>"
|
||||
|
||||
@@ -854,3 +854,7 @@ var/list/be_special_flags = list(
|
||||
#define ALLMOBS (HUMAN|MONKEY|ALIEN|ROBOT|SLIME|SIMPLE_ANIMAL)
|
||||
|
||||
#define NEXT_MOVE_DELAY 8
|
||||
|
||||
#define DROPLIMB_EDGE 0
|
||||
#define DROPLIMB_BLUNT 1
|
||||
#define DROPLIMB_BURN 2
|
||||
|
||||
Reference in New Issue
Block a user