add virtual Copy() to Actor
This commit is contained in:
@@ -18,6 +18,8 @@
|
||||
|
||||
float Actor::g_fCurrentBGMTime = 0, Actor::g_fCurrentBGMBeat;
|
||||
|
||||
Actor *Actor::Copy() const { return new Actor(*this); }
|
||||
|
||||
static float g_fCabinetLights[NUM_CABINET_LIGHTS];
|
||||
|
||||
void Actor::SetBGMTime( float fTime, float fBeat )
|
||||
|
||||
@@ -28,6 +28,7 @@ class Actor : public IMessageSubscriber
|
||||
public:
|
||||
Actor();
|
||||
virtual ~Actor();
|
||||
virtual Actor *Copy() const;
|
||||
void UnsubcribeAndClearCommands();
|
||||
virtual void Reset();
|
||||
void LoadFromNode( const CString& sDir, const XNode* pNode );
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
*/
|
||||
//REGISTER_ACTOR_CLASS( ActorFrame )
|
||||
REGISTER_ACTOR_CLASS_WITH_NAME( ActorFrameAutoDeleteChildren, ActorFrame )
|
||||
Actor *ActorFrame::Copy() const { return new ActorFrame(*this); }
|
||||
|
||||
|
||||
ActorFrame::ActorFrame()
|
||||
|
||||
@@ -13,6 +13,7 @@ public:
|
||||
|
||||
void LoadFromNode( const CString& sDir, const XNode* pNode );
|
||||
void LoadChildrenFromNode( const CString& sDir, const XNode* pNode );
|
||||
virtual Actor *Copy() const;
|
||||
|
||||
virtual void AddChild( Actor* pActor );
|
||||
virtual void RemoveChild( Actor* pActor );
|
||||
@@ -88,6 +89,7 @@ public:
|
||||
|
||||
LoadChildrenFromNode( sDir, pNode );
|
||||
}
|
||||
virtual Actor *Copy() const;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
*/
|
||||
//REGISTER_ACTOR_CLASS( ActorScroller )
|
||||
REGISTER_ACTOR_CLASS_WITH_NAME( ActorScrollerAutoDeleteChildren, ActorScroller )
|
||||
Actor *ActorScroller::Copy() const { return new ActorScroller(*this); }
|
||||
|
||||
|
||||
ActorScroller::ActorScroller()
|
||||
|
||||
@@ -31,6 +31,7 @@ public:
|
||||
virtual void DrawPrimitives(); // DOES draw
|
||||
|
||||
void LoadFromNode( const CString &sDir, const XNode *pNode );
|
||||
virtual Actor *Copy() const;
|
||||
|
||||
void SetDestinationItem( float fItemIndex ) { m_fDestinationItem = fItemIndex; }
|
||||
void SetCurrentAndDestinationItem( float fItemIndex ) { m_fCurrentItem = m_fDestinationItem = fItemIndex; }
|
||||
@@ -79,6 +80,7 @@ public:
|
||||
|
||||
ActorScroller::LoadFromNode( sDir, pNode );
|
||||
}
|
||||
virtual Actor *Copy() const;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -20,7 +20,8 @@ typedef Actor* (*CreateActorFn)(const CString& sDir, const XNode* pNode);
|
||||
public: \
|
||||
Register##className() { ActorUtil::Register(#externalClassName,Create##className); } \
|
||||
}; \
|
||||
static Register##className register##className;
|
||||
static Register##className register##className; \
|
||||
Actor *className::Copy() const { return new className(*this); }
|
||||
|
||||
#define REGISTER_ACTOR_CLASS( className ) REGISTER_ACTOR_CLASS_WITH_NAME( className, className )
|
||||
|
||||
|
||||
@@ -20,6 +20,7 @@ public:
|
||||
|
||||
void LoadFromAniDir( const CString &sAniDir, bool bGeneric=true );
|
||||
void LoadFromNode( const CString& sDir, const XNode* pNode );
|
||||
virtual Actor *Copy() const;
|
||||
|
||||
protected:
|
||||
void AddLayersFromAniDir( const CString &_sAniDir, const IniFile& ini, bool bGeneric );
|
||||
|
||||
@@ -16,6 +16,7 @@ public:
|
||||
virtual ~BitmapText();
|
||||
|
||||
void LoadFromNode( const CString& sDir, const XNode* pNode );
|
||||
virtual Actor *Copy() const;
|
||||
|
||||
bool LoadFromFont( const CString& sFontName );
|
||||
bool LoadFromTextureAndChars( const CString& sTexturePath, const CString& sChars );
|
||||
|
||||
@@ -19,6 +19,7 @@ public:
|
||||
|
||||
bool Load( CString sFilePath );
|
||||
virtual void LoadFromNode( const CString& sDir, const XNode* pNode );
|
||||
virtual Actor *Copy() const;
|
||||
|
||||
void SetFromSteps( PlayerNumber pn, const Steps* pSteps );
|
||||
void SetFromTrail( PlayerNumber pn, const Trail* pTrail );
|
||||
|
||||
@@ -23,6 +23,7 @@ public:
|
||||
void Load( const CString &sType );
|
||||
|
||||
void LoadFromNode( const CString& sDir, const XNode* pNode );
|
||||
virtual Actor *Copy() const;
|
||||
|
||||
void SetFromGameState( PlayerNumber pn );
|
||||
void SetFromMeterAndDifficulty( int iMeter, Difficulty dc );
|
||||
|
||||
@@ -11,6 +11,7 @@ class FadingBanner : public ActorFrame
|
||||
{
|
||||
public:
|
||||
FadingBanner();
|
||||
virtual Actor *Copy() const;
|
||||
|
||||
void ScaleToClipped( float fWidth, float fHeight );
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@ public:
|
||||
void Load( const CString &sType );
|
||||
|
||||
void LoadFromNode( const CString& sDir, const XNode* pNode );
|
||||
virtual Actor *Copy() const;
|
||||
|
||||
void SetTips( const CStringArray &arrayTips ) { SetTips( arrayTips, arrayTips ); }
|
||||
void SetTips( const CStringArray &arrayTips, const CStringArray &arrayTipsAlt );
|
||||
@@ -42,6 +43,7 @@ public:
|
||||
GenreDisplay();
|
||||
~GenreDisplay();
|
||||
void PlayCommand( const CString &sCommandName, Actor* pParent );
|
||||
virtual Actor *Copy() const;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -13,6 +13,7 @@ public:
|
||||
MemoryCardDisplay();
|
||||
void Load( PlayerNumber pn );
|
||||
void LoadFromNode( const CString& sDir, const XNode* pNode );
|
||||
virtual Actor *Copy() const;
|
||||
void Update( float fDelta );
|
||||
|
||||
protected:
|
||||
|
||||
@@ -12,6 +12,7 @@ public:
|
||||
MeterDisplay();
|
||||
void Load( CString sStreamPath, float fStreamWidth, CString sTipPath );
|
||||
virtual void LoadFromNode( const CString& sDir, const XNode* pNode );
|
||||
virtual Actor *Copy() const;
|
||||
|
||||
void SetPercent( float fPercent );
|
||||
|
||||
@@ -26,6 +27,7 @@ class SongMeterDisplay: public MeterDisplay
|
||||
{
|
||||
public:
|
||||
virtual void Update( float fDeltaTime );
|
||||
virtual Actor *Copy() const;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -17,6 +17,7 @@ class Model : public Actor
|
||||
public:
|
||||
Model();
|
||||
virtual ~Model();
|
||||
virtual Actor *Copy() const;
|
||||
|
||||
void Clear();
|
||||
void Load( CString sFile );
|
||||
|
||||
@@ -19,6 +19,7 @@ public:
|
||||
|
||||
void Load();
|
||||
virtual void LoadFromNode( const CString& sDir, const XNode* pNode );
|
||||
virtual Actor *Copy() const;
|
||||
void SetFromGameState( PlayerNumber pn );
|
||||
|
||||
//
|
||||
|
||||
@@ -15,6 +15,7 @@ public:
|
||||
}
|
||||
|
||||
void LoadFromNode( const CString& sDir, const XNode* pNode );
|
||||
virtual Actor *Copy() const;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@@ -11,6 +11,7 @@ public:
|
||||
RollingNumbers();
|
||||
|
||||
void LoadFromNode( const CString& sDir, const XNode* pNode );
|
||||
virtual Actor *Copy() const;
|
||||
|
||||
virtual void Update( float fDeltaTime );
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@ public:
|
||||
virtual void Update( float fDelta );
|
||||
|
||||
void LoadFromNode( const CString& sDir, const XNode* pNode );
|
||||
virtual Actor *Copy() const;
|
||||
|
||||
void PlayCommand( const CString &sCommandName, Actor* pParent );
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@ public:
|
||||
virtual void Update( float fDelta );
|
||||
|
||||
void LoadFromNode( const CString& sDir, const XNode* pNode );
|
||||
virtual Actor *Copy() const;
|
||||
|
||||
void PlayCommand( const CString &sCommandName, Actor* pParent );
|
||||
|
||||
|
||||
Reference in New Issue
Block a user