home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
GameStar 2006 March
/
Gamestar_82_2006-03_dvd.iso
/
DVDStar
/
Editace
/
quake4_sdkv10.exe
/
source
/
game
/
mp
/
CTF.h
< prev
next >
Wrap
C/C++ Source or Header
|
2005-11-14
|
2KB
|
85 lines
//----------------------------------------------------------------
// CTF.h
//
// Copyright 2002-2004 Raven Software
//----------------------------------------------------------------
#ifndef __CTF_H__
#define __CTF_H__
#include "../Game_local.h"
#include "../MultiplayerGame.h"
/*
===============================================================================
rvCTF_AssaultPoint
===============================================================================
*/
class rvCTF_AssaultPoint : public idEntity {
public:
CLASS_PROTOTYPE( rvCTF_AssaultPoint );
void Spawn( void );
rvCTF_AssaultPoint();
~rvCTF_AssaultPoint();
int GetOwner( void );
int GetIndex( void );
void SetOwnerColor ( void );
void SetOwner ( int newOwner );
void Reset ( void );
private:
void Event_Touch( idEntity *activator, trace_t *trace );
void Event_InitializeLinks( void );
void ResetSpawns( int team );
void ResetIndices( void );
// these could be maintained as lists to allow multiple AP paths
// the assault point one step closer to the Strogg base
idEntityPtr<idEntity> toStrogg;
// the assault point one step closer to the Marine base
idEntityPtr<idEntity> toMarine;
// who currently owns this assault point
int owner;
int index;
bool linked;
idClipModel* trigger;
};
ID_INLINE int rvCTF_AssaultPoint::GetOwner( void ) {
return owner;
}
ID_INLINE int rvCTF_AssaultPoint::GetIndex( void ) {
return index;
}
/*
===============================================================================
rvCTFAssaultPlayerStart
===============================================================================
*/
class rvCTFAssaultPlayerStart : public idPlayerStart {
public:
CLASS_PROTOTYPE( rvCTFAssaultPlayerStart );
void Spawn( void );
int GetTeam( void );
private:
void Event_Activate( idEntity *activator );
int team;
};
#endif