/datum/keybinding/living category = CATEGORY_HUMAN weight = WEIGHT_MOB /datum/keybinding/living/can_use(client/user) return isliving(user.mob) /datum/keybinding/living/resist hotkey_keys = list("B") name = "resist" full_name = "Resist" description = "Break free of your current state. Handcuffed? on fire? Resist!" keybind_signal = COMSIG_KB_LIVING_RESIST_DOWN /datum/keybinding/living/resist/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return var/mob/living/owner = user.mob owner.resist() if (owner.hud_used?.screen_objects[HUD_MOB_RESIST]) owner.hud_used.screen_objects[HUD_MOB_RESIST].icon_state = "[owner.hud_used.screen_objects[HUD_MOB_RESIST].base_icon_state]_on" return TRUE /datum/keybinding/living/resist/up(client/user, turf/target) . = ..() if(.) return var/mob/living/owner = user.mob if (owner.hud_used?.screen_objects[HUD_MOB_RESIST]) owner.hud_used.screen_objects[HUD_MOB_RESIST].icon_state = owner.hud_used.screen_objects[HUD_MOB_RESIST].base_icon_state /datum/keybinding/living/look_up // hotkey_keys = list("L") // ORIGINAL hotkey_keys = list("P") //SKYRAT EDIT CHANGE - CUSTOMIZATION name = "look up" full_name = "Look Up" description = "Look up at the next z-level. Only works if directly below open space." keybind_signal = COMSIG_KB_LIVING_LOOKUP_DOWN /datum/keybinding/living/look_up/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return var/mob/living/L = user.mob L.look_up() return TRUE /datum/keybinding/living/look_up/up(client/user, turf/target) . = ..() var/mob/living/L = user.mob L.end_look() return TRUE /datum/keybinding/living/look_down // hotkey_keys = list(";") // ORIGINAL hotkey_keys = list("\[") //SKYRAT EDIT CHANGE - CUSTOMIZATION name = "look down" full_name = "Look Down" description = "Look down at the previous z-level. Only works if directly above open space." keybind_signal = COMSIG_KB_LIVING_LOOKDOWN_DOWN /datum/keybinding/living/look_down/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return var/mob/living/L = user.mob L.look_down() return TRUE /datum/keybinding/living/look_down/up(client/user, turf/target) . = ..() var/mob/living/L = user.mob L.end_look() return TRUE /datum/keybinding/living/rest hotkey_keys = list("U") name = "rest" full_name = "Rest" description = "Lay down, or get up." keybind_signal = COMSIG_KB_LIVING_REST_DOWN /datum/keybinding/living/rest/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return var/mob/living/living_mob = user.mob living_mob.toggle_resting() return TRUE /datum/keybinding/living/toggle_combat_mode hotkey_keys = list("F") name = "toggle_combat_mode" full_name = "Toggle Combat Mode" description = "Toggles combat mode. Like Help/Harm but cooler." keybind_signal = COMSIG_KB_LIVING_TOGGLE_COMBAT_DOWN /datum/keybinding/living/toggle_combat_mode/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return var/mob/living/user_mob = user.mob user_mob.set_combat_mode(!user_mob.combat_mode, FALSE) /datum/keybinding/living/enable_combat_mode hotkey_keys = list("4") name = "enable_combat_mode" full_name = "Enable Combat Mode" description = "Enable combat mode." keybind_signal = COMSIG_KB_LIVING_ENABLE_COMBAT_DOWN /datum/keybinding/living/enable_combat_mode/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return var/mob/living/user_mob = user.mob user_mob.set_combat_mode(TRUE, silent = FALSE) /datum/keybinding/living/disable_combat_mode hotkey_keys = list("1") name = "disable_combat_mode" full_name = "Disable Combat Mode" description = "Disable combat mode." keybind_signal = COMSIG_KB_LIVING_DISABLE_COMBAT_DOWN /datum/keybinding/living/disable_combat_mode/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return var/mob/living/user_mob = user.mob user_mob.set_combat_mode(FALSE, silent = FALSE) /datum/keybinding/living/toggle_move_intent hotkey_keys = list("Alt") //SKYRAT EDIT CHANGE - C IS FOR COMBAT INDICATOR - ORIGINAL: hotkey_keys = list("C") name = "toggle_move_intent" full_name = "Hold to toggle move intent" description = "Held down to cycle to the other move intent, release to cycle back" keybind_signal = COMSIG_KB_LIVING_TOGGLEMOVEINTENT_DOWN /datum/keybinding/living/toggle_move_intent/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return var/mob/living/M = user.mob M.toggle_move_intent() return TRUE /datum/keybinding/living/toggle_move_intent/up(client/user, turf/target) . = ..() var/mob/living/M = user.mob M.toggle_move_intent() return TRUE /datum/keybinding/living/toggle_move_intent_alternative hotkey_keys = list(UNBOUND_KEY) name = "toggle_move_intent_alt" full_name = "press to cycle move intent" description = "Pressing this cycle to the opposite move intent, does not cycle back" keybind_signal = COMSIG_KB_LIVING_TOGGLEMOVEINTENTALT_DOWN /datum/keybinding/living/toggle_move_intent_alternative/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return var/mob/living/M = user.mob M.toggle_move_intent() return TRUE /datum/keybinding/living/toggle_throw_mode hotkey_keys = list("R", "Southwest") // END name = "toggle_throw_mode" full_name = "Toggle throw mode" description = "Toggle throwing the current item or not." keybind_signal = COMSIG_KB_LIVING_TOGGLETHROWMODE_DOWN /datum/keybinding/living/toggle_throw_mode/down(client/user) . = ..() if(.) return var/mob/living/living_user = user.mob living_user.toggle_throw_mode() return TRUE /datum/keybinding/living/hold_throw_mode hotkey_keys = list("Space") name = "hold_throw_mode" full_name = "Hold throw mode" description = "Hold this to turn on throw mode, and release it to turn off throw mode" keybind_signal = COMSIG_KB_LIVING_HOLDTHROWMODE_DOWN /datum/keybinding/living/hold_throw_mode/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return var/mob/living/living_user = user.mob living_user.throw_mode_on(THROW_MODE_HOLD) /datum/keybinding/living/hold_throw_mode/up(client/user, turf/target) . = ..() if(.) return var/mob/living/living_user = user.mob living_user.throw_mode_off(THROW_MODE_HOLD) /datum/keybinding/living/give hotkey_keys = list("G") name = "Give_Item" full_name = "Give item" description = "Give the item you're currently holding" keybind_signal = COMSIG_KB_LIVING_GIVEITEM_DOWN /datum/keybinding/living/give/can_use(client/user) . = ..() if (!.) return FALSE if(!user.mob) return FALSE if(!HAS_TRAIT(user.mob, TRAIT_CAN_HOLD_ITEMS)) return FALSE return TRUE /datum/keybinding/living/give/down(client/user, turf/target, mousepos_x, mousepos_y) . = ..() if(.) return var/mob/living/living_user = user.mob if(!HAS_TRAIT(living_user, TRAIT_CAN_HOLD_ITEMS)) return living_user.give()