Changeset 7661 in orxonox.OLD for trunk/src/lib/event/key_mapper.cc
- Timestamp:
- May 18, 2006, 12:55:34 AM (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/lib/event/key_mapper.cc
r7256 r7661 27 27 #include "util/preferences.h" 28 28 #include "key_names.h" 29 #include "event_def.h" 29 30 #include "debug.h" 30 31 … … 71 72 * and you do not have to care about The namings, as they might change 72 73 */ 73 orxKeyMapping map[] = { 74 {&KeyMapper::PEV_FORWARD, CONFIG_NAME_PLAYER_FORWARD}, 75 {&KeyMapper::PEV_BACKWARD, CONFIG_NAME_PLAYER_BACKWARD}, 76 {&KeyMapper::PEV_UP, CONFIG_NAME_PLAYER_UP}, 77 {&KeyMapper::PEV_DOWN, CONFIG_NAME_PLAYER_DOWN}, 78 {&KeyMapper::PEV_LEFT, CONFIG_NAME_PLAYER_LEFT}, 79 {&KeyMapper::PEV_RIGHT, CONFIG_NAME_PLAYER_RIGHT}, 80 {&KeyMapper::PEV_ROLL_LEFT, CONFIG_NAME_PLAYER_ROLL_RIGHT}, 81 {&KeyMapper::PEV_ROLL_RIGHT, CONFIG_NAME_PLAYER_ROLL_LEFT}, 82 {&KeyMapper::PEV_STRAFE_LEFT, "StrafeLeft"}, 83 {&KeyMapper::PEV_STRAFE_RIGHT, "StrafeRight"}, 84 85 {&KeyMapper::PEV_FIRE1, CONFIG_NAME_PLAYER_FIRE}, 86 {&KeyMapper::PEV_FIRE1, "Fire1"}, 87 {&KeyMapper::PEV_FIRE2, "Fire2"}, 88 {&KeyMapper::PEV_NEXT_WEAPON, CONFIG_NAME_PLAYER_NEXT_WEAPON}, 89 {&KeyMapper::PEV_PREVIOUS_WEAPON, CONFIG_NAME_PLAYER_PREV_WEAPON}, 90 91 {&KeyMapper::PEV_CHANGE_SHIP, CONFIG_NAME_PLAYER_CHANGE_SHIP}, 92 93 94 {&KeyMapper::PEV_VIEW0, CONFIG_NAME_VIEW0}, 95 {&KeyMapper::PEV_VIEW1, CONFIG_NAME_VIEW1}, 96 {&KeyMapper::PEV_VIEW2, CONFIG_NAME_VIEW2}, 97 {&KeyMapper::PEV_VIEW3, CONFIG_NAME_VIEW3}, 98 {&KeyMapper::PEV_VIEW4, CONFIG_NAME_VIEW4}, 99 {&KeyMapper::PEV_VIEW5, CONFIG_NAME_VIEW5}, 100 101 {&KeyMapper::PEV_NEXT_WORLD, CONFIG_NAME_NEXT_WORLD}, 102 {&KeyMapper::PEV_PREVIOUS_WORLD, CONFIG_NAME_PREV_WORLD}, 103 104 {&KeyMapper::PEV_PAUSE, CONFIG_NAME_PAUSE}, 105 {&KeyMapper::PEV_QUIT, CONFIG_NAME_QUIT}, 106 {NULL, NULL} 74 KeyMapper::KeyMapping KeyMapper::map[] = { 75 {&KeyMapper::PEV_FORWARD, CONFIG_NAME_PLAYER_FORWARD, SDLK_w}, 76 {&KeyMapper::PEV_BACKWARD, CONFIG_NAME_PLAYER_BACKWARD, SDLK_s}, 77 {&KeyMapper::PEV_UP, CONFIG_NAME_PLAYER_UP, SDLK_r}, 78 {&KeyMapper::PEV_DOWN, CONFIG_NAME_PLAYER_DOWN, SDLK_f}, 79 {&KeyMapper::PEV_LEFT, CONFIG_NAME_PLAYER_LEFT, SDLK_a}, 80 {&KeyMapper::PEV_RIGHT, CONFIG_NAME_PLAYER_RIGHT, SDLK_d}, 81 {&KeyMapper::PEV_ROLL_RIGHT, CONFIG_NAME_PLAYER_ROLL_LEFT, SDLK_z}, 82 {&KeyMapper::PEV_ROLL_LEFT, CONFIG_NAME_PLAYER_ROLL_RIGHT, SDLK_c}, 83 {&KeyMapper::PEV_STRAFE_LEFT, "StrafeLeft", SDLK_q}, 84 {&KeyMapper::PEV_STRAFE_RIGHT, "StrafeRight", SDLK_e}, 85 86 {&KeyMapper::PEV_FIRE1, CONFIG_NAME_PLAYER_FIRE, EV_MOUSE_BUTTON_LEFT}, 87 {&KeyMapper::PEV_FIRE2, "Fire2", EV_MOUSE_BUTTON_RIGHT}, 88 {&KeyMapper::PEV_NEXT_WEAPON, CONFIG_NAME_PLAYER_NEXT_WEAPON, EV_MOUSE_BUTTON_WHEELUP}, 89 {&KeyMapper::PEV_PREVIOUS_WEAPON, CONFIG_NAME_PLAYER_PREV_WEAPON, EV_MOUSE_BUTTON_WHEELDOWN}, 90 91 {&KeyMapper::PEV_CHANGE_SHIP, CONFIG_NAME_PLAYER_CHANGE_SHIP, SDLK_g}, 92 93 94 {&KeyMapper::PEV_VIEW0, CONFIG_NAME_VIEW0, SDLK_1}, 95 {&KeyMapper::PEV_VIEW1, CONFIG_NAME_VIEW1, SDLK_2}, 96 {&KeyMapper::PEV_VIEW2, CONFIG_NAME_VIEW2, SDLK_3}, 97 {&KeyMapper::PEV_VIEW3, CONFIG_NAME_VIEW3, SDLK_4}, 98 {&KeyMapper::PEV_VIEW4, CONFIG_NAME_VIEW4, SDLK_5}, 99 {&KeyMapper::PEV_VIEW5, CONFIG_NAME_VIEW5, SDLK_6}, 100 101 {&KeyMapper::PEV_NEXT_WORLD, CONFIG_NAME_NEXT_WORLD, SDLK_x}, 102 {&KeyMapper::PEV_PREVIOUS_WORLD, CONFIG_NAME_PREV_WORLD, SDLK_z}, 103 104 {&KeyMapper::PEV_PAUSE, CONFIG_NAME_PAUSE, SDLK_p}, 105 {&KeyMapper::PEV_QUIT, CONFIG_NAME_QUIT, SDLK_ESCAPE}, 106 {NULL, "", 0} 107 107 }; 108 108 … … 138 138 void KeyMapper::loadKeyBindings(IniParser* iniParser) 139 139 { 140 if( !iniParser->getSection (CONFIG_SECTION_ PLAYER "1"))141 { 142 PRINTF(1)("Could not find key bindings " CONFIG_SECTION_ PLAYER"1\n");140 if( !iniParser->getSection (CONFIG_SECTION_CONTROL)) 141 { 142 PRINTF(1)("Could not find key bindings " CONFIG_SECTION_CONTROL "\n"); 143 143 return; 144 144 } … … 158 158 159 159 // PARSE MISC SECTION 160 if( !iniParser->getSection (CONFIG_SECTION_MISC_KEYS)) 161 { 162 PRINTF(1)("Could not find key bindings" CONFIG_SECTION_MISC_KEYS "\n"); 160 // if( !iniParser->getSection (CONFIG_SECTION_MISC_KEYS)) 161 // { 162 // PRINTF(1)("Could not find key bindings" CONFIG_SECTION_MISC_KEYS "\n"); 163 // return; 164 // } 165 // 166 // iniParser->firstVar(); 167 // while( iniParser->getCurrentName() != "" ) 168 // { 169 // PRINTF(3)("MISC: Parsing %s, %s now.\n", iniParser->getCurrentName(), iniParser->getCurrentValue()); 170 // index = nameToIndex (iniParser->getCurrentValue()); 171 // this->mapKeys(iniParser->getCurrentName(), index); 172 // iniParser->nextVar(); 173 // } 174 } 175 176 void KeyMapper::loadKeyBindings() 177 { 178 if( !Preferences::getInstance()->sectionExists(CONFIG_SECTION_CONTROL)) 179 { 180 PRINTF(1)("Could not find key bindings " CONFIG_SECTION_CONTROL "\n"); 163 181 return; 164 182 } 165 166 iniParser->firstVar();167 while( iniParser->getCurrentName() != "" )168 {169 PRINTF(3)("MISC: Parsing %s, %s now.\n", iniParser->getCurrentName(), iniParser->getCurrentValue());170 index = nameToIndex (iniParser->getCurrentValue());171 this->mapKeys(iniParser->getCurrentName(), index);172 iniParser->nextVar();173 }174 }175 176 void KeyMapper::loadKeyBindings()177 {178 if( !Preferences::getInstance()->sectionExists(CONFIG_SECTION_PLAYER "1"))179 {180 PRINTF(1)("Could not find key bindings " CONFIG_SECTION_PLAYER"1\n");181 return;182 }183 183 int* index; 184 184 185 std::list<std::string> keys = Preferences::getInstance()->listKeys(CONFIG_SECTION_ PLAYER "1");185 std::list<std::string> keys = Preferences::getInstance()->listKeys(CONFIG_SECTION_CONTROL); 186 186 for ( std::list<std::string>::const_iterator it = keys.begin(); it!=keys.end(); it++ ) 187 187 { 188 PRINTF(3)("Keys: Parsing %s, %s now.\n", it->c_str(), Preferences::getInstance()->getString(CONFIG_SECTION_ PLAYER "1", *it, "").c_str());188 PRINTF(3)("Keys: Parsing %s, %s now.\n", it->c_str(), Preferences::getInstance()->getString(CONFIG_SECTION_CONTROL, *it, "").c_str()); 189 189 // map the name to an sdl index 190 index = nameToIndex (Preferences::getInstance()->getString(CONFIG_SECTION_ PLAYER "1", *it, ""));190 index = nameToIndex (Preferences::getInstance()->getString(CONFIG_SECTION_CONTROL, *it, "")); 191 191 // map the index to a internal name 192 this->mapKeys(*it, index);193 }194 195 196 // PARSE MISC SECTION197 if( !Preferences::getInstance()->sectionExists (CONFIG_SECTION_MISC_KEYS))198 {199 PRINTF(1)("Could not find key bindings " CONFIG_SECTION_MISC_KEYS "\n");200 return;201 }202 203 keys = Preferences::getInstance()->listKeys(CONFIG_SECTION_MISC_KEYS);204 for ( std::list<std::string>::const_iterator it = keys.begin(); it!=keys.end(); it++ )205 {206 PRINTF(3)("MISC: Parsing %s, %s now.\n", it->c_str(), Preferences::getInstance()->getString(CONFIG_SECTION_MISC_KEYS, *it, "").c_str());207 index = nameToIndex (Preferences::getInstance()->getString(CONFIG_SECTION_MISC_KEYS, *it, ""));208 192 this->mapKeys(*it, index); 209 193 } … … 266 250 for(int i = 0; map[i].pValue != NULL; ++i) 267 251 { 268 PRINT(0)("%s = %i\n",map[i].pName , *map[i].pValue);252 PRINT(0)("%s = %i\n",map[i].pName.c_str(), *map[i].pValue); 269 253 } 270 254 PRINT(0)("=======================================================\n");
Note: See TracChangeset
for help on using the changeset viewer.