fix loading XML files as hold note parts; must still be a Sprite

This commit is contained in:
Glenn Maynard
2005-07-06 04:20:27 +00:00
parent 18615b2a17
commit 90b78e6cbf
+11 -8
View File
@@ -10,6 +10,7 @@
#include "ActorUtil.h"
#include "Game.h"
#include "PlayerState.h"
#include "LuaBinding.h"
enum Part
{
@@ -131,16 +132,18 @@ static NoteResource *MakeNoteResource( const CString &sButton, const CString &sE
if( it == g_NoteResource.end() )
{
NoteResource *pRes = new NoteResource( nsap );
pRes->m_pActor = ActorUtil::MakeActor( nsap.sPath );
ASSERT( pRes->m_pActor );
/* Make sure pActor is a Sprite (or something derived from Sprite). */
if( bSpriteOnly )
{
Sprite *pSprite = new Sprite;
pSprite->Load( nsap.sPath );
pRes->m_pActor = pSprite;
}
else
{
pRes->m_pActor = ActorUtil::MakeActor( nsap.sPath );
ASSERT( pRes->m_pActor );
Lua *L = LUA->Get();
pRes->m_pActor->PushSelf( L );
Luna<Sprite>::check( L, lua_gettop(L) );
lua_pop( L, 1 );
LUA->Release( L );
}
g_NoteResource[nsap] = pRes;