Advertisement
Guest User

Untitled

a guest
Aug 5th, 2015
172
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.91 KB | None | 0 0
  1. //{ keyboard_key
  2. #define keyboard_key_get_code
  3. /// keyboard_key_get_code(name:string):int
  4. var r = keyboard_key_codes[?string_lower(argument[0])];
  5. if (!is_undefined(r)) return r;
  6. return -1;
  7. #define keyboard_key_get_name
  8. /// keyboard_key_get_name(code:int):string
  9. var code = argument[0];
  10. var r = keyboard_key_names[?code];
  11. if (!is_undefined(r)) return r;
  12. if (code < 0) return "none";
  13. return "key" + string(code);
  14. #define keyboard_key_init
  15. /// keyboard_key_init()
  16. globalvar keyboard_key_names, keyboard_key_codes;
  17. keyboard_key_names = ds_map_create();
  18. keyboard_key_codes = ds_map_create();
  19. var k;
  20. var c;
  21. keyboard_key_names[?27] = "escape";
  22. keyboard_key_codes[?"escape"] = 27;
  23. keyboard_key_codes[?"esc"] = 27;
  24. keyboard_key_names[?32] = "space";
  25. keyboard_key_codes[?"space"] = 32;
  26. keyboard_key_names[?13] = "enter";
  27. keyboard_key_codes[?"enter"] = 13;
  28. keyboard_key_codes[?"return"] = 13;
  29. keyboard_key_names[?37] = "left";
  30. keyboard_key_codes[?"left"] = 37;
  31. keyboard_key_names[?39] = "right";
  32. keyboard_key_codes[?"right"] = 39;
  33. keyboard_key_names[?38] = "up";
  34. keyboard_key_codes[?"up"] = 38;
  35. keyboard_key_names[?40] = "down";
  36. keyboard_key_codes[?"down"] = 40;
  37. keyboard_key_names[?8] = "backspace";
  38. keyboard_key_codes[?"backspace"] = 8;
  39. keyboard_key_codes[?"bksp"] = 8;
  40. keyboard_key_names[?9] = "tab";
  41. keyboard_key_codes[?"tab"] = 9;
  42. keyboard_key_names[?16] = "shift";
  43. keyboard_key_codes[?"shift"] = 16;
  44. keyboard_key_names[?17] = "control";
  45. keyboard_key_codes[?"control"] = 17;
  46. keyboard_key_codes[?"ctrl"] = 17;
  47. keyboard_key_names[?18] = "alt";
  48. keyboard_key_codes[?"alt"] = 18;
  49. keyboard_key_names[?19] = "pause";
  50. keyboard_key_codes[?"pause"] = 19;
  51. keyboard_key_names[?20] = "capslock";
  52. keyboard_key_codes[?"capslock"] = 20;
  53. keyboard_key_codes[?"caps"] = 20;
  54. keyboard_key_names[?160] = "leftshift";
  55. keyboard_key_codes[?"leftshift"] = 160;
  56. keyboard_key_codes[?"lshift"] = 160;
  57. keyboard_key_names[?161] = "rightshift";
  58. keyboard_key_codes[?"rightshift"] = 161;
  59. keyboard_key_codes[?"rshift"] = 161;
  60. keyboard_key_names[?162] = "leftcontrol";
  61. keyboard_key_codes[?"leftcontrol"] = 162;
  62. keyboard_key_codes[?"lcontrol"] = 162;
  63. keyboard_key_codes[?"lctrl"] = 162;
  64. keyboard_key_names[?163] = "rightcontrol";
  65. keyboard_key_codes[?"rightcontrol"] = 163;
  66. keyboard_key_codes[?"rcontrol"] = 163;
  67. keyboard_key_codes[?"rctrl"] = 163;
  68. keyboard_key_names[?164] = "leftalt";
  69. keyboard_key_codes[?"leftalt"] = 164;
  70. keyboard_key_codes[?"lalt"] = 164;
  71. keyboard_key_names[?165] = "rightalt";
  72. keyboard_key_codes[?"rightalt"] = 165;
  73. keyboard_key_codes[?"ralt"] = 165;
  74. keyboard_key_names[?91] = "windows";
  75. keyboard_key_codes[?"windows"] = 91;
  76. keyboard_key_codes[?"system"] = 91;
  77. keyboard_key_codes[?"win"] = 91;
  78. keyboard_key_codes[?"sys"] = 91;
  79. keyboard_key_names[?92] = "rightwindows";
  80. keyboard_key_codes[?"rightwindows"] = 92;
  81. keyboard_key_codes[?"rightsystem"] = 92;
  82. keyboard_key_codes[?"rwin"] = 92;
  83. keyboard_key_codes[?"rsys"] = 92;
  84. keyboard_key_names[?33] = "pageup";
  85. keyboard_key_codes[?"pageup"] = 33;
  86. keyboard_key_codes[?"pgup"] = 33;
  87. keyboard_key_names[?34] = "pagedown";
  88. keyboard_key_codes[?"pagedown"] = 34;
  89. keyboard_key_codes[?"pgdown"] = 34;
  90. keyboard_key_names[?35] = "end";
  91. keyboard_key_codes[?"end"] = 35;
  92. keyboard_key_names[?36] = "home";
  93. keyboard_key_codes[?"home"] = 36;
  94. keyboard_key_names[?44] = "printscreen";
  95. keyboard_key_codes[?"printscreen"] = 44;
  96. keyboard_key_codes[?"prtscr"] = 44;
  97. keyboard_key_codes[?"sysrq"] = 44;
  98. keyboard_key_names[?45] = "insert";
  99. keyboard_key_codes[?"insert"] = 45;
  100. keyboard_key_codes[?"ins"] = 45;
  101. keyboard_key_names[?46] = "delete";
  102. keyboard_key_codes[?"delete"] = 46;
  103. keyboard_key_codes[?"del"] = 46;
  104. keyboard_key_names[?145] = "scrolllock";
  105. keyboard_key_codes[?"scrolllock"] = 145;
  106. keyboard_key_codes[?"scrlck"] = 145;
  107. keyboard_key_names[?186] = "semicolon";
  108. keyboard_key_codes[?"semicolon"] = 186;
  109. keyboard_key_codes[?"colon"] = 186;
  110. keyboard_key_codes[?":"] = 186;
  111. keyboard_key_codes[?";"] = 186;
  112. keyboard_key_names[?187] = "equals";
  113. keyboard_key_codes[?"equals"] = 187;
  114. keyboard_key_codes[?"="] = 187;
  115. keyboard_key_names[?188] = "comma";
  116. keyboard_key_codes[?"comma"] = 188;
  117. keyboard_key_codes[?"less"] = 188;
  118. keyboard_key_codes[?","] = 188;
  119. keyboard_key_codes[?"<"] = 188;
  120. keyboard_key_names[?189] = "underscore";
  121. keyboard_key_codes[?"underscore"] = 189;
  122. keyboard_key_codes[?"_"] = 189;
  123. keyboard_key_names[?190] = "period";
  124. keyboard_key_codes[?"period"] = 190;
  125. keyboard_key_codes[?"dot"] = 190;
  126. keyboard_key_codes[?"more"] = 190;
  127. keyboard_key_codes[?"."] = 190;
  128. keyboard_key_codes[?">"] = 190;
  129. keyboard_key_names[?191] = "slash";
  130. keyboard_key_codes[?"slash"] = 191;
  131. keyboard_key_codes[?"?"] = 191;
  132. keyboard_key_codes[?"/"] = 191;
  133. keyboard_key_names[?192] = "tilde";
  134. keyboard_key_codes[?"tilde"] = 192;
  135. keyboard_key_codes[?"~"] = 192;
  136. keyboard_key_codes[?"`"] = 192;
  137. keyboard_key_names[?219] = "openbracket";
  138. keyboard_key_codes[?"openbracket"] = 219;
  139. keyboard_key_codes[?"["] = 219;
  140. keyboard_key_codes[?"{"] = 219;
  141. keyboard_key_names[?220] = "backslash";
  142. keyboard_key_codes[?"backslash"] = 220;
  143. keyboard_key_codes[?"\"] = 220;
  144. keyboard_key_codes[?"|"] = 220;
  145. keyboard_key_names[?221] = "closebracket";
  146. keyboard_key_codes[?"closebracket"] = 221;
  147. keyboard_key_codes[?"]"] = 221;
  148. keyboard_key_codes[?"}"] = 221;
  149. keyboard_key_names[?222] = "quote";
  150. keyboard_key_codes[?"quote"] = 222;
  151. keyboard_key_codes[?"apostrophe"] = 222;
  152. keyboard_key_codes[?"'"] = 222;
  153. keyboard_key_codes[?'"'] = 222;
  154. for (k = 65; k <= 90; k++) {
  155. c = chr(k + 32);
  156. keyboard_key_names[?k] = c;
  157. keyboard_key_codes[?c] = k;
  158. };
  159. for (k = 48; k <= 57; k++) {
  160. c = "d" + chr(k);
  161. keyboard_key_names[?k] = c;
  162. keyboard_key_codes[?c] = k;
  163. c = "dig" + chr(k);
  164. keyboard_key_codes[?c] = k;
  165. c = "digit" + chr(k);
  166. keyboard_key_codes[?c] = k;
  167. c = chr(k);
  168. keyboard_key_codes[?c] = k;
  169. };
  170. for (k = 112; k <= 123; k++) {
  171. c = "f" + chr(k - 111);
  172. keyboard_key_names[?k] = c;
  173. keyboard_key_codes[?c] = k;
  174. };
  175. keyboard_key_names[?144] = "numlock";
  176. keyboard_key_codes[?"numlock"] = 144;
  177. keyboard_key_names[?111] = "divide";
  178. keyboard_key_codes[?"divide"] = 111;
  179. keyboard_key_codes[?"div"] = 111;
  180. keyboard_key_codes[?"numdiv"] = 111;
  181. keyboard_key_names[?106] = "multiply";
  182. keyboard_key_codes[?"multiply"] = 106;
  183. keyboard_key_codes[?"mul"] = 106;
  184. keyboard_key_codes[?"nummul"] = 106;
  185. keyboard_key_codes[?"*"] = 106;
  186. keyboard_key_names[?107] = "add";
  187. keyboard_key_codes[?"add"] = 107;
  188. keyboard_key_codes[?"plus"] = 107;
  189. keyboard_key_codes[?"numadd"] = 107;
  190. keyboard_key_codes[?"+"] = 107;
  191. keyboard_key_names[?109] = "subtract";
  192. keyboard_key_codes[?"subtract"] = 109;
  193. keyboard_key_codes[?"minus"] = 109;
  194. keyboard_key_codes[?"numsub"] = 109;
  195. keyboard_key_codes[?"-"] = 109;
  196. keyboard_key_names[?110] = "numdel";
  197. keyboard_key_codes[?"numdel"] = 110;
  198. keyboard_key_codes[?"numperiod"] = 110;
  199. for (k = 96; k <= 105; k++) {
  200. c = "num" + string((k - 96));
  201. keyboard_key_names[?k] = c;
  202. keyboard_key_codes[?c] = k;
  203. c = "numpad" + string((k - 96));
  204. keyboard_key_codes[?c] = k;
  205. };
  206. for (k = 0; k <= 255; k++) {
  207. c = "k" + string(k);
  208. keyboard_key_codes[?c] = k;
  209. c = "key" + string(k);
  210. keyboard_key_codes[?c] = k;
  211. };
  212. //}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement