Initial import of Red Planet v4.10 Win32 source
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>
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
#pragma once
|
||||
|
||||
#include "cmpnnt.h"
|
||||
#include "schain.h"
|
||||
|
||||
class StateIndicator : public Node
|
||||
{
|
||||
public:
|
||||
StateIndicator();
|
||||
StateIndicator(unsigned max_states);
|
||||
StateIndicator(const StateIndicator &state_indicator);
|
||||
~StateIndicator();
|
||||
|
||||
StateIndicator& operator=(const StateIndicator&);
|
||||
|
||||
Logical operator==(const StateIndicator&) const;
|
||||
|
||||
public:
|
||||
unsigned GetState()
|
||||
{
|
||||
Check(this);
|
||||
return currentState;
|
||||
}
|
||||
unsigned GetOldState()
|
||||
{
|
||||
Check(this);
|
||||
return oldState;
|
||||
}
|
||||
void SetState(unsigned new_state);
|
||||
|
||||
protected:
|
||||
unsigned stateCount, oldState, currentState;
|
||||
|
||||
public:
|
||||
void AddAudioWatcher(Component *watcher)
|
||||
{
|
||||
Check(&audioWatcherSocket);
|
||||
audioWatcherSocket.Add(watcher);
|
||||
}
|
||||
void AddVideoWatcher(Component *watcher)
|
||||
{
|
||||
Check(&videoWatcherSocket);
|
||||
videoWatcherSocket.Add(watcher);
|
||||
}
|
||||
void AddGaugeWatcher(Component *watcher)
|
||||
{
|
||||
Check(&gaugeWatcherSocket);
|
||||
gaugeWatcherSocket.Add(watcher);
|
||||
}
|
||||
|
||||
private:
|
||||
SChainOf<Component*> audioWatcherSocket;
|
||||
SChainOf<Component*> videoWatcherSocket;
|
||||
SChainOf<Component*> gaugeWatcherSocket;
|
||||
|
||||
public:
|
||||
friend std::ostream& operator << (std::ostream &strm, const StateIndicator &state_indicator);
|
||||
|
||||
public:
|
||||
Logical TestInstance() const;
|
||||
static Logical TestClass();
|
||||
};
|
||||
Reference in New Issue
Block a user