100 lines
4.9 KiB
C++
100 lines
4.9 KiB
C++
#pragma once
|
|
|
|
class TPinballTable;
|
|
class TPinballComponent;
|
|
|
|
struct component_tag
|
|
{
|
|
LPCSTR Name;
|
|
TPinballComponent* Component;
|
|
};
|
|
|
|
|
|
struct component_control
|
|
{
|
|
void (* ControlFunc)(int, TPinballComponent*);
|
|
int ScoreCount;
|
|
int* Scores;
|
|
};
|
|
|
|
struct component_info
|
|
{
|
|
component_tag* Tag;
|
|
component_control Control;
|
|
};
|
|
|
|
|
|
class control
|
|
{
|
|
public:
|
|
static TPinballTable* TableG;
|
|
static component_info score_components[88];
|
|
static component_tag* simple_components[142];
|
|
static int table_control_flag;
|
|
|
|
static void make_links(TPinballTable* table);
|
|
static TPinballComponent* make_component_link(component_tag* tag);
|
|
static void handler(int code, TPinballComponent* cmp);
|
|
|
|
static void FlipperRebounderControl1(int code, TPinballComponent* caller);
|
|
static void FlipperRebounderControl2(int code, TPinballComponent* caller);
|
|
static void RebounderControl(int code, TPinballComponent* caller);
|
|
static void BumperControl(int code, TPinballComponent* caller);
|
|
static void LeftKickerControl(int code, TPinballComponent* caller);
|
|
static void RightKickerControl(int code, TPinballComponent* caller);
|
|
static void LeftKickerGateControl(int code, TPinballComponent* caller);
|
|
static void RightKickerGateControl(int code, TPinballComponent* caller);
|
|
static void DeploymentChuteToEscapeChuteOneWayControl(int code, TPinballComponent* caller);
|
|
static void DeploymentChuteToTableOneWayControl(int code, TPinballComponent* caller);
|
|
static void DrainBallBlockerControl(int code, TPinballComponent* caller);
|
|
static void LaunchRampControl(int code, TPinballComponent* caller);
|
|
static void LaunchRampHoleControl(int code, TPinballComponent* caller);
|
|
static void SpaceWarpRolloverControl(int code, TPinballComponent* caller);
|
|
static void ReentryLanesRolloverControl(int code, TPinballComponent* caller);
|
|
static void BumperGroupControl(int code, TPinballComponent* caller);
|
|
static void LaunchLanesRolloverControl(int code, TPinballComponent* caller);
|
|
static void OutLaneRolloverControl(int code, TPinballComponent* caller);
|
|
static void ExtraBallLightControl(int code, TPinballComponent* caller);
|
|
static void ReturnLaneRolloverControl(int code, TPinballComponent* caller);
|
|
static void BonusLaneRolloverControl(int code, TPinballComponent* caller);
|
|
static void FuelRollover1Control(int code, TPinballComponent* caller);
|
|
static void FuelRollover2Control(int code, TPinballComponent* caller);
|
|
static void FuelRollover3Control(int code, TPinballComponent* caller);
|
|
static void FuelRollover4Control(int code, TPinballComponent* caller);
|
|
static void FuelRollover5Control(int code, TPinballComponent* caller);
|
|
static void FuelRollover6Control(int code, TPinballComponent* caller);
|
|
static void HyperspaceLightGroupControl(int code, TPinballComponent* caller);
|
|
static void WormHoleControl(int code, TPinballComponent* caller);
|
|
static void LeftFlipperControl(int code, TPinballComponent* caller);
|
|
static void RightFlipperControl(int code, TPinballComponent* caller);
|
|
static void JackpotLightControl(int code, TPinballComponent* caller);
|
|
static void BonusLightControl(int code, TPinballComponent* caller);
|
|
static void BoosterTargetControl(int code, TPinballComponent* caller);
|
|
static void MedalLightGroupControl(int code, TPinballComponent* caller);
|
|
static void MultiplierLightGroupControl(int code, TPinballComponent* caller);
|
|
static void FuelSpotTargetControl(int code, TPinballComponent* caller);
|
|
static void MissionSpotTargetControl(int code, TPinballComponent* caller);
|
|
static void LeftHazardSpotTargetControl(int code, TPinballComponent* caller);
|
|
static void RightHazardSpotTargetControl(int code, TPinballComponent* caller);
|
|
static void WormHoleDestinationControl(int code, TPinballComponent* caller);
|
|
static void BlackHoleKickoutControl(int code, TPinballComponent* caller);
|
|
static void FlagControl(int code, TPinballComponent* caller);
|
|
static void GravityWellKickoutControl(int code, TPinballComponent* caller);
|
|
static void SkillShotGate1Control(int code, TPinballComponent* caller);
|
|
static void SkillShotGate2Control(int code, TPinballComponent* caller);
|
|
static void SkillShotGate3Control(int code, TPinballComponent* caller);
|
|
static void SkillShotGate4Control(int code, TPinballComponent* caller);
|
|
static void SkillShotGate5Control(int code, TPinballComponent* caller);
|
|
static void SkillShotGate6Control(int code, TPinballComponent* caller);
|
|
static void ShootAgainLightControl(int code, TPinballComponent* caller);
|
|
static void EscapeChuteSinkControl(int code, TPinballComponent* caller);
|
|
static void MissionControl(int code, TPinballComponent* caller);
|
|
static void HyperspaceKickOutControl(int code, TPinballComponent* caller);
|
|
static void PlungerControl(int code, TPinballComponent* caller);
|
|
static void MedalTargetControl(int code, TPinballComponent* caller);
|
|
static void MultiplierTargetControl(int code, TPinballComponent* caller);
|
|
static void BallDrainControl(int code, TPinballComponent* caller);
|
|
|
|
static void table_control_handler(int code);
|
|
};
|