Imports the current Win32 source for the pod-racing game 'Red Planet', built on the MUNGA engine and its L4 (Win32/DirectX) platform layer: - MUNGA / MUNGA_L4: cross-platform engine core and Win32 backend - RP / RP_L4: Red Planet game logic and Win32 application - DivLoader, Setup1: asset loader and installer project - lib, MUNGA_L4/openal, MUNGA_L4/sos: third-party audio dependencies Removed stale Subversion metadata and added .gitignore/.gitattributes. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
62 lines
1.9 KiB
C++
62 lines
1.9 KiB
C++
#pragma once
|
|
|
|
#include "..\munga\subsystm.h"
|
|
#include "..\munga\controls.h"
|
|
|
|
class VTV;
|
|
|
|
//##########################################################################
|
|
//######################## Subsystem #################################
|
|
//##########################################################################
|
|
|
|
class VTVSubsystem : public Subsystem
|
|
{
|
|
friend class VTV;
|
|
|
|
//##########################################################################
|
|
// Shared Data Support
|
|
//
|
|
public:
|
|
static Derivation *GetClassDerivations();
|
|
static SharedData DefaultData;
|
|
|
|
//##########################################################################
|
|
// Messaging support
|
|
//
|
|
|
|
// No messages handled here
|
|
|
|
//##########################################################################
|
|
// Construction and Destruction Support
|
|
//
|
|
public:
|
|
~VTVSubsystem();
|
|
|
|
Logical TestInstance() const;
|
|
|
|
protected:
|
|
VTVSubsystem(VTV *entity, int subsystem_id, SubsystemResource *model, SharedData &shared_data, void *control_destination = NULL, Receiver::MessageID message_id = (Receiver::MessageID) 0);
|
|
|
|
//##########################################################################
|
|
// Model support
|
|
//
|
|
public:
|
|
VTV* GetEntity() { return (VTV*)Subsystem::GetEntity(); }
|
|
|
|
//##########################################################################
|
|
// Mapping support
|
|
//
|
|
protected:
|
|
void EnterConfiguration(ControlsButton *direct_target, Receiver *receiver, Receiver::MessageID active_message_id, Receiver::MessageID config_message_id);
|
|
void ExitConfiguration();
|
|
|
|
// 'controlDestination' is a pointer to the "thing" that a button
|
|
// is mapped to (if 'direct-mapped'), and 'controlMessageID' indicates
|
|
// the message ID that the button is mapped to (if 'event-mapped').
|
|
// These values must be set appropriately in order for gauges to be
|
|
// able to determine ownership of mapped buttons.
|
|
void *controlDestination; // OBSOLETE?
|
|
|
|
Receiver::MessageID controlMessageID; // OBSOLETE?
|
|
};
|