move code out of macro

move common code into ActorUtil::Create
This commit is contained in:
Glenn Maynard
2006-10-11 07:33:38 +00:00
parent bd9a210628
commit 1c372a918c
2 changed files with 14 additions and 12 deletions
+8 -2
View File
@@ -40,8 +40,14 @@ Actor* ActorUtil::Create( const RString& sClassName, const XNode* pNode, Actor *
map<RString,CreateActorFn>::iterator iter = g_pmapRegistrees->find( sClassName );
ASSERT_M( iter != g_pmapRegistrees->end(), ssprintf("Actor '%s' is not registered.",sClassName.c_str()) );
CreateActorFn pfn = iter->second;
return (*pfn)( pNode, pParentActor );
const CreateActorFn &pfn = iter->second;
Actor *pRet = pfn();
if( pParentActor )
pRet->SetParent( pParentActor );
pRet->LoadFromNode( pNode );
return pRet;
}
void ActorUtil::ResolvePath( RString &sPath, const RString &sName )