diff --git a/code/_onclick/click.dm b/code/_onclick/click.dm index 5f4534a293c..fa0f562e3e9 100644 --- a/code/_onclick/click.dm +++ b/code/_onclick/click.dm @@ -106,13 +106,10 @@ var/obj/item/W = get_active_hand() - // Fast exit: In the case of USEDELAY. - // We will do this check again later and operations aren't heavy compared to list procs and Adjacent() - if(W == A) - next_move = world.time + 10 - if(W.flags&USEDELAY) - next_move += 5 + next_move = world.time + 2 // this is to be consistent with mode(), which was previously no delay at all +// if(W.flags&USEDELAY) +// next_move += 5 W.attack_self(src) if(hand) update_inv_l_hand(0) @@ -123,9 +120,15 @@ // operate two levels deep here (item in backpack in src; NOT item in box in backpack in src) if(A == loc || (A in loc) || (A in contents) || (A.loc in contents)) + + // faster access to objects already on you + if(A in contents) + next_move = world.time + 6 // on your person + else + next_move = world.time + 8 // in a box/bag or in your square + // No adjacency needed if(W) - next_move = world.time + 10 if(W.flags&USEDELAY) next_move += 5 @@ -133,7 +136,6 @@ if(!resolved && A && W) W.afterattack(A,src,1,params) // 1 indicates adjacency else - next_move = world.time + 10 UnarmedAttack(A) return @@ -141,9 +143,10 @@ return if(isturf(A) || isturf(A.loc) || (A.loc && isturf(A.loc.loc))) + next_move = world.time + 10 + if(A.Adjacent(src)) // see adjacent.dm if(W) - next_move = world.time + 10 if(W.flags&USEDELAY) next_move += 5 @@ -152,16 +155,13 @@ if(!resolved && A && W) W.afterattack(A,src,1,params) else - next_move = world.time + 10 UnarmedAttack(A) return else // non-adjacent click if(W) - next_move = world.time + 10 W.afterattack(A,src,0,params) else if((LASER in mutations) && a_intent == "harm") - next_move = world.time + 10 LaserEyes(A) // moved into a proc below return diff --git a/code/_onclick/cyborg.dm b/code/_onclick/cyborg.dm index 9830027db72..c7ee6b4d7b0 100644 --- a/code/_onclick/cyborg.dm +++ b/code/_onclick/cyborg.dm @@ -37,7 +37,7 @@ return if(W == A) - next_move = world.time + 10 + next_move = world.time + 8 if(W.flags&USEDELAY) next_move += 5 @@ -47,7 +47,7 @@ // cyborgs are prohibited from using storage items so we can I think safely remove (A.loc in contents) if(A == loc || (A in loc) || (A in contents)) // No adjacency checks - next_move = world.time + 10 + next_move = world.time + 8 if(W.flags&USEDELAY) next_move += 5 diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index ce8d3e8c081..5d07ab0b2cf 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -352,5 +352,5 @@ if(usr.attack_ui(slot_id)) usr.update_inv_l_hand(0) usr.update_inv_r_hand(0) - usr.next_move = world.time+2 + usr.next_move = world.time+6 return 1 diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 588458e194b..4b1174697d0 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -128,10 +128,10 @@ if(istext(selhand)) selhand = lowertext(selhand) - if(selhand == "right" || selhand == "r") - selhand = 0 - if(selhand == "left" || selhand == "l") - selhand = 1 + if(selhand == "right" || selhand == "r") + selhand = 0 + if(selhand == "left" || selhand == "l") + selhand = 1 if(selhand != src.hand) swap_hand() diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 0d6d5cfba18..4ae03ad6f05 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -254,6 +254,8 @@ var/list/slot_equipment_priority = list( \ if (W) W.attack_self(src) update_inv_r_hand(0) + if(next_move < world.time) + next_move = world.time + 2 return /*