mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-24 04:28:12 +01:00
@@ -512,7 +512,7 @@ datum
|
||||
if(!M) M = holder.my_atom
|
||||
M.druggy = max(M.druggy, 15)
|
||||
if(isturf(M.loc) && !istype(M.loc, /turf/space))
|
||||
if(M.canmove)
|
||||
if(M.canmove && !M.restrained())
|
||||
if(prob(10)) step(M, pick(cardinal))
|
||||
if(prob(7)) M.emote(pick("twitch","drool","moan","giggle"))
|
||||
holder.remove_reagent(src.id, 0.5 * REAGENTS_METABOLISM)
|
||||
@@ -642,7 +642,7 @@ datum
|
||||
|
||||
on_mob_life(var/mob/living/M as mob)
|
||||
if(!M) M = holder.my_atom
|
||||
if(M.canmove && istype(M.loc, /turf/space))
|
||||
if(M.canmove && !M.restrained() && istype(M.loc, /turf/space))
|
||||
step(M, pick(cardinal))
|
||||
if(prob(5)) M.emote(pick("twitch","drool","moan"))
|
||||
..()
|
||||
@@ -728,7 +728,7 @@ datum
|
||||
|
||||
on_mob_life(var/mob/living/M as mob)
|
||||
if(!M) M = holder.my_atom
|
||||
if(M.canmove && istype(M.loc, /turf/space))
|
||||
if(M.canmove && !M.restrained() && istype(M.loc, /turf/space))
|
||||
step(M, pick(cardinal))
|
||||
if(prob(5)) M.emote(pick("twitch","drool","moan"))
|
||||
..()
|
||||
|
||||
@@ -68,14 +68,16 @@ proc/do_surgery(mob/living/M, mob/living/user, obj/item/tool)
|
||||
return 0
|
||||
if (user.a_intent == "harm") //check for Hippocratic Oath
|
||||
return 0
|
||||
var/obj/item/T = tool
|
||||
var/def_zone = user.zone_sel.selecting
|
||||
for(var/datum/surgery_step/S in surgery_steps)
|
||||
if( (S.isright(tool) || S.isacceptable(tool)) && \
|
||||
S.can_use(user, M, user.zone_sel.selecting, tool)) //check if tool is right or close enough and if this step is possible
|
||||
S.begin_step(user, M, user.zone_sel.selecting, tool) //start on it
|
||||
if( (S.isright(T) || S.isacceptable(T)) && \
|
||||
S.can_use(user, M, def_zone, T)) //check if tool is right or close enough and if this step is possible
|
||||
S.begin_step(user, M, def_zone, T) //start on it
|
||||
if(do_mob(user, M, rand(S.min_duration, S.max_duration))) //if user did nto move or changed hands
|
||||
S.end_step(user, M, user.zone_sel.selecting, tool) //finish successfully
|
||||
S.end_step(user, M, def_zone, T) //finish successfully
|
||||
else //or
|
||||
S.fail_step(user, M, user.zone_sel.selecting, tool) //malpractice~
|
||||
S.fail_step(user, M, def_zone, T) //malpractice~
|
||||
return 1 //don't want to do weapony things after surgery
|
||||
return 0
|
||||
|
||||
|
||||
Reference in New Issue
Block a user