diff --git a/code/datums/components/riding.dm b/code/datums/components/riding.dm index 5704924a29ce..8ea36096a58d 100644 --- a/code/datums/components/riding.dm +++ b/code/datums/components/riding.dm @@ -316,12 +316,18 @@ /datum/component/riding/cyborg/force_dismount(mob/living/M) var/atom/movable/AM = parent AM.unbuckle_mob(M) + var/mob/living/silicon/robot/S = AM + if(S.throwcooldown) + to_chat(S, "You have to wait for your motors to recharge") + return var/turf/target = get_edge_target_turf(AM, AM.dir) var/turf/targetm = get_step(get_turf(AM), AM.dir) M.Move(targetm) M.visible_message("[M] is thrown clear of [AM]!") M.throw_at(target, 14, 5, AM) M.Paralyze(60) + S.throwcooldown = TRUE + addtimer(VARSET_CALLBACK(S, throwcooldown, FALSE), 10 SECONDS) /datum/component/riding/proc/equip_buckle_inhands(mob/living/carbon/human/user, amount_required = 1, riding_target_override = null) var/atom/movable/AM = parent diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 7abd1802eed5..e782038688b9 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -16,6 +16,8 @@ var/obj/item/robot_suit/robot_suit = null ///Used for deconstruction to remember what the borg was constructed out of.. var/obj/item/mmi/mmi = null + var/throwcooldown = FALSE /// Used to determine cooldown for spin. + var/shell = FALSE var/deployed = FALSE var/mob/living/silicon/ai/mainframe = null