Difference between revisions of "Scripting"
From Wolfire Games Wiki
Line 58: | Line 58: | ||
'''Generic Key References''' | '''Generic Key References''' | ||
+ | <pre> | ||
#include "keyTranslator.h" | #include "keyTranslator.h" | ||
− | |||
3 | 3 | ||
− | |||
4 SDLKey keyToSDL(const std::string &s) | 4 SDLKey keyToSDL(const std::string &s) | ||
− | |||
5 { | 5 { | ||
− | |||
6 if (s == "backspace") | 6 if (s == "backspace") | ||
− | |||
7 return SDLK_BACKSPACE; | 7 return SDLK_BACKSPACE; | ||
− | |||
8 if (s == "tab") | 8 if (s == "tab") | ||
− | |||
9 return SDLK_TAB; | 9 return SDLK_TAB; | ||
− | |||
10 if (s == "clear") | 10 if (s == "clear") | ||
− | |||
11 return SDLK_CLEAR; | 11 return SDLK_CLEAR; | ||
− | |||
12 if (s == "return") | 12 if (s == "return") | ||
− | |||
13 return SDLK_RETURN; | 13 return SDLK_RETURN; | ||
− | |||
14 if (s == "pause") | 14 if (s == "pause") | ||
− | |||
15 return SDLK_PAUSE; | 15 return SDLK_PAUSE; | ||
− | |||
16 if (s == "esc") | 16 if (s == "esc") | ||
− | |||
17 return SDLK_ESCAPE; | 17 return SDLK_ESCAPE; | ||
− | |||
18 if (s == "space") | 18 if (s == "space") | ||
− | |||
19 return SDLK_SPACE; | 19 return SDLK_SPACE; | ||
− | |||
20 if (s == "!") | 20 if (s == "!") | ||
− | |||
21 return SDLK_EXCLAIM; | 21 return SDLK_EXCLAIM; | ||
− | |||
22 if (s == "\"") | 22 if (s == "\"") | ||
− | |||
23 return SDLK_QUOTEDBL; | 23 return SDLK_QUOTEDBL; | ||
− | |||
24 if (s == "#") | 24 if (s == "#") | ||
− | |||
25 return SDLK_HASH; | 25 return SDLK_HASH; | ||
− | |||
26 if (s == "$") | 26 if (s == "$") | ||
− | |||
27 return SDLK_DOLLAR; | 27 return SDLK_DOLLAR; | ||
− | |||
28 if (s == "&") | 28 if (s == "&") | ||
− | |||
29 return SDLK_AMPERSAND; | 29 return SDLK_AMPERSAND; | ||
− | |||
30 if (s == "\'") | 30 if (s == "\'") | ||
− | |||
31 return SDLK_QUOTE; | 31 return SDLK_QUOTE; | ||
− | |||
32 if (s == "(") | 32 if (s == "(") | ||
− | |||
33 return SDLK_LEFTPAREN; | 33 return SDLK_LEFTPAREN; | ||
− | |||
34 if (s == ")") | 34 if (s == ")") | ||
− | |||
35 return SDLK_RIGHTPAREN; | 35 return SDLK_RIGHTPAREN; | ||
− | |||
36 if (s == "*") | 36 if (s == "*") | ||
− | |||
37 return SDLK_ASTERISK; | 37 return SDLK_ASTERISK; | ||
− | |||
38 if (s == "+") | 38 if (s == "+") | ||
− | |||
39 return SDLK_PLUS; | 39 return SDLK_PLUS; | ||
− | |||
40 if (s == ",") | 40 if (s == ",") | ||
− | |||
41 return SDLK_COMMA; | 41 return SDLK_COMMA; | ||
− | |||
42 if (s == "-") | 42 if (s == "-") | ||
− | |||
43 return SDLK_MINUS; | 43 return SDLK_MINUS; | ||
− | |||
44 if (s == ".") | 44 if (s == ".") | ||
− | |||
45 return SDLK_PERIOD; | 45 return SDLK_PERIOD; | ||
− | |||
46 if (s == "/") | 46 if (s == "/") | ||
− | |||
47 return SDLK_SLASH; | 47 return SDLK_SLASH; | ||
− | |||
48 if (s == "0") | 48 if (s == "0") | ||
− | |||
49 return SDLK_0; | 49 return SDLK_0; | ||
− | |||
50 if (s == "1") | 50 if (s == "1") | ||
− | |||
51 return SDLK_1; | 51 return SDLK_1; | ||
− | |||
52 if (s == "2") | 52 if (s == "2") | ||
− | |||
53 return SDLK_2; | 53 return SDLK_2; | ||
− | |||
54 if (s == "3") | 54 if (s == "3") | ||
− | |||
55 return SDLK_3; | 55 return SDLK_3; | ||
− | |||
56 if (s == "4") | 56 if (s == "4") | ||
− | |||
57 return SDLK_4; | 57 return SDLK_4; | ||
− | |||
58 if (s == "5") | 58 if (s == "5") | ||
− | |||
59 return SDLK_5; | 59 return SDLK_5; | ||
− | |||
60 if (s == "6") | 60 if (s == "6") | ||
− | |||
61 return SDLK_6; | 61 return SDLK_6; | ||
− | |||
62 if (s == "7") | 62 if (s == "7") | ||
− | |||
63 return SDLK_7; | 63 return SDLK_7; | ||
− | |||
64 if (s == "8") | 64 if (s == "8") | ||
− | |||
65 return SDLK_8; | 65 return SDLK_8; | ||
− | |||
66 if (s == "9") | 66 if (s == "9") | ||
− | |||
67 return SDLK_9; | 67 return SDLK_9; | ||
− | |||
68 if (s == ":") | 68 if (s == ":") | ||
− | |||
69 return SDLK_COLON; | 69 return SDLK_COLON; | ||
− | |||
70 if (s == ";") | 70 if (s == ";") | ||
− | |||
71 return SDLK_SEMICOLON; | 71 return SDLK_SEMICOLON; | ||
− | |||
72 if (s == "<") | 72 if (s == "<") | ||
− | |||
73 return SDLK_LESS; | 73 return SDLK_LESS; | ||
− | |||
74 if (s == "=") | 74 if (s == "=") | ||
− | |||
75 return SDLK_EQUALS; | 75 return SDLK_EQUALS; | ||
− | |||
76 if (s == ">") | 76 if (s == ">") | ||
− | |||
77 return SDLK_GREATER; | 77 return SDLK_GREATER; | ||
− | |||
78 if (s == "?") | 78 if (s == "?") | ||
− | |||
79 return SDLK_QUESTION; | 79 return SDLK_QUESTION; | ||
− | |||
80 if (s == "@") | 80 if (s == "@") | ||
− | |||
81 return SDLK_AT; | 81 return SDLK_AT; | ||
− | |||
82 if (s == "[") | 82 if (s == "[") | ||
− | |||
83 return SDLK_LEFTBRACKET; | 83 return SDLK_LEFTBRACKET; | ||
− | |||
84 if (s == "\\") | 84 if (s == "\\") | ||
− | |||
85 return SDLK_BACKSLASH; | 85 return SDLK_BACKSLASH; | ||
− | |||
86 if (s == "]") | 86 if (s == "]") | ||
− | |||
87 return SDLK_RIGHTBRACKET; | 87 return SDLK_RIGHTBRACKET; | ||
− | |||
88 if (s == "^") | 88 if (s == "^") | ||
− | |||
89 return SDLK_CARET; | 89 return SDLK_CARET; | ||
− | |||
90 if (s == "_") | 90 if (s == "_") | ||
− | |||
91 return SDLK_UNDERSCORE; | 91 return SDLK_UNDERSCORE; | ||
− | |||
92 if (s == "`") | 92 if (s == "`") | ||
− | |||
93 return SDLK_BACKQUOTE; | 93 return SDLK_BACKQUOTE; | ||
− | |||
94 if (s == "a") | 94 if (s == "a") | ||
− | |||
95 return SDLK_a; | 95 return SDLK_a; | ||
− | |||
96 if (s == "b") | 96 if (s == "b") | ||
− | |||
97 return SDLK_b; | 97 return SDLK_b; | ||
− | |||
98 if (s == "c") | 98 if (s == "c") | ||
− | |||
99 return SDLK_c; | 99 return SDLK_c; | ||
− | |||
100 if (s == "d") | 100 if (s == "d") | ||
− | |||
101 return SDLK_d; | 101 return SDLK_d; | ||
− | |||
102 if (s == "e") | 102 if (s == "e") | ||
− | |||
103 return SDLK_e; | 103 return SDLK_e; | ||
− | |||
104 if (s == "f") | 104 if (s == "f") | ||
− | |||
105 return SDLK_f; | 105 return SDLK_f; | ||
− | |||
106 if (s == "g") | 106 if (s == "g") | ||
− | |||
107 return SDLK_g; | 107 return SDLK_g; | ||
− | |||
108 if (s == "h") | 108 if (s == "h") | ||
− | |||
109 return SDLK_h; | 109 return SDLK_h; | ||
− | |||
110 if (s == "i") | 110 if (s == "i") | ||
− | |||
111 return SDLK_i; | 111 return SDLK_i; | ||
− | |||
112 if (s == "j") | 112 if (s == "j") | ||
− | |||
113 return SDLK_j; | 113 return SDLK_j; | ||
− | |||
114 if (s == "k") | 114 if (s == "k") | ||
− | |||
115 return SDLK_k; | 115 return SDLK_k; | ||
− | |||
116 if (s == "l") | 116 if (s == "l") | ||
− | |||
117 return SDLK_l; | 117 return SDLK_l; | ||
− | |||
118 if (s == "m") | 118 if (s == "m") | ||
− | |||
119 return SDLK_m; | 119 return SDLK_m; | ||
120 if (s == "n") | 120 if (s == "n") | ||
Line 450: | Line 334: | ||
275 return (SDLKey)SDLK_SYSREQ; | 275 return (SDLKey)SDLK_SYSREQ; | ||
276 } | 276 } | ||
+ | </pre> | ||
[[Category:Overgrowth]] | [[Category:Overgrowth]] |
Revision as of 19:52, 25 February 2010
Overgrowth is using AngelScript as its core scripting language. The best AngelScript reference is here: [1]
Checking for Keypresses:
You can check for keypresses by using the boolean check function GetInputDown():
Syntax examples:
GetInputDown("a") | returns true if the 'a' key is being pressed, returns false if not |
GetInputDown("attack") | returns true if the left mouse button is being pressed, returns false if not |
GetInputDown("move_left") | returns true if the "left key" is being pressed, returns false if not (by default this key is defined in the config.txt to be the 'a' key) |
The following controls are designed to be relative to the player's preferences and are given a binding in the config.txt file.
Config.txt Dependent References
Predefined Term | Default binding in Config.txt | Scripting Reference Name |
---|---|---|
Left Key | a | move_left |
Right Key | d | move_right |
Up Key | w | move_up |
Down Key | s | move_down |
Crouch Key | left shift | crouch |
Jump Key | space | jump |
Generic Key References
#include "keyTranslator.h" 3 4 SDLKey keyToSDL(const std::string &s) 5 { 6 if (s == "backspace") 7 return SDLK_BACKSPACE; 8 if (s == "tab") 9 return SDLK_TAB; 10 if (s == "clear") 11 return SDLK_CLEAR; 12 if (s == "return") 13 return SDLK_RETURN; 14 if (s == "pause") 15 return SDLK_PAUSE; 16 if (s == "esc") 17 return SDLK_ESCAPE; 18 if (s == "space") 19 return SDLK_SPACE; 20 if (s == "!") 21 return SDLK_EXCLAIM; 22 if (s == "\"") 23 return SDLK_QUOTEDBL; 24 if (s == "#") 25 return SDLK_HASH; 26 if (s == "$") 27 return SDLK_DOLLAR; 28 if (s == "&") 29 return SDLK_AMPERSAND; 30 if (s == "\'") 31 return SDLK_QUOTE; 32 if (s == "(") 33 return SDLK_LEFTPAREN; 34 if (s == ")") 35 return SDLK_RIGHTPAREN; 36 if (s == "*") 37 return SDLK_ASTERISK; 38 if (s == "+") 39 return SDLK_PLUS; 40 if (s == ",") 41 return SDLK_COMMA; 42 if (s == "-") 43 return SDLK_MINUS; 44 if (s == ".") 45 return SDLK_PERIOD; 46 if (s == "/") 47 return SDLK_SLASH; 48 if (s == "0") 49 return SDLK_0; 50 if (s == "1") 51 return SDLK_1; 52 if (s == "2") 53 return SDLK_2; 54 if (s == "3") 55 return SDLK_3; 56 if (s == "4") 57 return SDLK_4; 58 if (s == "5") 59 return SDLK_5; 60 if (s == "6") 61 return SDLK_6; 62 if (s == "7") 63 return SDLK_7; 64 if (s == "8") 65 return SDLK_8; 66 if (s == "9") 67 return SDLK_9; 68 if (s == ":") 69 return SDLK_COLON; 70 if (s == ";") 71 return SDLK_SEMICOLON; 72 if (s == "<") 73 return SDLK_LESS; 74 if (s == "=") 75 return SDLK_EQUALS; 76 if (s == ">") 77 return SDLK_GREATER; 78 if (s == "?") 79 return SDLK_QUESTION; 80 if (s == "@") 81 return SDLK_AT; 82 if (s == "[") 83 return SDLK_LEFTBRACKET; 84 if (s == "\\") 85 return SDLK_BACKSLASH; 86 if (s == "]") 87 return SDLK_RIGHTBRACKET; 88 if (s == "^") 89 return SDLK_CARET; 90 if (s == "_") 91 return SDLK_UNDERSCORE; 92 if (s == "`") 93 return SDLK_BACKQUOTE; 94 if (s == "a") 95 return SDLK_a; 96 if (s == "b") 97 return SDLK_b; 98 if (s == "c") 99 return SDLK_c; 100 if (s == "d") 101 return SDLK_d; 102 if (s == "e") 103 return SDLK_e; 104 if (s == "f") 105 return SDLK_f; 106 if (s == "g") 107 return SDLK_g; 108 if (s == "h") 109 return SDLK_h; 110 if (s == "i") 111 return SDLK_i; 112 if (s == "j") 113 return SDLK_j; 114 if (s == "k") 115 return SDLK_k; 116 if (s == "l") 117 return SDLK_l; 118 if (s == "m") 119 return SDLK_m; 120 if (s == "n") 121 return SDLK_n; 122 if (s == "o") 123 return SDLK_o; 124 if (s == "p") 125 return SDLK_p; 126 if (s == "q") 127 return SDLK_q; 128 if (s == "r") 129 return SDLK_r; 130 if (s == "s") 131 return SDLK_s; 132 if (s == "t") 133 return SDLK_t; 134 if (s == "u") 135 return SDLK_u; 136 if (s == "v") 137 return SDLK_v; 138 if (s == "w") 139 return SDLK_w; 140 if (s == "x") 141 return SDLK_x; 142 if (s == "y") 143 return SDLK_y; 144 if (s == "z") 145 return SDLK_z; 146 if (s == "delete") 147 return SDLK_DELETE; 148 if (s == "keypad0") 149 return SDLK_KP0; 150 if (s == "keypad1") 151 return SDLK_KP1; 152 if (s == "keypad2") 153 return SDLK_KP2; 154 if (s == "keypad3") 155 return SDLK_KP3; 156 if (s == "keypad4") 157 return SDLK_KP4; 158 if (s == "keypad5") 159 return SDLK_KP5; 160 if (s == "keypad6") 161 return SDLK_KP6; 162 if (s == "keypad7") 163 return SDLK_KP7; 164 if (s == "keypad8") 165 return SDLK_KP8; 166 if (s == "keypad9") 167 return SDLK_KP9; 168 if (s == "keypad.") 169 return SDLK_KP_PERIOD; 170 if (s == "keypad/") 171 return SDLK_KP_DIVIDE; 172 if (s == "keypad*") 173 return SDLK_KP_MULTIPLY; 174 if (s == "keypad-") 175 return SDLK_KP_MINUS; 176 if (s == "keypad+") 177 return SDLK_KP_PLUS; 178 if (s == "keypadenter") 179 return SDLK_KP_ENTER; 180 if (s == "keypad=") 181 return SDLK_KP_EQUALS; 182 if (s == "up") 183 return SDLK_UP; 184 if (s == "down") 185 return SDLK_DOWN; 186 if (s == "right") 187 return SDLK_RIGHT; 188 if (s == "left") 189 return SDLK_LEFT; 190 if (s == "insert") 191 return SDLK_INSERT; 192 if (s == "home") 193 return SDLK_HOME; 194 if (s == "end") 195 return SDLK_END; 196 if (s == "pageup") 197 return SDLK_PAGEUP; 198 if (s == "pagedown") 199 return SDLK_PAGEDOWN; 200 if (s == "f1") 201 return SDLK_F1; 202 if (s == "f2") 203 return SDLK_F2; 204 if (s == "f3") 205 return SDLK_F3; 206 if (s == "f4") 207 return SDLK_F4; 208 if (s == "f5") 209 return SDLK_F5; 210 if (s == "f6") 211 return SDLK_F6; 212 if (s == "f7") 213 return SDLK_F7; 214 if (s == "f8") 215 return SDLK_F8; 216 if (s == "f9") 217 return SDLK_F9; 218 if (s == "f10") 219 return SDLK_F10; 220 if (s == "f11") 221 return SDLK_F11; 222 if (s == "f12") 223 return SDLK_F12; 224 if (s == "f13") 225 return SDLK_F13; 226 if (s == "f14") 227 return SDLK_F14; 228 if (s == "f15") 229 return SDLK_F15; 230 if (s == "numlock") 231 return SDLK_NUMLOCK; 232 if (s == "capslock") 233 return SDLK_CAPSLOCK; 234 if (s == "scrollock") 235 return SDLK_SCROLLOCK; 236 if (s == "rshift") 237 return SDLK_RSHIFT; 238 if (s == "lshift") 239 return SDLK_LSHIFT; 240 if (s == "rctrl") 241 return SDLK_RCTRL; 242 if (s == "lctrl") 243 return SDLK_LCTRL; 244 if (s == "ralt") 245 return SDLK_RALT; 246 if (s == "lalt") 247 return SDLK_LALT; 248 if (s == "rmeta") 249 return SDLK_RMETA; 250 if (s == "lmeta") 251 return SDLK_LMETA; 252 if (s == "lsuper") 253 return SDLK_LSUPER; 254 if (s == "rsuper") 255 return SDLK_RSUPER; 256 if (s == "mode") 257 return SDLK_MODE; 258 if (s == "compose") 259 return SDLK_COMPOSE; 260 if (s == "help") 261 return SDLK_HELP; 262 if (s == "print") 263 return SDLK_PRINT; 264 if (s == "sysreq") 265 return SDLK_SYSREQ; 266 if (s == "break") 267 return SDLK_BREAK; 268 if (s == "menu") 269 return SDLK_MENU; 270 if (s == "power") 271 return SDLK_POWER; 272 if (s == "euro") 273 return SDLK_EURO; 274 275 return (SDLKey)SDLK_SYSREQ; 276 }