src/command.cpp
changeset 8996 44758c09945e
parent 8982 bef54a67b958
child 9015 4a44c6974ac1
equal deleted inserted replaced
8995:08b6c7873511 8996:44758c09945e
   207  * This table contains all possible CommandProc functions with
   207  * This table contains all possible CommandProc functions with
   208  * the flags which belongs to it. The indizes are the same
   208  * the flags which belongs to it. The indizes are the same
   209  * as the value from the CMD_* enums.
   209  * as the value from the CMD_* enums.
   210  */
   210  */
   211 static const Command _command_proc_table[] = {
   211 static const Command _command_proc_table[] = {
   212 	{CmdBuildRailroadTrack,           CMD_AUTO}, /*   0, CMD_BUILD_RAILROAD_TRACK */
   212 	{CmdBuildRailroadTrack,           CMD_AUTO}, /* CMD_BUILD_RAILROAD_TRACK */
   213 	{CmdRemoveRailroadTrack,          CMD_AUTO}, /*   1, CMD_REMOVE_RAILROAD_TRACK */
   213 	{CmdRemoveRailroadTrack,          CMD_AUTO}, /* CMD_REMOVE_RAILROAD_TRACK */
   214 	{CmdBuildSingleRail,              CMD_AUTO}, /*   2, CMD_BUILD_SINGLE_RAIL */
   214 	{CmdBuildSingleRail,              CMD_AUTO}, /* CMD_BUILD_SINGLE_RAIL */
   215 	{CmdRemoveSingleRail,             CMD_AUTO}, /*   3, CMD_REMOVE_SINGLE_RAIL */
   215 	{CmdRemoveSingleRail,             CMD_AUTO}, /* CMD_REMOVE_SINGLE_RAIL */
   216 	{CmdLandscapeClear,                      0}, /*   4, CMD_LANDSCAPE_CLEAR */
   216 	{CmdLandscapeClear,                      0}, /* CMD_LANDSCAPE_CLEAR */
   217 	{CmdBuildBridge,                  CMD_AUTO}, /*   5, CMD_BUILD_BRIDGE */
   217 	{CmdBuildBridge,                  CMD_AUTO}, /* CMD_BUILD_BRIDGE */
   218 	{CmdBuildRailroadStation,         CMD_AUTO}, /*   6, CMD_BUILD_RAILROAD_STATION */
   218 	{CmdBuildRailroadStation,         CMD_AUTO}, /* CMD_BUILD_RAILROAD_STATION */
   219 	{CmdBuildTrainDepot,              CMD_AUTO}, /*   7, CMD_BUILD_TRAIN_DEPOT */
   219 	{CmdBuildTrainDepot,              CMD_AUTO}, /* CMD_BUILD_TRAIN_DEPOT */
   220 	{CmdBuildSingleSignal,            CMD_AUTO}, /*   8, CMD_BUILD_SIGNALS */
   220 	{CmdBuildSingleSignal,            CMD_AUTO}, /* CMD_BUILD_SIGNALS */
   221 	{CmdRemoveSingleSignal,           CMD_AUTO}, /*   9, CMD_REMOVE_SIGNALS */
   221 	{CmdRemoveSingleSignal,           CMD_AUTO}, /* CMD_REMOVE_SIGNALS */
   222 	{CmdTerraformLand,                CMD_AUTO}, /*  10, CMD_TERRAFORM_LAND */
   222 	{CmdTerraformLand,                CMD_AUTO}, /* CMD_TERRAFORM_LAND */
   223 	{CmdPurchaseLandArea,             CMD_AUTO}, /*  11, CMD_PURCHASE_LAND_AREA */
   223 	{CmdPurchaseLandArea,             CMD_AUTO}, /* CMD_PURCHASE_LAND_AREA */
   224 	{CmdSellLandArea,                        0}, /*  12, CMD_SELL_LAND_AREA */
   224 	{CmdSellLandArea,                        0}, /* CMD_SELL_LAND_AREA */
   225 	{CmdBuildTunnel,                  CMD_AUTO}, /*  13, CMD_BUILD_TUNNEL */
   225 	{CmdBuildTunnel,                  CMD_AUTO}, /* CMD_BUILD_TUNNEL */
   226 	{CmdRemoveFromRailroadStation,           0}, /*  14, CMD_REMOVE_FROM_RAILROAD_STATION */
   226 	{CmdRemoveFromRailroadStation,           0}, /* CMD_REMOVE_FROM_RAILROAD_STATION */
   227 	{CmdConvertRail,                         0}, /*  15, CMD_CONVERT_RAILD */
   227 	{CmdConvertRail,                         0}, /* CMD_CONVERT_RAILD */
   228 	{CmdBuildTrainWaypoint,                  0}, /*  16, CMD_BUILD_TRAIN_WAYPOINT */
   228 	{CmdBuildTrainWaypoint,                  0}, /* CMD_BUILD_TRAIN_WAYPOINT */
   229 	{CmdRenameWaypoint,                      0}, /*  17, CMD_RENAME_WAYPOINT */
   229 	{CmdRenameWaypoint,                      0}, /* CMD_RENAME_WAYPOINT */
   230 	{CmdRemoveTrainWaypoint,                 0}, /*  18, CMD_REMOVE_TRAIN_WAYPOINT */
   230 	{CmdRemoveTrainWaypoint,                 0}, /* CMD_REMOVE_TRAIN_WAYPOINT */
   231 	{NULL,                                   0}, /*  19, unused */
   231 
   232 	{NULL,                                   0}, /*  20, unused */
   232 	{CmdBuildRoadStop,                CMD_AUTO}, /* CMD_BUILD_ROAD_STOP */
   233 	{CmdBuildRoadStop,                CMD_AUTO}, /*  21, CMD_BUILD_ROAD_STOP */
   233 	{CmdRemoveRoadStop,                      0}, /* CMD_REMOVE_ROAD_STOP */
   234 	{CmdRemoveRoadStop,                      0}, /*  22, CMD_REMOVE_ROAD_STOP */
   234 	{CmdBuildLongRoad,                CMD_AUTO}, /* CMD_BUILD_LONG_ROAD */
   235 	{CmdBuildLongRoad,                CMD_AUTO}, /*  23, CMD_BUILD_LONG_ROAD */
   235 	{CmdRemoveLongRoad,               CMD_AUTO}, /* CMD_REMOVE_LONG_ROAD */
   236 	{CmdRemoveLongRoad,               CMD_AUTO}, /*  24, CMD_REMOVE_LONG_ROAD */
   236 	{CmdBuildRoad,                           0}, /* CMD_BUILD_ROAD */
   237 	{CmdBuildRoad,                           0}, /*  25, CMD_BUILD_ROAD */
   237 	{CmdRemoveRoad,                          0}, /* CMD_REMOVE_ROAD */
   238 	{CmdRemoveRoad,                          0}, /*  26, CMD_REMOVE_ROAD */
   238 	{CmdBuildRoadDepot,               CMD_AUTO}, /* CMD_BUILD_ROAD_DEPOT */
   239 	{CmdBuildRoadDepot,               CMD_AUTO}, /*  27, CMD_BUILD_ROAD_DEPOT */
   239 
   240 	{NULL,                                   0}, /*  28, unused */
   240 	{CmdBuildAirport,                 CMD_AUTO}, /* CMD_BUILD_AIRPORT */
   241 	{CmdBuildAirport,                 CMD_AUTO}, /*  29, CMD_BUILD_AIRPORT */
   241 	{CmdBuildDock,                    CMD_AUTO}, /* CMD_BUILD_DOCK */
   242 	{CmdBuildDock,                    CMD_AUTO}, /*  30, CMD_BUILD_DOCK */
   242 	{CmdBuildShipDepot,               CMD_AUTO}, /* CMD_BUILD_SHIP_DEPOT */
   243 	{CmdBuildShipDepot,               CMD_AUTO}, /*  31, CMD_BUILD_SHIP_DEPOT */
   243 	{CmdBuildBuoy,                    CMD_AUTO}, /* CMD_BUILD_BUOY */
   244 	{CmdBuildBuoy,                    CMD_AUTO}, /*  32, CMD_BUILD_BUOY */
   244 	{CmdPlantTree,                    CMD_AUTO}, /* CMD_PLANT_TREE */
   245 	{CmdPlantTree,                    CMD_AUTO}, /*  33, CMD_PLANT_TREE */
   245 	{CmdBuildRailVehicle,                    0}, /* CMD_BUILD_RAIL_VEHICLE */
   246 	{CmdBuildRailVehicle,                    0}, /*  34, CMD_BUILD_RAIL_VEHICLE */
   246 	{CmdMoveRailVehicle,                     0}, /* CMD_MOVE_RAIL_VEHICLE */
   247 	{CmdMoveRailVehicle,                     0}, /*  35, CMD_MOVE_RAIL_VEHICLE */
   247 	{CmdStartStopTrain,                      0}, /* CMD_START_STOP_TRAIN */
   248 	{CmdStartStopTrain,                      0}, /*  36, CMD_START_STOP_TRAIN */
   248 
   249 	{NULL,                                   0}, /*  37, unused */
   249 	{CmdSellRailWagon,                       0}, /* CMD_SELL_RAIL_WAGON */
   250 	{CmdSellRailWagon,                       0}, /*  38, CMD_SELL_RAIL_WAGON */
   250 	{CmdSendTrainToDepot,                    0}, /* CMD_SEND_TRAIN_TO_DEPOT */
   251 	{CmdSendTrainToDepot,                    0}, /*  39, CMD_SEND_TRAIN_TO_DEPOT */
   251 	{CmdForceTrainProceed,                   0}, /* CMD_FORCE_TRAIN_PROCEED */
   252 	{CmdForceTrainProceed,                   0}, /*  40, CMD_FORCE_TRAIN_PROCEED */
   252 	{CmdReverseTrainDirection,               0}, /* CMD_REVERSE_TRAIN_DIRECTION */
   253 	{CmdReverseTrainDirection,               0}, /*  41, CMD_REVERSE_TRAIN_DIRECTION */
   253 
   254 
   254 	{CmdModifyOrder,                         0}, /* CMD_MODIFY_ORDER */
   255 	{CmdModifyOrder,                         0}, /*  42, CMD_MODIFY_ORDER */
   255 	{CmdSkipToOrder,                         0}, /* CMD_SKIP_TO_ORDER */
   256 	{CmdSkipToOrder,                         0}, /*  43, CMD_SKIP_TO_ORDER */
   256 	{CmdDeleteOrder,                         0}, /* CMD_DELETE_ORDER */
   257 	{CmdDeleteOrder,                         0}, /*  44, CMD_DELETE_ORDER */
   257 	{CmdInsertOrder,                         0}, /* CMD_INSERT_ORDER */
   258 	{CmdInsertOrder,                         0}, /*  45, CMD_INSERT_ORDER */
   258 
   259 
   259 	{CmdChangeServiceInt,                    0}, /* CMD_CHANGE_SERVICE_INT */
   260 	{CmdChangeServiceInt,                    0}, /*  46, CMD_CHANGE_SERVICE_INT */
   260 
   261 
   261 	{CmdBuildIndustry,                       0}, /* CMD_BUILD_INDUSTRY */
   262 	{CmdBuildIndustry,                       0}, /*  47, CMD_BUILD_INDUSTRY */
   262 	{CmdBuildCompanyHQ,               CMD_AUTO}, /* CMD_BUILD_COMPANY_HQ */
   263 	{CmdBuildCompanyHQ,               CMD_AUTO}, /*  48, CMD_BUILD_COMPANY_HQ */
   263 	{CmdSetPlayerFace,                       0}, /* CMD_SET_PLAYER_FACE */
   264 	{CmdSetPlayerFace,                       0}, /*  49, CMD_SET_PLAYER_FACE */
   264 	{CmdSetPlayerColor,                      0}, /* CMD_SET_PLAYER_COLOR */
   265 	{CmdSetPlayerColor,                      0}, /*  50, CMD_SET_PLAYER_COLOR */
   265 
   266 
   266 	{CmdIncreaseLoan,                        0}, /* CMD_INCREASE_LOAN */
   267 	{CmdIncreaseLoan,                        0}, /*  51, CMD_INCREASE_LOAN */
   267 	{CmdDecreaseLoan,                        0}, /* CMD_DECREASE_LOAN */
   268 	{CmdDecreaseLoan,                        0}, /*  52, CMD_DECREASE_LOAN */
   268 
   269 
   269 	{CmdWantEnginePreview,                   0}, /* CMD_WANT_ENGINE_PREVIEW */
   270 	{CmdWantEnginePreview,                   0}, /*  53, CMD_WANT_ENGINE_PREVIEW */
   270 
   271 
   271 	{CmdNameVehicle,                         0}, /* CMD_NAME_VEHICLE */
   272 	{CmdNameVehicle,                         0}, /*  54, CMD_NAME_VEHICLE */
   272 	{CmdRenameEngine,                        0}, /* CMD_RENAME_ENGINE */
   273 	{CmdRenameEngine,                        0}, /*  55, CMD_RENAME_ENGINE */
   273 
   274 
   274 	{CmdChangeCompanyName,                   0}, /* CMD_CHANGE_COMPANY_NAME */
   275 	{CmdChangeCompanyName,                   0}, /*  56, CMD_CHANGE_COMPANY_NAME */
   275 	{CmdChangePresidentName,                 0}, /* CMD_CHANGE_PRESIDENT_NAME */
   276 	{CmdChangePresidentName,                 0}, /*  57, CMD_CHANGE_PRESIDENT_NAME */
   276 
   277 
   277 	{CmdRenameStation,                       0}, /* CMD_RENAME_STATION */
   278 	{CmdRenameStation,                       0}, /*  58, CMD_RENAME_STATION */
   278 
   279 
   279 	{CmdSellAircraft,                        0}, /* CMD_SELL_AIRCRAFT */
   280 	{CmdSellAircraft,                        0}, /*  59, CMD_SELL_AIRCRAFT */
   280 	{CmdStartStopAircraft,                   0}, /* CMD_START_STOP_AIRCRAFT */
   281 	{CmdStartStopAircraft,                   0}, /*  60, CMD_START_STOP_AIRCRAFT */
   281 
   282 
   282 	{CmdBuildAircraft,                       0}, /* CMD_BUILD_AIRCRAFT */
   283 	{CmdBuildAircraft,                       0}, /*  61, CMD_BUILD_AIRCRAFT */
   283 	{CmdSendAircraftToHangar,                0}, /* CMD_SEND_AIRCRAFT_TO_HANGAR */
   284 	{CmdSendAircraftToHangar,                0}, /*  62, CMD_SEND_AIRCRAFT_TO_HANGAR */
   284 	{CmdRefitAircraft,                       0}, /* CMD_REFIT_AIRCRAFT */
   285 	{NULL,                                   0}, /*  63, unused */
   285 
   286 	{CmdRefitAircraft,                       0}, /*  64, CMD_REFIT_AIRCRAFT */
   286 	{CmdPlaceSign,                           0}, /* CMD_PLACE_SIGN */
   287 
   287 	{CmdRenameSign,                          0}, /* CMD_RENAME_SIGN */
   288 	{CmdPlaceSign,                           0}, /*  65, CMD_PLACE_SIGN */
   288 
   289 	{CmdRenameSign,                          0}, /*  66, CMD_RENAME_SIGN */
   289 	{CmdBuildRoadVeh,                        0}, /* CMD_BUILD_ROAD_VEH */
   290 
   290 	{CmdStartStopRoadVeh,                    0}, /* CMD_START_STOP_ROADVEH */
   291 	{CmdBuildRoadVeh,                        0}, /*  67, CMD_BUILD_ROAD_VEH */
   291 	{CmdSellRoadVeh,                         0}, /* CMD_SELL_ROAD_VEH */
   292 	{CmdStartStopRoadVeh,                    0}, /*  68, CMD_START_STOP_ROADVEH */
   292 	{CmdSendRoadVehToDepot,                  0}, /* CMD_SEND_ROADVEH_TO_DEPOT */
   293 	{CmdSellRoadVeh,                         0}, /*  69, CMD_SELL_ROAD_VEH */
   293 	{CmdTurnRoadVeh,                         0}, /* CMD_TURN_ROADVEH */
   294 	{CmdSendRoadVehToDepot,                  0}, /*  70, CMD_SEND_ROADVEH_TO_DEPOT */
   294 	{CmdRefitRoadVeh,                        0}, /* CMD_REFIT_ROAD_VEH */
   295 	{CmdTurnRoadVeh,                         0}, /*  71, CMD_TURN_ROADVEH */
   295 
   296 	{CmdRefitRoadVeh,                        0}, /*  72, CMD_REFIT_ROAD_VEH */
   296 	{CmdPause,                      CMD_SERVER}, /* CMD_PAUSE */
   297 
   297 
   298 	{CmdPause,                      CMD_SERVER}, /*  73, CMD_PAUSE */
   298 	{CmdBuyShareInCompany,                   0}, /* CMD_BUY_SHARE_IN_COMPANY */
   299 
   299 	{CmdSellShareInCompany,                  0}, /* CMD_SELL_SHARE_IN_COMPANY */
   300 	{CmdBuyShareInCompany,                   0}, /*  74, CMD_BUY_SHARE_IN_COMPANY */
   300 	{CmdBuyCompany,                          0}, /* CMD_BUY_COMANY */
   301 	{CmdSellShareInCompany,                  0}, /*  75, CMD_SELL_SHARE_IN_COMPANY */
   301 
   302 	{CmdBuyCompany,                          0}, /*  76, CMD_BUY_COMANY */
   302 	{CmdBuildTown,                 CMD_OFFLINE}, /* CMD_BUILD_TOWN */
   303 
   303 	{CmdRenameTown,                 CMD_SERVER}, /* CMD_RENAME_TOWN */
   304 	{CmdBuildTown,                 CMD_OFFLINE}, /*  77, CMD_BUILD_TOWN */
   304 	{CmdDoTownAction,                        0}, /* CMD_DO_TOWN_ACTION */
   305 	{NULL,                                   0}, /*  78, unused */
   305 
   306 	{NULL,                                   0}, /*  79, unused */
   306 	{CmdSetRoadDriveSide,           CMD_SERVER}, /* CMD_SET_ROAD_DRIVE_SIDE */
   307 	{CmdRenameTown,                 CMD_SERVER}, /*  80, CMD_RENAME_TOWN */
   307 	{CmdChangeDifficultyLevel,      CMD_SERVER}, /* CMD_CHANGE_DIFFICULTY_LEVEL */
   308 	{CmdDoTownAction,                        0}, /*  81, CMD_DO_TOWN_ACTION */
   308 
   309 
   309 	{CmdStartStopShip,                       0}, /* CMD_START_STOP_SHIP */
   310 	{CmdSetRoadDriveSide,           CMD_SERVER}, /*  82, CMD_SET_ROAD_DRIVE_SIDE */
   310 	{CmdSellShip,                            0}, /* CMD_SELL_SHIP */
   311 	{NULL,                                   0}, /*  83, unused */
   311 	{CmdBuildShip,                           0}, /* CMD_BUILD_SHIP */
   312 	{NULL,                                   0}, /*  84, unused */
   312 	{CmdSendShipToDepot,                     0}, /* CMD_SEND_SHIP_TO_DEPOT */
   313 	{CmdChangeDifficultyLevel,      CMD_SERVER}, /*  85, CMD_CHANGE_DIFFICULTY_LEVEL */
   313 	{CmdRefitShip,                           0}, /* CMD_REFIT_SHIP */
   314 
   314 
   315 	{CmdStartStopShip,                       0}, /*  86, CMD_START_STOP_SHIP */
   315 	{CmdOrderRefit,                          0}, /* CMD_ORDER_REFIT */
   316 	{CmdSellShip,                            0}, /*  87, CMD_SELL_SHIP */
   316 	{CmdCloneOrder,                          0}, /* CMD_CLONE_ORDER */
   317 	{CmdBuildShip,                           0}, /*  88, CMD_BUILD_SHIP */
   317 
   318 	{CmdSendShipToDepot,                     0}, /*  89, CMD_SEND_SHIP_TO_DEPOT */
   318 	{CmdClearArea,                           0}, /* CMD_CLEAR_AREA */
   319 	{NULL,                                   0}, /*  90, unused */
   319 
   320 	{CmdRefitShip,                           0}, /*  91, CMD_REFIT_SHIP */
   320 	{CmdMoneyCheat,                CMD_OFFLINE}, /* CMD_MONEY_CHEAT */
   321 
   321 	{CmdBuildCanal,                   CMD_AUTO}, /* CMD_BUILD_CANAL */
   322 	{NULL,                                   0}, /*  92, unused */
   322 	{CmdPlayerCtrl,                          0}, /* CMD_PLAYER_CTRL */
   323 	{NULL,                                   0}, /*  93, unused */
   323 
   324 	{NULL,                                   0}, /*  94, unused */
   324 	{CmdLevelLand,                    CMD_AUTO}, /* CMD_LEVEL_LAND */
   325 	{NULL,                                   0}, /*  95, unused */
   325 
   326 	{NULL,                                   0}, /*  96, unused */
   326 	{CmdRefitRailVehicle,                    0}, /* CMD_REFIT_RAIL_VEHICLE */
   327 	{NULL,                                   0}, /*  97, unused */
   327 	{CmdRestoreOrderIndex,                   0}, /* CMD_RESTORE_ORDER_INDEX */
   328 
   328 	{CmdBuildLock,                    CMD_AUTO}, /* CMD_BUILD_LOCK */
   329 	{CmdOrderRefit,                          0}, /*  98, CMD_ORDER_REFIT */
   329 
   330 	{CmdCloneOrder,                          0}, /*  99, CMD_CLONE_ORDER */
   330 	{CmdBuildSignalTrack,             CMD_AUTO}, /* CMD_BUILD_SIGNAL_TRACK */
   331 
   331 	{CmdRemoveSignalTrack,            CMD_AUTO}, /* CMD_REMOVE_SIGNAL_TRACK */
   332 	{CmdClearArea,                           0}, /* 100, CMD_CLEAR_AREA */
   332 
   333 	{NULL,                                   0}, /* 101, unused */
   333 	{CmdGiveMoney,                           0}, /* CMD_GIVE_MONEY */
   334 
   334 	{CmdChangePatchSetting,         CMD_SERVER}, /* CMD_CHANGE_PATCH_SETTING */
   335 	{CmdMoneyCheat,                CMD_OFFLINE}, /* 102, CMD_MONEY_CHEAT */
   335 	{CmdSetAutoReplace,                      0}, /* CMD_SET_AUTOREPLACE */
   336 	{CmdBuildCanal,                   CMD_AUTO}, /* 103, CMD_BUILD_CANAL */
   336 	{CmdCloneVehicle,                        0}, /* CMD_CLONE_VEHICLE */
   337 	{CmdPlayerCtrl,                          0}, /* 104, CMD_PLAYER_CTRL */
   337 	{CmdMassStartStopVehicle,                0}, /* CMD_MASS_START_STOP */
   338 
   338 	{CmdDepotSellAllVehicles,                0}, /* CMD_DEPOT_SELL_ALL_VEHICLES */
   339 	{CmdLevelLand,                    CMD_AUTO}, /* 105, CMD_LEVEL_LAND */
   339 	{CmdDepotMassAutoReplace,                0}, /* CMD_DEPOT_MASS_AUTOREPLACE */
   340 
   340 	{CmdCreateGroup,                         0}, /* CMD_CREATE_GROUP */
   341 	{CmdRefitRailVehicle,                    0}, /* 106, CMD_REFIT_RAIL_VEHICLE */
   341 	{CmdDeleteGroup,                         0}, /* CMD_DELETE_GROUP */
   342 	{CmdRestoreOrderIndex,                   0}, /* 107, CMD_RESTORE_ORDER_INDEX */
   342 	{CmdRenameGroup,                         0}, /* CMD_RENAME_GROUP */
   343 	{CmdBuildLock,                    CMD_AUTO}, /* 108, CMD_BUILD_LOCK */
   343 	{CmdAddVehicleGroup,                     0}, /* CMD_ADD_VEHICLE_GROUP */
   344 	{NULL,                                   0}, /* 109, unused */
   344 	{CmdAddSharedVehicleGroup,               0}, /* CMD_ADD_SHARE_VEHICLE_GROUP */
   345 	{CmdBuildSignalTrack,             CMD_AUTO}, /* 110, CMD_BUILD_SIGNAL_TRACK */
   345 	{CmdRemoveAllVehiclesGroup,              0}, /* CMD_REMOVE_ALL_VEHICLES_GROUP */
   346 	{CmdRemoveSignalTrack,            CMD_AUTO}, /* 111, CMD_REMOVE_SIGNAL_TRACK */
   346 	{CmdSetGroupReplaceProtection,           0}, /* CMD_SET_GROUP_REPLACE_PROTECTION */
   347 	{NULL,                                   0}, /* 112, unused */
   347 	{CmdMoveOrder,                           0}, /* CMD_MOVE_ORDER */
   348 	{CmdGiveMoney,                           0}, /* 113, CMD_GIVE_MONEY */
   348 	{CmdChangeTimetable,                     0}, /* CMD_CHANGE_TIMETABLE */
   349 	{CmdChangePatchSetting,         CMD_SERVER}, /* 114, CMD_CHANGE_PATCH_SETTING */
   349 	{CmdSetVehicleOnTime,                    0}, /* CMD_SET_VEHICLE_ON_TIME */
   350 	{CmdSetAutoReplace,                      0}, /* 115, CMD_SET_AUTOREPLACE */
   350 	{CmdAutofillTimetable,                   0}, /* CMD_AUTOFILL_TIMETABLE */
   351 	{CmdCloneVehicle,                        0}, /* 116, CMD_CLONE_VEHICLE */
       
   352 	{CmdMassStartStopVehicle,                0}, /* 117, CMD_MASS_START_STOP */
       
   353 	{CmdDepotSellAllVehicles,                0}, /* 118, CMD_DEPOT_SELL_ALL_VEHICLES */
       
   354 	{CmdDepotMassAutoReplace,                0}, /* 119, CMD_DEPOT_MASS_AUTOREPLACE */
       
   355 	{CmdCreateGroup,                         0}, /* 120, CMD_CREATE_GROUP */
       
   356 	{CmdDeleteGroup,                         0}, /* 121, CMD_DELETE_GROUP */
       
   357 	{CmdRenameGroup,                         0}, /* 122, CMD_RENAME_GROUP */
       
   358 	{CmdAddVehicleGroup,                     0}, /* 123, CMD_ADD_VEHICLE_GROUP */
       
   359 	{CmdAddSharedVehicleGroup,               0}, /* 124, CMD_ADD_SHARE_VEHICLE_GROUP */
       
   360 	{CmdRemoveAllVehiclesGroup,              0}, /* 125, CMD_REMOVE_ALL_VEHICLES_GROUP */
       
   361 	{CmdSetGroupReplaceProtection,           0}, /* 126, CMD_SET_GROUP_REPLACE_PROTECTION */
       
   362 	{CmdMoveOrder,                           0}, /* 127, CMD_MOVE_ORDER */
       
   363 	{CmdChangeTimetable,                     0}, /* 128, CMD_CHANGE_TIMETABLE */
       
   364 	{CmdSetVehicleOnTime,                    0}, /* 129, CMD_SET_VEHICLE_ON_TIME */
       
   365 	{CmdAutofillTimetable,                   0}, /* 130, CMD_AUTOFILL_TIMETABLE */
       
   366 };
   351 };
   367 
   352 
   368 /*!
   353 /*!
   369  * This function range-checks a cmd, and checks if the cmd is not NULL
   354  * This function range-checks a cmd, and checks if the cmd is not NULL
   370  *
   355  *