* demodularize interface * keybindings * binds * prefs * loose ends * globals * changes * s * datum ref lists * ok * fixes * fixes * fix * ok * sigh * sigh * indicators * let's play the move code around game * let's play the i didn't comma my lists game * let's play the indent game * let's play hte spelling bee * let's fail the spelling bee * LET'S PLAY THe HOW HARd IS IT TO SPELL A PROC GAME * let's play the bugfix game * bugfixes * improvements * Update bindings_client.dm * pixel shift * A * wups
89 lines
1.9 KiB
Plaintext
89 lines
1.9 KiB
Plaintext
// Technically the client argument is unncessary here since that SHOULD be src.client but let's not assume things
|
|
// All it takes is one badmin setting their focus to someone else's client to mess things up
|
|
// Or we can have NPC's send actual keypresses and detect that by seeing no client
|
|
|
|
/mob/key_down(_key, client/user)
|
|
switch(_key)
|
|
if("Delete", "H")
|
|
if(!pulling)
|
|
to_chat(src, "<span class='notice'>You are not pulling anything.</span>")
|
|
else
|
|
stop_pulling()
|
|
return
|
|
if("X", "Northeast") // Northeast is Page-up
|
|
swap_hand()
|
|
return
|
|
if("Y", "Z", "Southeast") // Southeast is Page-down
|
|
mode() // attack_self(). No idea who came up with "mode()"
|
|
return
|
|
if("Q", "Northwest") // Northwest is Home
|
|
var/obj/item/I = get_active_held_item()
|
|
if(!I)
|
|
to_chat(src, "<span class='warning'>You have nothing to drop in your hand!</span>")
|
|
else
|
|
dropItemToGround(I)
|
|
return
|
|
if("E")
|
|
quick_equip()
|
|
return
|
|
if("Alt")
|
|
toggle_move_intent()
|
|
return
|
|
//Bodypart selections
|
|
if("Numpad8")
|
|
user.body_toggle_head()
|
|
return
|
|
if("Numpad4")
|
|
user.body_r_arm()
|
|
return
|
|
if("Numpad5")
|
|
user.body_chest()
|
|
return
|
|
if("Numpad6")
|
|
user.body_l_arm()
|
|
return
|
|
if("Numpad1")
|
|
user.body_r_leg()
|
|
return
|
|
if("Numpad2")
|
|
user.body_groin()
|
|
return
|
|
if("Numpad3")
|
|
user.body_l_leg()
|
|
return
|
|
|
|
if(client.keys_held["Ctrl"])
|
|
switch(SSinput.movement_keys[_key])
|
|
if(NORTH)
|
|
if(client.keys_held["Shift"])
|
|
northshift()
|
|
else
|
|
northface()
|
|
return
|
|
if(SOUTH)
|
|
if(client.keys_held["Shift"])
|
|
southshift()
|
|
else
|
|
southface()
|
|
return
|
|
if(WEST)
|
|
if(client.keys_held["Shift"])
|
|
westshift()
|
|
else
|
|
westface()
|
|
return
|
|
if(EAST)
|
|
if(client.keys_held["Shift"])
|
|
eastshift()
|
|
else
|
|
eastface()
|
|
return
|
|
return ..()
|
|
|
|
/mob/key_up(_key, client/user)
|
|
switch(_key)
|
|
if("Alt")
|
|
toggle_move_intent()
|
|
return
|
|
return ..()
|