void recvProcessDebugMappings(NETQUEUE queue) { bool val = false; NETbeginDecode(queue, GAME_DEBUG_MODE); NETbool(&val); NETend(); bool oldDebugMode = getDebugMappingStatus(); processDebugMappings(queue.index, val); bool newDebugMode = getDebugMappingStatus(); char const *cmsg; if (val) { sasprintf((char**)&cmsg, _("%s wants to enable debug mode. Enabled: %s, Disabled: %s."), getPlayerName(queue.index), getWantedDebugMappingStatuses(true).c_str(), getWantedDebugMappingStatuses(false).c_str()); } else { sasprintf((char**)&cmsg, _("%s wants to disable debug mode. Enabled: %s, Disabled: %s."), getPlayerName(queue.index), getWantedDebugMappingStatuses(true).c_str(), getWantedDebugMappingStatuses(false).c_str()); } addConsoleMessage(cmsg, DEFAULT_JUSTIFY, SYSTEM_MESSAGE); if (!oldDebugMode && newDebugMode) { addConsoleMessage(_("Debug mode now enabled!"), DEFAULT_JUSTIFY, SYSTEM_MESSAGE); } else if (oldDebugMode && !newDebugMode) { addConsoleMessage(_("Debug mode now disabled!"), DEFAULT_JUSTIFY, SYSTEM_MESSAGE); } }
// --- Miscellaneous Initialisation stuff that really should be done each restart static void initMiscVars(void) { selectedPlayer = 0; realSelectedPlayer = 0; godMode = false; radarOnScreen = true; enableConsoleDisplay(true); setSelectedGroup(UBYTE_MAX); processDebugMappings(false); }
// --- Miscellaneous Initialisation stuff that really should be done each restart static void initMiscVars(void) { selectedPlayer = 0; realSelectedPlayer = 0; godMode = false; radarOnScreen = true; radarPermitted = true; allowDesign = true; enableConsoleDisplay(true); setSelectedGroup(UBYTE_MAX); for (unsigned n = 0; n < MAX_PLAYERS; ++n) { processDebugMappings(n, false); } }
// --- Miscellaneous Initialisation stuff that really should be done each restart static void initMiscVars() { selectedPlayer = 0; realSelectedPlayer = 0; godMode = false; radarOnScreen = true; radarPermitted = true; allowDesign = true; includeRedundantDesigns = false; enableConsoleDisplay(true); for (unsigned n = 0; n < MAX_PLAYERS; ++n) { processDebugMappings(n, false); } }
/* Here is where we assign functions to keys and to combinations of keys. these will be read in from a .cfg file customisable by the player from an in-game menu */ void keyInitMappings(bool bForceDefaults) { keyMappings.clear(); for (unsigned n = 0; n < MAX_PLAYERS; ++n) { processDebugMappings(n, false); } for (unsigned i = 0; i < NUM_QWERTY_KEYS; i++) { qwertyKeyMappings[i].psMapping = nullptr; } // load the mappings. if (!bForceDefaults && loadKeyMap() == true) { return; } // mappings failed to load, so set the defaults. // ********************************* ALL THE MAPPINGS ARE NOW IN ORDER, PLEASE **** // ********************************* DO NOT REORDER THEM!!!!!! ******************** /* ALL OF THIS NEEDS TO COME IN OFF A USER CUSTOMISABLE TEXT FILE */ // ********************************** // ********************************** // FUNCTION KEY MAPPINGS F1 to F12 keyAddMapping(KEYMAP_ALWAYS_PROCESS, KEY_IGNORE, KEY_F1, KEYMAP_PRESSED, kf_ChooseManufacture, N_("Manufacture")); keyAddMapping(KEYMAP_ALWAYS_PROCESS, KEY_IGNORE, KEY_F2, KEYMAP_PRESSED, kf_ChooseResearch, N_("Research")); keyAddMapping(KEYMAP_ALWAYS_PROCESS, KEY_IGNORE, KEY_F3, KEYMAP_PRESSED, kf_ChooseBuild, N_("Build")); keyAddMapping(KEYMAP_ALWAYS_PROCESS, KEY_IGNORE, KEY_F4, KEYMAP_PRESSED, kf_ChooseDesign, N_("Design")); keyAddMapping(KEYMAP_ALWAYS_PROCESS, KEY_IGNORE, KEY_F5, KEYMAP_PRESSED, kf_ChooseIntelligence, N_("Intelligence Display")); keyAddMapping(KEYMAP_ALWAYS_PROCESS, KEY_IGNORE, KEY_F6, KEYMAP_PRESSED, kf_ChooseCommand, N_("Commanders")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_F7, KEYMAP_PRESSED, kf_ToggleRadar, N_("Toggle Radar")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_F8, KEYMAP_PRESSED, kf_ToggleConsole, N_("Toggle Console Display")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_F9, KEYMAP_PRESSED, kf_ToggleEnergyBars, N_("Toggle Damage Bars On/Off")); keyAddMapping(KEYMAP_ALWAYS, KEY_IGNORE, KEY_F10, KEYMAP_PRESSED, kf_ScreenDump, N_("Take Screen Shot")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_F11, KEYMAP_PRESSED, kf_ToggleFormationSpeedLimiting, N_("Toggle Formation Speed Limiting")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_F12, KEYMAP_PRESSED, kf_MoveToLastMessagePos, N_("View Location of Previous Message")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LSHIFT, KEY_F12, KEYMAP_PRESSED, kf_ToggleSensorDisplay, N_("Toggle Sensor display")); //Which key should we use? --Re enabled see below! -Q 5-10-05 // ********************************** // ********************************** // ASSIGN GROUPS keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_0, KEYMAP_PRESSED, kf_AssignGrouping_0, N_("Assign Group 0")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_1, KEYMAP_PRESSED, kf_AssignGrouping_1, N_("Assign Group 1")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_2, KEYMAP_PRESSED, kf_AssignGrouping_2, N_("Assign Group 2")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_3, KEYMAP_PRESSED, kf_AssignGrouping_3, N_("Assign Group 3")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_4, KEYMAP_PRESSED, kf_AssignGrouping_4, N_("Assign Group 4")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_5, KEYMAP_PRESSED, kf_AssignGrouping_5, N_("Assign Group 5")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_6, KEYMAP_PRESSED, kf_AssignGrouping_6, N_("Assign Group 6")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_7, KEYMAP_PRESSED, kf_AssignGrouping_7, N_("Assign Group 7")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_8, KEYMAP_PRESSED, kf_AssignGrouping_8, N_("Assign Group 8")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_9, KEYMAP_PRESSED, kf_AssignGrouping_9, N_("Assign Group 9")); // ********************************** // ********************************** // SELECT GROUPS - Will jump to the group as well as select if group is ALREADY selected keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_0, KEYMAP_PRESSED, kf_SelectGrouping_0, N_("Select Group 0")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_1, KEYMAP_PRESSED, kf_SelectGrouping_1, N_("Select Group 1")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_2, KEYMAP_PRESSED, kf_SelectGrouping_2, N_("Select Group 2")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_3, KEYMAP_PRESSED, kf_SelectGrouping_3, N_("Select Group 3")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_4, KEYMAP_PRESSED, kf_SelectGrouping_4, N_("Select Group 4")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_5, KEYMAP_PRESSED, kf_SelectGrouping_5, N_("Select Group 5")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_6, KEYMAP_PRESSED, kf_SelectGrouping_6, N_("Select Group 6")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_7, KEYMAP_PRESSED, kf_SelectGrouping_7, N_("Select Group 7")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_8, KEYMAP_PRESSED, kf_SelectGrouping_8, N_("Select Group 8")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_9, KEYMAP_PRESSED, kf_SelectGrouping_9, N_("Select Group 9")); // ********************************** // ********************************** // SELECT COMMANDER - Will jump to the group as well as select if group is ALREADY selected keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LALT, KEY_0, KEYMAP_PRESSED, kf_SelectCommander_0, N_("Select Commander 0")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LALT, KEY_1, KEYMAP_PRESSED, kf_SelectCommander_1, N_("Select Commander 1")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LALT, KEY_2, KEYMAP_PRESSED, kf_SelectCommander_2, N_("Select Commander 2")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LALT, KEY_3, KEYMAP_PRESSED, kf_SelectCommander_3, N_("Select Commander 3")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LALT, KEY_4, KEYMAP_PRESSED, kf_SelectCommander_4, N_("Select Commander 4")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LALT, KEY_5, KEYMAP_PRESSED, kf_SelectCommander_5, N_("Select Commander 5")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LALT, KEY_6, KEYMAP_PRESSED, kf_SelectCommander_6, N_("Select Commander 6")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LALT, KEY_7, KEYMAP_PRESSED, kf_SelectCommander_7, N_("Select Commander 7")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LALT, KEY_8, KEYMAP_PRESSED, kf_SelectCommander_8, N_("Select Commander 8")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LALT, KEY_9, KEYMAP_PRESSED, kf_SelectCommander_9, N_("Select Commander 9")); // ********************************** // ********************************** // MULTIPLAYER keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_KPENTER, KEYMAP_PRESSED, kf_addMultiMenu, N_("Multiplayer Options / Alliance dialog")); // // GAME CONTROLS - Moving around, zooming in, rotating etc keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_BACKSPACE, KEYMAP_PRESSED, kf_SeekNorth, N_("Snap View to North")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_SPACE, KEYMAP_PRESSED, kf_ToggleCamera, N_("Toggle Tracking Camera")); keyAddMapping(KEYMAP_ALWAYS, KEY_IGNORE, KEY_ESC, KEYMAP_PRESSED, kf_addInGameOptions, N_("Display In-Game Options")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_MINUS, KEYMAP_PRESSED, kf_RadarZoomOut, N_("Zoom Radar Out")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_EQUALS, KEYMAP_PRESSED, kf_RadarZoomIn, N_("Zoom Radar In")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_KP_MINUS, KEYMAP_DOWN, kf_ZoomOut, N_("Zoom In")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_KP_PLUS, KEYMAP_DOWN, kf_ZoomIn, N_("Zoom Out")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_KP_2, KEYMAP_DOWN, kf_PitchForward, N_("Pitch Forward")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_KP_4, KEYMAP_DOWN, kf_RotateLeft, N_("Rotate Left")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_KP_5, KEYMAP_DOWN, kf_ResetPitch, N_("Reset Pitch")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_KP_6, KEYMAP_DOWN, kf_RotateRight, N_("Rotate Right")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_KP_8, KEYMAP_DOWN, kf_PitchBack, N_("Pitch Back")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_KP_0, KEYMAP_PRESSED, kf_RightOrderMenu, N_("Orders Menu")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_MINUS, KEYMAP_PRESSED, kf_SlowDown, N_("Decrease Game Speed")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_EQUALS, KEYMAP_PRESSED, kf_SpeedUp, N_("Increase Game Speed")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_BACKSPACE, KEYMAP_PRESSED, kf_NormalSpeed, N_("Reset Game Speed")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_UPARROW, KEYMAP_PRESSED, kf_FaceNorth, N_("View North")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_DOWNARROW, KEYMAP_PRESSED, kf_FaceSouth, N_("View South")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_LEFTARROW, KEYMAP_PRESSED, kf_FaceEast, N_("View East")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_RIGHTARROW, KEYMAP_PRESSED, kf_FaceWest, N_("View West")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_KP_STAR, KEYMAP_PRESSED, kf_JumpToResourceExtractor, N_("View next Oil Derrick")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, (KEY_CODE)KEY_MAXSCAN, KEYMAP_PRESSED, kf_JumpToRepairUnits, N_("View next Repair Unit")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, (KEY_CODE)KEY_MAXSCAN, KEYMAP_PRESSED, kf_JumpToConstructorUnits, N_("View next Truck")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, (KEY_CODE)KEY_MAXSCAN, KEYMAP_PRESSED, kf_JumpToSensorUnits, N_("View next Sensor Unit")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, (KEY_CODE)KEY_MAXSCAN, KEYMAP_PRESSED, kf_JumpToCommandUnits, N_("View next Commander")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_TAB, KEYMAP_PRESSED, kf_ToggleOverlays, N_("Toggle Overlays")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_BACKQUOTE, KEYMAP_PRESSED, kf_ToggleConsoleDrop, N_("Toggle Console History ")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_BACKQUOTE, KEYMAP_PRESSED, kf_ToggleTeamChat, N_("Toggle Team Chat History")); // ********************************** // IN GAME MAPPINGS - Single key presses - ALL __DEBUG keymappings will be removed for master keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_B, KEYMAP_PRESSED, kf_CentreOnBase, N_("Center View on HQ")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_C, KEYMAP_PRESSED, kf_SetDroidAttackCease, N_("Hold Fire")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_D, KEYMAP_PRESSED, kf_JumpToUnassignedUnits, N_("View Unassigned Units")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_E, KEYMAP_PRESSED, kf_SetDroidAttackReturn, N_("Return Fire")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_F, KEYMAP_PRESSED, kf_SetDroidAttackAtWill, N_("Fire at Will")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LSHIFT, KEY_H, KEYMAP_PRESSED, kf_SetDroidReturnToBase, N_("Return to HQ")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_H, KEYMAP_PRESSED, kf_SetDroidOrderHold, N_("Hold Position")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_Q, KEYMAP_PRESSED, kf_SetDroidMovePatrol, N_("Patrol")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_R, KEYMAP_PRESSED, kf_SetDroidGoForRepair, N_("Return For Repair")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_S, KEYMAP_PRESSED, kf_SetDroidOrderStop, N_("Stop Droid")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_T, KEYMAP_PRESSED, kf_SetDroidGoToTransport, N_("Go to Transport")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_RETURN, KEYMAP_PRESSED, kf_SendGlobalMessage, N_("Send Global Text Message")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_RETURN, KEYMAP_PRESSED, kf_SendTeamMessage, N_("Send Team Text Message")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LALT, KEY_H, KEYMAP_PRESSED, kf_AddHelpBlip, N_("Drop a beacon")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LALT, KEY_S, KEYMAP_PRESSED, kf_ToggleShadows, N_("Toggles shadows")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LALT, KEY_T, KEYMAP_PRESSED, kf_toggleTrapCursor, N_("Trap cursor")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_TAB, KEYMAP_PRESSED, kf_ToggleRadarTerrain, N_("Toggle radar terrain")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LSHIFT, KEY_TAB, KEYMAP_PRESSED, kf_ToggleRadarAllyEnemy, N_("Toggle ally-enemy radar view")); // Some extra non QWERTY mappings but functioning in same way keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_COMMA, KEYMAP_PRESSED, kf_SetDroidRetreatMedium, N_("Retreat at Medium Damage")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_FULLSTOP, KEYMAP_PRESSED, kf_SetDroidRetreatHeavy, N_("Retreat at Heavy Damage")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, KEY_FORWARDSLASH, KEYMAP_PRESSED, kf_SetDroidRetreatNever, N_("Do or Die!")); // ********************************** // ********************************** // In game mappings - COMBO (CTRL + LETTER) presses. keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_A, KEYMAP_PRESSED, kf_SelectAllCombatUnits, N_("Select all Combat Units")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_C, KEYMAP_PRESSED, kf_SelectAllCyborgs, N_("Select all Cyborgs")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_D, KEYMAP_PRESSED, kf_SelectAllDamaged, N_("Select all Heavily Damaged Units")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_F, KEYMAP_PRESSED, kf_SelectAllHalfTracked, N_("Select all Half-tracks")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_H, KEYMAP_PRESSED, kf_SelectAllHovers, N_("Select all Hovers")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_R, KEYMAP_PRESSED, kf_SetDroidRecycle, N_("Return for Recycling")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_S, KEYMAP_PRESSED, kf_SelectAllOnScreenUnits, N_("Select all Units on Screen")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_T, KEYMAP_PRESSED, kf_SelectAllTracked, N_("Select all Tracks")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_U, KEYMAP_PRESSED, kf_SelectAllUnits, N_("Select EVERY unit")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_V, KEYMAP_PRESSED, kf_SelectAllVTOLs, N_("Select all VTOLs")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LSHIFT, KEY_V, KEYMAP_PRESSED, kf_SelectAllArmedVTOLs, N_("Select all fully-armed VTOLs")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_W, KEYMAP_PRESSED, kf_SelectAllWheeled, N_("Select all Wheels")); keyAddMapping(KEYMAP__DEBUG, KEY_LCTRL, KEY_Y, KEYMAP_PRESSED, kf_FrameRate, N_("Show frame rate")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LCTRL, KEY_Z, KEYMAP_PRESSED, kf_SelectAllSameType, N_("Select all Similar Units")); // ********************************** // ********************************** // In game mappings - COMBO (SHIFT + LETTER) presses. keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LSHIFT, KEY_C, KEYMAP_PRESSED, kf_SelectAllCombatCyborgs, N_("Select all Combat Cyborgs")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LSHIFT, KEY_E, KEYMAP_PRESSED, kf_SelectAllEngineers, N_("Select all Engineers")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LSHIFT, KEY_G, KEYMAP_PRESSED, kf_SelectAllLandCombatUnits, N_("Select all Land Combat Units")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LSHIFT, KEY_M, KEYMAP_PRESSED, kf_SelectAllMechanics, N_("Select all Mechanics")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LSHIFT, KEY_P, KEYMAP_PRESSED, kf_SelectAllTransporters, N_("Select all Transporters")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LSHIFT, KEY_R, KEYMAP_PRESSED, kf_SelectAllRepairTanks, N_("Select all Repair Tanks")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LSHIFT, KEY_S, KEYMAP_PRESSED, kf_SelectAllSensorUnits, N_("Select all Sensor Units")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_LSHIFT, KEY_T, KEYMAP_PRESSED, kf_SelectAllTrucks, N_("Select all Trucks")); // ********************************** // ********************************** // SELECT PLAYERS - DEBUG ONLY keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, (KEY_CODE)KEY_MAXSCAN, KEYMAP_PRESSED, kf_SelectNextFactory, N_("Select next Factory")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, (KEY_CODE)KEY_MAXSCAN, KEYMAP_PRESSED, kf_SelectNextResearch, N_("Select next Research Facility")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, (KEY_CODE)KEY_MAXSCAN, KEYMAP_PRESSED, kf_SelectNextPowerStation, N_("Select next Power Generator")); keyAddMapping(KEYMAP_ASSIGNABLE, KEY_IGNORE, (KEY_CODE)KEY_MAXSCAN, KEYMAP_PRESSED, kf_SelectNextCyborgFactory, N_("Select next Cyborg Factory")); // Debug options keyAddMapping(KEYMAP___HIDE, KEY_LSHIFT, KEY_BACKSPACE, KEYMAP_PRESSED, kf_ToggleDebugMappings, N_("Toggle Debug Mappings")); keyAddMapping(KEYMAP__DEBUG, KEY_LCTRL, KEY_M, KEYMAP_PRESSED, kf_ToggleShowPath, N_("Toggle display of droid path")); keyAddMapping(KEYMAP__DEBUG, KEY_LCTRL, KEY_E, KEYMAP_PRESSED, kf_ToggleShowGateways, N_("Toggle display of gateways")); keyAddMapping(KEYMAP__DEBUG, KEY_IGNORE, KEY_M, KEYMAP_PRESSED, kf_ShowMappings, N_("Show all keyboard mappings - use pause!")); keyAddMapping(KEYMAP__DEBUG, KEY_IGNORE, KEY_V, KEYMAP_PRESSED, kf_ToggleVisibility, N_("Toggle visibility")); keyAddMapping(KEYMAP__DEBUG, KEY_IGNORE, KEY_W, KEYMAP_DOWN, kf_RaiseTile, N_("Raise tile height")); keyAddMapping(KEYMAP__DEBUG, KEY_IGNORE, KEY_A, KEYMAP_DOWN, kf_LowerTile, N_("Lower tile height")); keyAddMapping(KEYMAP__DEBUG, KEY_LCTRL, KEY_B, KEYMAP_PRESSED, kf_EndMissionOffWorld, N_("End Mission")); keyAddMapping(KEYMAP__DEBUG, KEY_LCTRL, KEY_J, KEYMAP_PRESSED, kf_ToggleFog, N_("Toggles All fog")); keyAddMapping(KEYMAP__DEBUG, KEY_LCTRL, KEY_Q, KEYMAP_PRESSED, kf_ToggleWeather, N_("Trigger some weather")); keyAddMapping(KEYMAP__DEBUG, KEY_IGNORE, KEY_K, KEYMAP_PRESSED, kf_TriFlip, N_("Flip terrain triangle")); keyAddMapping(KEYMAP__DEBUG, KEY_LCTRL, KEY_K, KEYMAP_PRESSED, kf_PerformanceSample, N_("Make a performance measurement sample")); //These ones are necessary for debugging keyAddMapping(KEYMAP__DEBUG, KEY_LALT, KEY_A, KEYMAP_PRESSED, kf_AllAvailable, N_("Make all items available")); keyAddMapping(KEYMAP__DEBUG, KEY_LALT, KEY_K, KEYMAP_PRESSED, kf_KillSelected, N_("Kill Selected Unit(s)")); keyAddMapping(KEYMAP__DEBUG, KEY_LCTRL, KEY_G, KEYMAP_PRESSED, kf_ToggleGodMode, N_("Toggle god Mode Status")); keyAddMapping(KEYMAP__DEBUG, KEY_LCTRL, KEY_O, KEYMAP_PRESSED, kf_ChooseOptions, N_("Display Options Screen")); keyAddMapping(KEYMAP__DEBUG, KEY_LCTRL, KEY_X, KEYMAP_PRESSED, kf_FinishResearch, N_("Complete current research")); keyAddMapping(KEYMAP__DEBUG, KEY_LSHIFT, KEY_W, KEYMAP_PRESSED, kf_RevealMapAtPos, N_("Reveal map at mouse position")); keyAddMapping(KEYMAP__DEBUG, KEY_LCTRL, KEY_L, KEYMAP_PRESSED, kf_TraceObject, N_("Trace a game object")); saveKeyMap(); // save out the default key mappings. }