callback_table.c
author KUDr
Wed, 27 Dec 2006 23:11:43 +0000
changeset 5583 ed718fa4c69c
parent 4689 b4bf1ef178d8
child 5510 d4b8e7933d5e
permissions -rw-r--r--
(svn r7585) -Codechange: CheckStationSpreadOut() took too much CPU. Station rectangle is now maintained instead of calculating it each time by walking through whole map. Should help with the performance issue related to AIs trying to build road stops too often. (idea by Celestar)
/* $Id$ */

#include "stdafx.h"
#include "openttd.h"
#include "callback_table.h"
#include "functions.h"

// If you add a callback for DoCommandP, also add the callback in here
//   see below for the full list!
// If you don't do it, it won't work across the network!!

/* aircraft_gui.c */
CommandCallback CcBuildAircraft;
CommandCallback CcCloneAircraft;

/* airport_gui.c */
CommandCallback CcBuildAirport;

/* bridge_gui.c */
CommandCallback CcBuildBridge;

/* dock_gui.c */
CommandCallback CcBuildDocks;
CommandCallback CcBuildCanal;

/* depot_gui.c */
CommandCallback CcCloneVehicle;

/* main_gui.c */
CommandCallback CcPlaySound10;
CommandCallback CcPlaceSign;
CommandCallback CcTerraform;
CommandCallback CcBuildTown;

/* rail_gui.c */
CommandCallback CcPlaySound1E;
CommandCallback CcRailDepot;
CommandCallback CcStation;
CommandCallback CcBuildRailTunnel;

/* road_gui.c */
CommandCallback CcPlaySound1D;
CommandCallback CcBuildRoadTunnel;
CommandCallback CcRoadDepot;

/* roadveh_gui.c */
CommandCallback CcBuildRoadVeh;
CommandCallback CcCloneRoadVeh;

/* ship_gui.c */
CommandCallback CcBuildShip;
CommandCallback CcCloneShip;

/* train_gui.c */
CommandCallback CcBuildWagon;
CommandCallback CcBuildLoco;
CommandCallback CcCloneTrain;

CommandCallback CcAI;

CommandCallback *_callback_table[] = {
	/* 0x00 */ NULL,
	/* 0x01 */ CcBuildAircraft,
	/* 0x02 */ CcBuildAirport,
	/* 0x03 */ CcBuildBridge,
	/* 0x04 */ CcBuildCanal,
	/* 0x05 */ CcBuildDocks,
	/* 0x06 */ CcBuildLoco,
	/* 0x07 */ CcBuildRoadVeh,
	/* 0x08 */ CcBuildShip,
	/* 0x09 */ CcBuildTown,
	/* 0x0A */ CcBuildRoadTunnel,
	/* 0x0B */ CcBuildRailTunnel,
	/* 0x0C */ CcBuildWagon,
	/* 0x0D */ CcRoadDepot,
	/* 0x0E */ CcRailDepot,
	/* 0x0F */ CcPlaceSign,
	/* 0x10 */ CcPlaySound10,
	/* 0x11 */ CcPlaySound1D,
	/* 0x12 */ CcPlaySound1E,
	/* 0x13 */ CcStation,
	/* 0x14 */ CcTerraform,
	/* 0x15 */ CcCloneAircraft,
	/* 0x16 */ CcCloneRoadVeh,
	/* 0x17 */ CcCloneShip,
	/* 0x18 */ CcCloneTrain,
	/* 0x19 */ CcAI,
	/* 0x1A */ CcCloneVehicle
};

const int _callback_table_count = lengthof(_callback_table);