Classes | Public Types | Public Member Functions | Static Public Attributes | Protected Attributes | Static Protected Attributes | Private Member Functions | Private Attributes | Friends

Actor Class Reference

Inheritance diagram for Actor:
Inheritance graph
[legend]
Collaboration diagram for Actor:
Collaboration graph
[legend]

List of all members.

Classes

struct  NonStatPlatData

Public Types

enum  { _MAX_TOOLS = 6 }

Public Member Functions

 Actor (const SObjectStartupData *startupData)
virtual ~Actor ()
virtual void Validate () const
const _Common * GetCommonBlockPtr () const
const _Toolset * GetToolsetBlockPtr () const
const _Mesh * GetMeshBlockPtr () const
const _ShadowPage * GetShadowPageBlockPtr () const
int32 GetMeshName () const
const Vector3 GetPredictedPosition () const
const Vector3currentPos () const
void setCurrentPos (const Vector3 &pos)
void setSpeed (const Vector3 &speed)
QInputDigitalGetInputPointer () const
void SetInputDevice (QInputDigital *)
bool IsNeedleGunTarget () const
virtual bool CanCollide () const
virtual bool CanUpdate () const
virtual bool CanRender () const
virtual bool IsLight () const
virtual bool IsActivationBox () const
bool GetSpecialCollisionMessage (void *msgData, int32 maxsize)
virtual void reset ()
virtual void predictPosition (const Clock &currentTime)
virtual void update ()
void UpdateAnimation ()
void StartFrame ()
bool hasRunUpdate () const
bool hasRunPredictPosition () const
virtual bool isVisible () const
virtual void die ()
void spawnPoof () const
Scalar GetDistanceTo (const Actor *pActor) const
Scalar ReadSystemMailbox (int boxnum) const
void WriteSystemMailbox (int boxnum, const Scalar value)
Scalar getHealth () const
void deltaHealth (Scalar nHealth)
int32 getPower () const
virtual void BindAssets (Memory &memory)
virtual void UnBindAssets ()
RenderActorGetRenderActor ()
bool LocalHandleLocation (HandleID id, Vector3 &dest) const
bool GlobalHandleLocation (HandleID id, Vector3 &dest) const
short PlaySoundEffect (int program)
int GetActorIndex () const
void SetActorIndex (int32 idxActor)
const ColSpaceGetColSpace () const
virtual void KillSelf ()
virtual MsgPortGetMsgPort ()
virtual MailboxesGetMailboxes ()
virtual const MailboxesGetMailboxes () const
virtual const PhysicalAttributesGetPhysicalAttributes () const
virtual PhysicalAttributesGetWritablePhysicalAttributes ()
void Collision (PhysicalObject &other, const Vector3 &normal)
virtual const QInputDigitalGetInputDevice () const
virtual MovementManagerGetMovementManager ()
virtual MemoryGetMemory () const
virtual void MovementStateChanged (const MovementObject::EMovementState newState)

Static Public Attributes

static const Scalar INDESTRUCTIBLE_HP = Scalar( SCALAR_CONSTANT(32767) )

Protected Attributes

struct NonStatPlatData_nonStatPlat
struct {
   unsigned   _: 10
   unsigned   _lastVisibility: 1
   unsigned   _visibility: 1
   unsigned   _idxActor: 11
_flags
PhysicalAttributes _physicalAttributes
RenderActor_renderActor

Static Protected Attributes

static const Actor::NonStatPlatData _statPlatData

Private Member Functions

void _InitShadow ()
void _InitTools ()
void _InitScript (const SObjectStartupData *startupData)
void _InitInput (const SObjectStartupData *startupData)

Private Attributes

ActorMailboxes _mailboxes

Friends

class AnimationManagerActual
class MovementManager
class PathHandler
class MovementHandler
class GroundHandler
class AirHandler
class ClimbHandler
class CameraHandler

Detailed Description

Definition at line 99 of file actor.hp.


Member Enumeration Documentation

anonymous enum
Enumerator:
_MAX_TOOLS 

Definition at line 199 of file actor.hp.


Constructor & Destructor Documentation

Actor::Actor ( const SObjectStartupData startupData  ) 
Actor::~Actor (  )  [virtual]

Member Function Documentation

void Actor::_InitInput ( const SObjectStartupData startupData  )  [private]
void Actor::_InitScript ( const SObjectStartupData startupData  )  [private]
void Actor::_InitShadow (  )  [private]
void Actor::_InitTools (  )  [private]
void Actor::BindAssets ( Memory memory  )  [virtual]

Reimplemented from BaseObject.

Definition at line 383 of file actor.cc.

References _physicalAttributes, _renderActor, Emitter::ParticleParameters::alphaDecrement, assert, AssertMsg, DBSTREAM3, Emitter::ParticleParameters::deltaRotation, Emitter::EmitterParameters::generationType, Level::GetAssetManager(), AssetManager::GetAssetStream(), PhysicalAttributes::GetColSpace(), GetMeshBlockPtr(), GetMeshName(), PhysicalObject::GetMovementBlockPtr(), packedAssetID::ID(), Emitter::ParticleParameters::initialAlpha, Emitter::ParticleParameters::initialRotation, Emitter::EmitterParameters::initialSphereRadius, Emitter::ParticleParameters::initialVelocity, Level::LevelClock(), Emitter::ParticleParameters::lifeTime, ColSpace::Max(), max, ColSpace::Min(), min, MODEL_TYPE_BOX, MODEL_TYPE_EMITTER, MODEL_TYPE_LIGHT, MODEL_TYPE_MATTE, MODEL_TYPE_MESH, MODEL_TYPE_NONE, MODEL_TYPE_SCARECROW, Emitter::EmitterParameters::nParticles, NULLRenderActor, Emitter::EmitterParameters::period, PhysicalAttributes::Position(), Emitter::EmitterParameters::position, Angle::Revolution(), PhysicalAttributes::Rotation(), Emitter::EmitterParameters::rotation, PhysicalAttributes::SetRotation(), Emitter::EmitterParameters::sphereExpansionRate, Emitter::EmitterParameters::startDelay, Emitter::ParticleParameters::templateObject, theLevel, packedAssetID::ValidAssetID(), RenderActor::Validate(), ValidPtr(), Emitter::EmitterParameters::yArc, Emitter::EmitterParameters::zArc, Euler::zero, and Scalar::zero.

Referenced by Level::ConstructTemplateObject().

bool Actor::CanCollide (  )  const [virtual]
bool Actor::CanRender (  )  const [virtual]

Reimplemented in Camera, Director, Light, Target, and Tool.

Definition at line 892 of file actor.cc.

References assert, GetMeshBlockPtr(), MODEL_TYPE_NONE, and ValidPtr().

Referenced by ReadSystemMailbox(), and Shadow::Shadow().

bool Actor::CanUpdate (  )  const [virtual]

Reimplemented in Camera, Director, Target, and Tool.

Definition at line 906 of file actor.cc.

void Actor::Collision ( PhysicalObject other,
const Vector3 normal 
) [virtual]
const Vector3 & Actor::currentPos (  )  const [inline]
void Actor::deltaHealth ( Scalar  nHealth  ) 
void Actor::die (  )  [virtual]
int Actor::GetActorIndex (  )  const [inline]
const ColSpace & Actor::GetColSpace (  )  const [inline]

Definition at line 172 of file actor.hpi.

References _physicalAttributes, and PhysicalAttributes::GetColSpace().

const _Common * Actor::GetCommonBlockPtr (  )  const [inline]
Scalar Actor::GetDistanceTo ( const Actor pActor  )  const

Definition at line 1003 of file actor.cc.

References assert, currentPos(), ValidPtr(), Vector3::X(), Vector3::Y(), and Vector3::Z().

Referenced by ToolNeedleGun::activate().

Scalar Actor::getHealth (  )  const [inline]

Definition at line 76 of file actor.hpi.

References Actor::NonStatPlatData::_hitPoints, and _nonStatPlat.

const QInputDigital * Actor::GetInputDevice (  )  const [virtual]
QInputDigital * Actor::GetInputPointer (  )  const [inline]

Definition at line 180 of file actor.hpi.

References Actor::NonStatPlatData::_input, and _nonStatPlat.

Mailboxes & Actor::GetMailboxes (  )  [virtual]
const Mailboxes & Actor::GetMailboxes (  )  const [virtual]

Implements BaseObject.

Definition at line 1549 of file actor.cc.

References _mailboxes.

Memory & Actor::GetMemory (  )  const [virtual]

Implements MovementObject.

Definition at line 1535 of file actor.cc.

References Level::GetMemory(), and theLevel.

const _Mesh * Actor::GetMeshBlockPtr (  )  const [inline]

Definition at line 145 of file actor.hpi.

References BaseObject::_oadData, assert, BaseObject::GetBlockPtr(), and ValidPtr().

Referenced by Actor(), BindAssets(), CanRender(), isVisible(), and update().

int32 Actor::GetMeshName (  )  const [inline]

Definition at line 155 of file actor.hpi.

References BaseObject::_oadData, assert, and ValidPtr().

Referenced by Actor(), LevelRooms::AddObjectToRoom(), and BindAssets().

MovementManager & Actor::GetMovementManager (  )  [virtual]
MsgPort & Actor::GetMsgPort (  )  [virtual]

Implements BaseObject.

Definition at line 1493 of file actor.cc.

References Actor::NonStatPlatData::_msgPort, _nonStatPlat, assert, Validate(), and ValidPtr().

Referenced by GetSpecialCollisionMessage(), update(), and ~Actor().

const PhysicalAttributes & Actor::GetPhysicalAttributes (  )  const [virtual]
int32 Actor::getPower (  )  const

Definition at line 1030 of file actor.cc.

References _nonStatPlat, Actor::NonStatPlatData::_shield, assert, and ValidPtr().

Referenced by ReadSystemMailbox().

const Vector3 Actor::GetPredictedPosition (  )  const [inline]

Definition at line 164 of file actor.hpi.

References _physicalAttributes, and PhysicalAttributes::PredictedPosition().

Referenced by spawnPoof().

RenderActor & Actor::GetRenderActor (  )  [inline]

Definition at line 31 of file actor.hpi.

References _renderActor, assert, and ValidPtr().

Referenced by Camera::Render(), and Level::RenderScene().

const _ShadowPage * Actor::GetShadowPageBlockPtr (  )  const [inline]

Definition at line 114 of file actor.hpi.

References BaseObject::_oadData, assert, BaseObject::GetBlockPtr(), and ValidPtr().

Referenced by _InitShadow(), and update().

bool Actor::GetSpecialCollisionMessage ( void *  msgData,
int32  maxsize 
)
const _Toolset * Actor::GetToolsetBlockPtr (  )  const [inline]

Definition at line 124 of file actor.hpi.

References BaseObject::_oadData, assert, BaseObject::GetBlockPtr(), and ValidPtr().

Referenced by _InitTools(), and Actor().

PhysicalAttributes & Actor::GetWritablePhysicalAttributes (  )  [virtual]
bool Actor::GlobalHandleLocation ( HandleID  id,
Vector3 dest 
) const

Definition at line 971 of file actor.cc.

References _renderActor, currentPos(), and RenderActor::GetHandle().

Referenced by Tool::activate().

bool Actor::hasRunPredictPosition (  )  const [inline]
bool Actor::hasRunUpdate (  )  const [inline]

Definition at line 60 of file actor.hpi.

References GetPhysicalAttributes().

Referenced by Shield::update().

bool Actor::IsActivationBox (  )  const [virtual]

Definition at line 933 of file actor.cc.

References BaseObject::kind().

bool Actor::IsLight (  )  const [virtual]

Definition at line 925 of file actor.cc.

References BaseObject::kind().

bool Actor::IsNeedleGunTarget (  )  const [inline]

Definition at line 197 of file actor.hpi.

References GetCommonBlockPtr().

Referenced by ToolNeedleGun::activate().

bool Actor::isVisible (  )  const [virtual]

Reimplemented in Shadow, and Shield.

Definition at line 732 of file actor.cc.

References Scalar::AsBool(), assert, GetMailboxes(), GetMeshBlockPtr(), Mailboxes::ReadMailbox(), and ValidPtr().

Referenced by Level::RenderScene().

void Actor::KillSelf (  )  [virtual]

Implements BaseObject.

Definition at line 1484 of file actor.cc.

References Level::SetPendingRemove(), and theLevel.

bool Actor::LocalHandleLocation ( HandleID  id,
Vector3 dest 
) const

Definition at line 960 of file actor.cc.

References _renderActor, and RenderActor::GetHandle().

void Actor::MovementStateChanged ( const MovementObject::EMovementState  newState  )  [virtual]
short Actor::PlaySoundEffect ( int  program  ) 
void Actor::predictPosition ( const Clock currentTime  )  [virtual]
Scalar Actor::ReadSystemMailbox ( int  boxnum  )  const
void Actor::reset (  )  [virtual]

Definition at line 883 of file actor.cc.

References _InitShadow(), and _InitTools().

Referenced by Level::Level(), and Level::reset().

void Actor::SetActorIndex ( int32  idxActor  )  [inline]

Definition at line 51 of file actor.hpi.

References _idxActor, and AssertMsg.

Referenced by Level::AddObject().

void Actor::setCurrentPos ( const Vector3 pos  )  [inline]
void Actor::SetInputDevice ( QInputDigital newInput  )  [inline]

Definition at line 188 of file actor.hpi.

References Actor::NonStatPlatData::_input, _nonStatPlat, and AssertMsg.

void Actor::setSpeed ( const Vector3 speed  )  [inline]
void Actor::spawnPoof (  )  const
void Actor::StartFrame (  ) 
void Actor::UnBindAssets (  )  [virtual]

Reimplemented from BaseObject.

Definition at line 519 of file actor.cc.

References _renderActor, DBSTREAM3, NULLRenderActor, and RenderActor::~RenderActor().

Referenced by ~Actor().

void Actor::update (  )  [virtual]
void Actor::UpdateAnimation (  ) 
void Actor::Validate (  )  const [virtual]

Reimplemented from MovementObject.

Reimplemented in Tool.

Definition at line 119 of file actor.cc.

References _nonStatPlat, assert, and ValidPtr().

Referenced by GetMsgPort(), Camera::GetWatchObject(), and Camera::ValidView().

void Actor::WriteSystemMailbox ( int  boxnum,
const Scalar  value 
)

Friends And Related Function Documentation

friend class AirHandler [friend]

Definition at line 106 of file actor.hp.

friend class AnimationManagerActual [friend]

Definition at line 101 of file actor.hp.

friend class CameraHandler [friend]

Definition at line 108 of file actor.hp.

friend class ClimbHandler [friend]

Definition at line 107 of file actor.hp.

friend class GroundHandler [friend]

Definition at line 105 of file actor.hp.

friend class MovementHandler [friend]

Definition at line 104 of file actor.hp.

friend class MovementManager [friend]

Definition at line 102 of file actor.hp.

friend class PathHandler [friend]

Definition at line 103 of file actor.hp.


Member Data Documentation

unsigned Actor::_

Definition at line 250 of file actor.hp.

struct { ... } Actor::_flags [protected]
unsigned Actor::_idxActor

Definition at line 253 of file actor.hp.

Referenced by Actor().

Definition at line 287 of file actor.hp.

Referenced by GetMailboxes().

struct NonStatPlatData* Actor::_nonStatPlat [protected]
const Actor::NonStatPlatData Actor::_statPlatData [static, protected]

Definition at line 275 of file actor.hp.

Referenced by Actor().

Definition at line 254 of file actor.hp.

Referenced by Actor().

const Scalar Actor::INDESTRUCTIBLE_HP = Scalar( SCALAR_CONSTANT(32767) ) [static]

Definition at line 172 of file actor.hp.

Referenced by deltaHealth(), StatPlat::StatPlat(), update(), and WriteSystemMailbox().


The documentation for this class was generated from the following files: