From 526d25741033371cb79e88e27e3b3627fb024fbd Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Mon, 20 Jul 2020 11:48:08 -0700 Subject: [PATCH] fix --- code/_onclick/telekinesis.dm | 5 +++-- code/game/mecha/mecha.dm | 2 ++ code/game/mecha/mecha_defense.dm | 4 ---- code/game/objects/structures/watercloset.dm | 3 ++- code/game/turfs/simulated/floor/plating.dm | 2 +- code/game/turfs/simulated/walls.dm | 4 ++-- code/modules/antagonists/bloodsucker/powers/mesmerize.dm | 4 +--- code/modules/antagonists/bloodsucker/powers/trespass.dm | 5 ----- code/modules/antagonists/swarmer/swarmer.dm | 4 ++-- .../mob/living/simple_animal/hostile/jungle/leaper.dm | 2 +- code/modules/paperwork/paperbin.dm | 4 ++-- modular_citadel/code/datums/status_effects/chems.dm | 9 --------- .../code/modules/reagents/chemistry/reagents/SDGF.dm | 6 +++--- 13 files changed, 19 insertions(+), 35 deletions(-) diff --git a/code/_onclick/telekinesis.dm b/code/_onclick/telekinesis.dm index f95ebf82b5..73d834dd64 100644 --- a/code/_onclick/telekinesis.dm +++ b/code/_onclick/telekinesis.dm @@ -123,7 +123,8 @@ . = ..() if(!target || !user) return - + if(!user.CheckActionCooldown()) + return if(!focus) focus_object(target) return @@ -145,7 +146,7 @@ else apply_focus_overlay() focus.throw_at(target, 10, 1,user) - user.changeNext_move(CLICK_CD_MELEE) + user.DelayNextAction(immediate = FALSE) update_icon() /proc/tkMaxRangeCheck(mob/user, atom/target) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index d2340a15ea..5b691607db 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -24,6 +24,8 @@ infra_luminosity = 15 //byond implementation is bugged. force = 5 flags_1 = HEAR_1|BLOCK_FACE_ATOM_1 + attack_hand_speed = CLICK_CD_MELEE + attack_hand_is_action = TRUE var/can_move = 0 //time of next allowed movement var/mob/living/occupant = null var/step_in = 10 //make a step in step_in/10 sec. diff --git a/code/game/mecha/mecha_defense.dm b/code/game/mecha/mecha_defense.dm index 27bfcb6bd9..f519814583 100644 --- a/code/game/mecha/mecha_defense.dm +++ b/code/game/mecha/mecha_defense.dm @@ -55,10 +55,6 @@ /obj/mecha/on_attack_hand(mob/living/user, act_intent = user.a_intent, unarmed_attack_flags) - . = ..() - if(.) - return - user.changeNext_move(CLICK_CD_MELEE) // Ugh. Ideally we shouldn't be setting cooldowns outside of click code. user.do_attack_animation(src, ATTACK_EFFECT_PUNCH) playsound(loc, 'sound/weapons/tap.ogg', 40, 1, -1) user.visible_message("[user] hits [name]. Nothing happens", null, null, COMBAT_MESSAGE_RANGE) diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm index 00cf65e7b1..c52249686a 100644 --- a/code/game/objects/structures/watercloset.dm +++ b/code/game/objects/structures/watercloset.dm @@ -167,6 +167,8 @@ icon_state = "urinal" density = FALSE anchored = TRUE + attack_hand_speed = CLICK_CD_MELEE + attack_hand_is_action = TRUE var/exposed = 0 // can you currently put an item inside var/obj/item/hiddenitem = null // what's in the urinal @@ -181,7 +183,6 @@ if(GM.loc != get_turf(src)) to_chat(user, "[GM.name] needs to be on [src].") return - user.changeNext_move(CLICK_CD_MELEE) user.visible_message("[user] slams [GM] into [src]!", "You slam [GM] into [src]!") GM.adjustBruteLoss(8) else diff --git a/code/game/turfs/simulated/floor/plating.dm b/code/game/turfs/simulated/floor/plating.dm index f26a4b827a..ac80bddd00 100644 --- a/code/game/turfs/simulated/floor/plating.dm +++ b/code/game/turfs/simulated/floor/plating.dm @@ -124,7 +124,7 @@ ChangeTurf(/turf/open/floor/plating, flags = CHANGETURF_INHERIT_AIR) else playsound(src, 'sound/weapons/tap.ogg', 100, TRUE) //The attack sound is muffled by the foam itself - user.changeNext_move(CLICK_CD_MELEE) + user.DelayNextAction(CLICK_CD_MELEE) user.do_attack_animation(src) if(prob(I.force * 20 - 25)) user.visible_message("[user] smashes through [src]!", \ diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index 92a156cf82..7983e60f53 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -137,14 +137,14 @@ return TRUE /turf/closed/wall/on_attack_hand(mob/user, act_intent = user.a_intent, unarmed_attack_flags) - if(!M.CheckActionCooldown(CLICK_CD_MELEE)) + if(!user.CheckActionCooldown(CLICK_CD_MELEE)) return to_chat(user, "You push the wall but nothing happens!") playsound(src, 'sound/weapons/genhit.ogg', 25, 1) add_fingerprint(user) /turf/closed/wall/attackby(obj/item/W, mob/user, params) - if(!M.CheckActionCooldown(CLICK_CD_MELEE)) + if(!user.CheckActionCooldown(CLICK_CD_MELEE)) return if (!user.IsAdvancedToolUser()) to_chat(user, "You don't have the dexterity to do this!") diff --git a/code/modules/antagonists/bloodsucker/powers/mesmerize.dm b/code/modules/antagonists/bloodsucker/powers/mesmerize.dm index fccef4fb0c..efdd312c6e 100644 --- a/code/modules/antagonists/bloodsucker/powers/mesmerize.dm +++ b/code/modules/antagonists/bloodsucker/powers/mesmerize.dm @@ -128,11 +128,9 @@ target.face_atom(L) target.Stun(power_time) to_chat(L, "[target] is fixed in place by your hypnotic gaze.") - target.next_move = world.time + power_time // <--- Use direct change instead. We want an unmodified delay to their next move // target.changeNext_move(power_time) // check click.dm - target.mob_transforming = TRUE // <--- Fuck it. We tried using next_move, but they could STILL resist. We're just doing a hard freeze. + target.DelayNextAction(power_time) spawn(power_time) if(istype(target) && success) - target.mob_transforming = FALSE if(istype(L) && target.stat == CONSCIOUS && (target in L.fov_view(10))) // They Woke Up! (Notice if within view) to_chat(L, "[target] has snapped out of their trance.") diff --git a/code/modules/antagonists/bloodsucker/powers/trespass.dm b/code/modules/antagonists/bloodsucker/powers/trespass.dm index cad3eeb88b..56b72a562e 100644 --- a/code/modules/antagonists/bloodsucker/powers/trespass.dm +++ b/code/modules/antagonists/bloodsucker/powers/trespass.dm @@ -81,9 +81,7 @@ var/mist_delay = max(5, 20 - level_current * 2.5) // Level up and do this faster. // Freeze Me - user.next_move = world.time + mist_delay user.Stun(mist_delay, ignore_canstun = TRUE) - user.mob_transforming = TRUE user.density = FALSE var/invis_was = user.invisibility user.invisibility = INVISIBILITY_MAXIMUM @@ -96,7 +94,6 @@ // Move & Freeze if(isturf(target_turf)) do_teleport(owner, target_turf, no_effects=TRUE, channel = TELEPORT_CHANNEL_QUANTUM) // in teleport.dm? - user.next_move = world.time + mist_delay / 2 user.Stun(mist_delay / 2, ignore_canstun = TRUE) // Wait... @@ -104,9 +101,7 @@ // Un-Hide & Freeze user.dir = get_dir(my_turf, target_turf) - user.next_move = world.time + mist_delay / 2 user.Stun(mist_delay / 2, ignore_canstun = TRUE) - user.mob_transforming = FALSE user.density = 1 user.invisibility = invis_was diff --git a/code/modules/antagonists/swarmer/swarmer.dm b/code/modules/antagonists/swarmer/swarmer.dm index edc1abbf5a..82da11a9f6 100644 --- a/code/modules/antagonists/swarmer/swarmer.dm +++ b/code/modules/antagonists/swarmer/swarmer.dm @@ -498,7 +498,7 @@ if(resource_gain) resources += resource_gain do_attack_animation(target) - changeNext_move(CLICK_CD_MELEE) + DelayNextAction(CLICK_CD_MELEE) var/obj/effect/temp_visual/swarmer/integrate/I = new /obj/effect/temp_visual/swarmer/integrate(get_turf(target)) I.pixel_x = target.pixel_x I.pixel_y = target.pixel_y @@ -518,7 +518,7 @@ /mob/living/simple_animal/hostile/swarmer/proc/DisIntegrate(atom/movable/target) new /obj/effect/temp_visual/swarmer/disintegration(get_turf(target)) do_attack_animation(target) - changeNext_move(CLICK_CD_MELEE) + DelayNextAction(CLICK_CD_MELEE) target.ex_act(EXPLODE_LIGHT) /mob/living/simple_animal/hostile/swarmer/proc/DisperseTarget(mob/living/target) diff --git a/code/modules/mob/living/simple_animal/hostile/jungle/leaper.dm b/code/modules/mob/living/simple_animal/hostile/jungle/leaper.dm index 51f61fa158..0a510f2b07 100644 --- a/code/modules/mob/living/simple_animal/hostile/jungle/leaper.dm +++ b/code/modules/mob/living/simple_animal/hostile/jungle/leaper.dm @@ -136,7 +136,7 @@ target = A if(!isturf(loc)) return - if(next_move > world.time) + if(!CheckActionCooldown()) return if(hopping) return diff --git a/code/modules/paperwork/paperbin.dm b/code/modules/paperwork/paperbin.dm index 53b7aafd0c..28cb5ffae9 100644 --- a/code/modules/paperwork/paperbin.dm +++ b/code/modules/paperwork/paperbin.dm @@ -11,8 +11,8 @@ throw_speed = 3 throw_range = 7 pressure_resistance = 8 - clickdelay_attack_hand_is_action = TRUE - clickdelay_attack_hand_preattack_cooldown = CLICK_CD_MELEE + attack_hand_speed = CLICK_CD_RAPID + attack_hand_is_action = TRUE var/papertype = /obj/item/paper var/total_paper = 30 var/list/papers = list() diff --git a/modular_citadel/code/datums/status_effects/chems.dm b/modular_citadel/code/datums/status_effects/chems.dm index 47eef6a820..00650b9831 100644 --- a/modular_citadel/code/datums/status_effects/chems.dm +++ b/modular_citadel/code/datums/status_effects/chems.dm @@ -53,7 +53,6 @@ if(last_checked_size != B.cached_size) H.add_or_update_variable_movespeed_modifier(/datum/movespeed_modifier/status_effect/breast_hypertrophy, multiplicative_slowdown = moveCalc) - sizeMoveMod(moveCalc) if (B.size == "huge") if(prob(1)) @@ -70,16 +69,8 @@ log_reagent("FERMICHEM: [owner]'s breasts has reduced to an acceptable size. ID: [owner.key]") to_chat(owner, "Your expansive chest has become a more managable size, liberating your movements.") owner.remove_movespeed_modifier(/datum/movespeed_modifier/status_effect/breast_hypertrophy) - sizeMoveMod(1) return ..() -/datum/status_effect/chem/breast_enlarger/proc/sizeMoveMod(var/value) - if(cachedmoveCalc == value) - return - owner.next_move_modifier /= cachedmoveCalc - owner.next_move_modifier *= value - cachedmoveCalc = value - //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /datum/status_effect/chem/penis_enlarger diff --git a/modular_citadel/code/modules/reagents/chemistry/reagents/SDGF.dm b/modular_citadel/code/modules/reagents/chemistry/reagents/SDGF.dm index a16cefb8f8..f3059a480a 100644 --- a/modular_citadel/code/modules/reagents/chemistry/reagents/SDGF.dm +++ b/modular_citadel/code/modules/reagents/chemistry/reagents/SDGF.dm @@ -112,7 +112,7 @@ IMPORTANT FACTORS TO CONSIDER WHILE BALANCING M.visible_message("[M] suddenly shudders, and splits into two identical twins!") SM.copy_languages(M, LANGUAGE_MIND) playerClone = TRUE - M.next_move_modifier = 1 + M.action_cooldown_mod = 1 M.adjust_nutrition(-500) //Damage the clone @@ -154,7 +154,7 @@ IMPORTANT FACTORS TO CONSIDER WHILE BALANCING M.adjust_nutrition(M.nutrition/5) if(50) to_chat(M, "The synthetic cells begin to merge with your body, it feels like your body is made of a viscous water, making your movements difficult.") - M.next_move_modifier += 4//If this makes you fast then please fix it, it should make you slow!! + M.action_cooldown_mod += 4//If this makes you fast then please fix it, it should make you slow!! //candidates = pollGhostCandidates("Do you want to play as a clone of [M.name] and do you agree to respect their character and act in a similar manner to them? I swear to god if you diddle them I will be very disapointed in you. ", "FermiClone", null, ROLE_SENTIENCE, 300) // see poll_ignore.dm, should allow admins to ban greifers or bullies if(51 to 79) M.adjust_nutrition(M.nutrition/2) @@ -164,7 +164,7 @@ IMPORTANT FACTORS TO CONSIDER WHILE BALANCING M.set_nutrition(20000) //https://www.youtube.com/watch?v=Bj_YLenOlZI if(86)//Upon splitting, you get really hungry and are capable again. Deletes the chem after you're done. M.set_nutrition(15)//YOU BEST BE EATTING AFTER THIS YOU CUTIE - M.next_move_modifier -= 4 + M.action_cooldown_mod -= 4 to_chat(M, "Your body splits away from the cell clone of yourself, leaving you with a drained and hollow feeling inside.") //clone