Actor::SubscribeToMessage

This commit is contained in:
Glenn Maynard
2005-03-27 05:54:26 +00:00
parent 4ba85f9844
commit a0877fdab0
2 changed files with 7 additions and 2 deletions
+6 -2
View File
@@ -939,8 +939,7 @@ void Actor::AddCommand( const CString &sCmdName, apActorCommands apac )
CString sMessage;
if( GetMessageNameFromCommandName(sCmdName, sMessage) )
{
MESSAGEMAN->Subscribe( this, sMessage );
m_vsSubscribedTo.push_back( sMessage );
SubscribeToMessage( sMessage );
m_mapNameToCommands[sMessage] = apac; // sCmdName w/o "Message" at the end
}
else
@@ -975,6 +974,11 @@ void Actor::HandleMessage( const CString& sMessage )
PlayCommand( sMessage );
}
void Actor::SubscribeToMessage( const CString &sMessageName )
{
MESSAGEMAN->Subscribe( this, sMessageName );
m_vsSubscribedTo.push_back( sMessageName );
}
/*
* (c) 2001-2004 Chris Danford
+1
View File
@@ -330,6 +330,7 @@ public:
virtual void RunCommands2( const LuaReference& cmds, Actor *pParent );
void RunCommands( const apActorCommands& cmds ) { this->RunCommands( *cmds ); } // convenience
void RunCommands2( const apActorCommands& cmds, Actor *pParent ) { this->RunCommands2( *cmds, pParent ); } // convenience
void SubscribeToMessage( const CString &sMessageName ); // will automatically unsubscribe
static float GetCommandsLengthSeconds( const LuaReference& cmds );
static float GetCommandsLengthSeconds( const apActorCommands& cmds ) { return GetCommandsLengthSeconds( *cmds ); } // convenience