compile
This commit is contained in:
@@ -205,6 +205,7 @@
|
|||||||
#define COMSIG_LIVING_STATUS_IMMOBILIZE "living_immobilize" //from base of mob/living/Immobilize() (amount, update, ignore)
|
#define COMSIG_LIVING_STATUS_IMMOBILIZE "living_immobilize" //from base of mob/living/Immobilize() (amount, update, ignore)
|
||||||
#define COMSIG_LIVING_STATUS_UNCONSCIOUS "living_unconscious" //from base of mob/living/Unconscious() (amount, update, ignore)
|
#define COMSIG_LIVING_STATUS_UNCONSCIOUS "living_unconscious" //from base of mob/living/Unconscious() (amount, update, ignore)
|
||||||
#define COMSIG_LIVING_STATUS_SLEEP "living_sleeping" //from base of mob/living/Sleeping() (amount, update, ignore)
|
#define COMSIG_LIVING_STATUS_SLEEP "living_sleeping" //from base of mob/living/Sleeping() (amount, update, ignore)
|
||||||
|
#define COMSIG_LIVING_STATUS_DAZE "living_daze" //from base of mob/living/Daze() (amount, update, ignore)
|
||||||
#define COMPONENT_NO_STUN 1 //For all of them
|
#define COMPONENT_NO_STUN 1 //For all of them
|
||||||
|
|
||||||
// /mob/living/carbon signals
|
// /mob/living/carbon signals
|
||||||
|
|||||||
@@ -431,6 +431,6 @@
|
|||||||
/obj/machinery/jukebox/disco/process()
|
/obj/machinery/jukebox/disco/process()
|
||||||
. = ..()
|
. = ..()
|
||||||
if(active)
|
if(active)
|
||||||
for(var/mob/M in rangers)
|
for(var/mob/living/M in rangers)
|
||||||
if(prob(5+(allowed(M)*4)) && M.canmove)
|
if(prob(5+(allowed(M)*4)) && CHECK_BITFIELD(M.mobility_flags, MOBILITY_MOVE))
|
||||||
dance(M)
|
dance(M)
|
||||||
|
|||||||
@@ -603,12 +603,12 @@
|
|||||||
step_towards(user, T2)
|
step_towards(user, T2)
|
||||||
T1 = get_turf(user)
|
T1 = get_turf(user)
|
||||||
if(T1 == T2)
|
if(T1 == T2)
|
||||||
user.resting = TRUE //so people can jump into crates without slamming the lid on their head
|
user.set_resting(TRUE, TRUE)
|
||||||
if(!close(user))
|
if(!close(user))
|
||||||
to_chat(user, "<span class='warning'>You can't get [src] to close!</span>")
|
to_chat(user, "<span class='warning'>You can't get [src] to close!</span>")
|
||||||
user.resting = FALSE
|
user.set_resting(FALSE, TRUE)
|
||||||
return
|
return
|
||||||
user.resting = FALSE
|
user.set_resting(FALSE, TRUE)
|
||||||
togglelock(user)
|
togglelock(user)
|
||||||
T1.visible_message("<span class='warning'>[user] dives into [src]!</span>")
|
T1.visible_message("<span class='warning'>[user] dives into [src]!</span>")
|
||||||
|
|
||||||
|
|||||||
@@ -19,7 +19,7 @@
|
|||||||
var/use_mob_movespeed = FALSE //Citadel adds snowflake box handling
|
var/use_mob_movespeed = FALSE //Citadel adds snowflake box handling
|
||||||
|
|
||||||
/obj/structure/closet/cardboard/relaymove(mob/user, direction)
|
/obj/structure/closet/cardboard/relaymove(mob/user, direction)
|
||||||
if(opened || move_delay || user.stat || user.IsStun() || user.IsKnockdown() || user.IsUnconscious() || !isturf(loc) || !has_gravity(loc))
|
if(opened || move_delay || !CHECK_BITFIELD(user.mobility_flags, MOBILITY_MOVE) || !isturf(loc) || !has_gravity(loc))
|
||||||
return
|
return
|
||||||
move_delay = TRUE
|
move_delay = TRUE
|
||||||
if(step(src, direction))
|
if(step(src, direction))
|
||||||
|
|||||||
@@ -109,8 +109,7 @@
|
|||||||
|
|
||||||
/obj/structure/table/proc/tableplace(mob/living/user, mob/living/pushed_mob)
|
/obj/structure/table/proc/tableplace(mob/living/user, mob/living/pushed_mob)
|
||||||
pushed_mob.forceMove(src.loc)
|
pushed_mob.forceMove(src.loc)
|
||||||
pushed_mob.resting = TRUE
|
pushed_mob.set_resting(TRUE, FALSE)
|
||||||
pushed_mob.update_canmove()
|
|
||||||
pushed_mob.visible_message("<span class='notice'>[user] places [pushed_mob] onto [src].</span>", \
|
pushed_mob.visible_message("<span class='notice'>[user] places [pushed_mob] onto [src].</span>", \
|
||||||
"<span class='notice'>[user] places [pushed_mob] onto [src].</span>")
|
"<span class='notice'>[user] places [pushed_mob] onto [src].</span>")
|
||||||
log_combat(user, pushed_mob, "placed")
|
log_combat(user, pushed_mob, "placed")
|
||||||
@@ -138,11 +137,11 @@
|
|||||||
SEND_SIGNAL(H, COMSIG_ADD_MOOD_EVENT, "table", /datum/mood_event/table)
|
SEND_SIGNAL(H, COMSIG_ADD_MOOD_EVENT, "table", /datum/mood_event/table)
|
||||||
|
|
||||||
/obj/structure/table/shove_act(mob/living/target, mob/living/user)
|
/obj/structure/table/shove_act(mob/living/target, mob/living/user)
|
||||||
if(!target.resting)
|
if(CHECK_BITFIELD(target.mobility_flags, MOBILITY_STAND))
|
||||||
target.DefaultCombatKnockdown(SHOVE_KNOCKDOWN_TABLE)
|
target.DefaultCombatKnockdown(SHOVE_KNOCKDOWN_TABLE)
|
||||||
user.visible_message("<span class='danger'>[user.name] shoves [target.name] onto \the [src]!</span>",
|
user.visible_message("<span class='danger'>[user.name] shoves [target.name] onto \the [src]!</span>",
|
||||||
"<span class='danger'>You shove [target.name] onto \the [src]!</span>", null, COMBAT_MESSAGE_RANGE)
|
"<span class='danger'>You shove [target.name] onto \the [src]!</span>", null, COMBAT_MESSAGE_RANGE)
|
||||||
target.forceMove(src.loc)
|
target.forceMove(loc)
|
||||||
log_combat(user, target, "shoved", "onto [src] (table)")
|
log_combat(user, target, "shoved", "onto [src] (table)")
|
||||||
return TRUE
|
return TRUE
|
||||||
|
|
||||||
@@ -557,15 +556,13 @@
|
|||||||
/obj/structure/table/optable/proc/check_patient()
|
/obj/structure/table/optable/proc/check_patient()
|
||||||
var/mob/M = locate(/mob/living/carbon/human, loc)
|
var/mob/M = locate(/mob/living/carbon/human, loc)
|
||||||
if(M)
|
if(M)
|
||||||
if(M.resting)
|
if(!CHECK_BITFIELD(M.mobility_flags, MOBILITY_STAND))
|
||||||
patient = M
|
patient = M
|
||||||
return 1
|
return 1
|
||||||
else
|
else
|
||||||
patient = null
|
patient = null
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Racks
|
* Racks
|
||||||
*/
|
*/
|
||||||
@@ -624,7 +621,7 @@
|
|||||||
. = ..()
|
. = ..()
|
||||||
if(.)
|
if(.)
|
||||||
return
|
return
|
||||||
if(user.IsKnockdown() || user.resting || user.lying || user.get_num_legs() < 2)
|
if(CHECK_MULTIPLE_BITFIELDS(user.mobility_flags, MOBILITY_STAND|MOBILITY_MOVE) || user.get_num_legs() < 2)
|
||||||
return
|
return
|
||||||
user.changeNext_move(CLICK_CD_MELEE)
|
user.changeNext_move(CLICK_CD_MELEE)
|
||||||
user.do_attack_animation(src, ATTACK_EFFECT_KICK)
|
user.do_attack_animation(src, ATTACK_EFFECT_KICK)
|
||||||
|
|||||||
@@ -343,7 +343,8 @@
|
|||||||
set name = "Flip Windoor Assembly"
|
set name = "Flip Windoor Assembly"
|
||||||
set category = "Object"
|
set category = "Object"
|
||||||
set src in oview(1)
|
set src in oview(1)
|
||||||
if(usr.stat || !usr.canmove || usr.restrained())
|
var/mob/living/L = usr
|
||||||
|
if(!CHECK_BITFIELD(L, MOBILITY_PULL))
|
||||||
return
|
return
|
||||||
|
|
||||||
if(facing == "l")
|
if(facing == "l")
|
||||||
@@ -354,4 +355,3 @@
|
|||||||
to_chat(usr, "<span class='notice'>The windoor will now slide to the left.</span>")
|
to_chat(usr, "<span class='notice'>The windoor will now slide to the left.</span>")
|
||||||
|
|
||||||
update_icon()
|
update_icon()
|
||||||
return
|
|
||||||
|
|||||||
@@ -36,7 +36,7 @@
|
|||||||
. = ..()
|
. = ..()
|
||||||
if(dropping == user && isliving(user))
|
if(dropping == user && isliving(user))
|
||||||
var/mob/living/L = user
|
var/mob/living/L = user
|
||||||
if(L.resting && do_after(L, max(10, L.getStaminaLoss()*0.5), 0, src))
|
if(!CHECK_BITFIELD(L.mobility_flags, MOBILITY_STAND) && do_after(L, max(10, L.getStaminaLoss()*0.5), 0, src))
|
||||||
if(Adjacent(L, src))
|
if(Adjacent(L, src))
|
||||||
step(L, get_dir(L, src))
|
step(L, get_dir(L, src))
|
||||||
playsound(L, "rustle", 25, 1)
|
playsound(L, "rustle", 25, 1)
|
||||||
|
|||||||
@@ -81,12 +81,12 @@
|
|||||||
if(H.movement_type & FLYING)
|
if(H.movement_type & FLYING)
|
||||||
to_chat(H, "<span class='notice'>You settle gently back onto the ground...</span>")
|
to_chat(H, "<span class='notice'>You settle gently back onto the ground...</span>")
|
||||||
A.ToggleFlight(H,0)
|
A.ToggleFlight(H,0)
|
||||||
H.update_canmove()
|
H.update_mobility()
|
||||||
else
|
else
|
||||||
to_chat(H, "<span class='notice'>You beat your wings and begin to hover gently above the ground...</span>")
|
to_chat(H, "<span class='notice'>You beat your wings and begin to hover gently above the ground...</span>")
|
||||||
H.resting = 0
|
H.set_resting(FALSE, TRUE)
|
||||||
A.ToggleFlight(H,1)
|
A.ToggleFlight(H,1)
|
||||||
H.update_canmove()
|
H.update_mobility()
|
||||||
|
|
||||||
/datum/species/angel/proc/flyslip(mob/living/carbon/human/H)
|
/datum/species/angel/proc/flyslip(mob/living/carbon/human/H)
|
||||||
var/obj/buckled_obj
|
var/obj/buckled_obj
|
||||||
|
|||||||
@@ -691,7 +691,7 @@
|
|||||||
/mob/living/resist_grab(moving_resist)
|
/mob/living/resist_grab(moving_resist)
|
||||||
. = 1
|
. = 1
|
||||||
if(pulledby.grab_state)
|
if(pulledby.grab_state)
|
||||||
if(!resting && prob(30/pulledby.grab_state))
|
if(CHECK_BITFIELD(mobility_flags, MOBILITY_STAND) && prob(30/pulledby.grab_state))
|
||||||
visible_message("<span class='danger'>[src] has broken free of [pulledby]'s grip!</span>")
|
visible_message("<span class='danger'>[src] has broken free of [pulledby]'s grip!</span>")
|
||||||
log_combat(pulledby, src, "broke grab")
|
log_combat(pulledby, src, "broke grab")
|
||||||
pulledby.stop_pulling()
|
pulledby.stop_pulling()
|
||||||
|
|||||||
@@ -98,13 +98,13 @@
|
|||||||
var/chokehold = pulledby && pulledby.grab_state >= GRAB_NECK
|
var/chokehold = pulledby && pulledby.grab_state >= GRAB_NECK
|
||||||
var/restrained = restrained()
|
var/restrained = restrained()
|
||||||
var/pinned = resting && pulledby && pulledby.grab_state >= GRAB_AGGRESSIVE // Cit change - adds pinning for aggressive-grabbing people on the ground
|
var/pinned = resting && pulledby && pulledby.grab_state >= GRAB_AGGRESSIVE // Cit change - adds pinning for aggressive-grabbing people on the ground
|
||||||
var/canmove = !IsImmobilized() && !stun && conscious && !paralyzed && !buckled && (!stat_softcrit || !pulledby) && !chokehold && !IsFrozen() && !IS_IN_STASIS(src) && (has_arms || ignore_legs || has_legs) && !pinned
|
var/canmove = !IsImmobilized() && !stun && conscious && !paralyze && !buckled && (!stat_softcrit || !pulledby) && !chokehold && !IsFrozen() && !IS_IN_STASIS(src) && (has_arms || ignore_legs || has_legs) && !pinned
|
||||||
|
|
||||||
if(canmove)
|
if(canmove)
|
||||||
mobility_flags |= MOBILITY_MOVE
|
mobility_flags |= MOBILITY_MOVE
|
||||||
else
|
else
|
||||||
mobility_flags &= ~MOBILITY_MOVE
|
mobility_flags &= ~MOBILITY_MOVE
|
||||||
var/canstand_involuntary = conscious && !stat_softcrit && !knockdown && !chokehold && !paralyzed && (ignore_legs || has_legs) && !(buckled && buckled.buckle_lying)
|
var/canstand_involuntary = conscious && !stat_softcrit && !knockdown && !chokehold && !paralyze && (ignore_legs || has_legs) && !(buckled && buckled.buckle_lying)
|
||||||
var/canstand = canstand_involuntary && !resting
|
var/canstand = canstand_involuntary && !resting
|
||||||
|
|
||||||
var/should_be_lying = !canstand
|
var/should_be_lying = !canstand
|
||||||
@@ -128,7 +128,7 @@
|
|||||||
else
|
else
|
||||||
mobility_flags |= MOBILITY_UI|MOBILITY_PULL
|
mobility_flags |= MOBILITY_UI|MOBILITY_PULL
|
||||||
|
|
||||||
var/canitem = !paralyzed && !stun && conscious && !chokehold && !restrained && has_arms
|
var/canitem = !paralyze && !stun && conscious && !chokehold && !restrained && has_arms
|
||||||
if(canitem)
|
if(canitem)
|
||||||
mobility_flags |= (MOBILITY_USE | MOBILITY_PICKUP | MOBILITY_STORAGE)
|
mobility_flags |= (MOBILITY_USE | MOBILITY_PICKUP | MOBILITY_STORAGE)
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -25,8 +25,7 @@
|
|||||||
if(light_amount < SHADOW_SPECIES_LIGHT_THRESHOLD)
|
if(light_amount < SHADOW_SPECIES_LIGHT_THRESHOLD)
|
||||||
playsound(get_turf(user), 'sound/magic/ethereal_enter.ogg', 50, 1, -1)
|
playsound(get_turf(user), 'sound/magic/ethereal_enter.ogg', 50, 1, -1)
|
||||||
visible_message("<span class='boldwarning'>[user] melts into the shadows!</span>")
|
visible_message("<span class='boldwarning'>[user] melts into the shadows!</span>")
|
||||||
user.SetStun(0, FALSE)
|
user.SetAllImmobility(0)
|
||||||
user.SetKnockdown(0, FALSE)
|
|
||||||
user.setStaminaLoss(0, 0)
|
user.setStaminaLoss(0, 0)
|
||||||
var/obj/effect/dummy/phased_mob/shadow/S2 = new(get_turf(user.loc))
|
var/obj/effect/dummy/phased_mob/shadow/S2 = new(get_turf(user.loc))
|
||||||
user.forceMove(S2)
|
user.forceMove(S2)
|
||||||
|
|||||||
Reference in New Issue
Block a user