add TweenTime()

This commit is contained in:
Glenn Maynard
2003-01-01 09:05:21 +00:00
parent f30ca2b869
commit d1b2a88a4e
4 changed files with 26 additions and 4 deletions
+9 -1
View File
@@ -48,7 +48,6 @@ Actor::Actor()
}
void Actor::Draw()
{
// call the most-derived versions
@@ -522,3 +521,12 @@ void Actor::Fade( float fSleepSeconds, CString sFadeString, float fFadeSeconds,
LatestTween() = bOnToScreenOrOffOfScreen ? mod : original;
}
float Actor::TweenTime() const
{
float tot = 0;
for(int i = 0; i < m_iNumTweenStates; ++i)
tot += m_TweenInfo[i].m_fTimeLeftInTween;
return tot;
}
+2 -3
View File
@@ -104,9 +104,9 @@ public:
virtual void BeginTweening( float time, TweenType tt = TWEEN_LINEAR );
// Tweening is now queued by default
// virtual void BeginTweening( float time, TweenType tt = TWEEN_LINEAR );
virtual void StopTweening();
/* Amount of time until all tweens have stopped: */
virtual float TweenTime() const;
virtual void SetTweenX( float x );
virtual void SetTweenY( float y );
virtual void SetTweenZ( float z );
@@ -237,7 +237,6 @@ protected:
int m_iNumTweenStates;
TweenState& LatestTween() { ASSERT(m_iNumTweenStates>0 && m_iNumTweenStates<MAX_TWEEN_STATES); return m_TweenStates[m_iNumTweenStates-1]; };
//
// Temporary variables that are filled just before drawing
//
+12
View File
@@ -49,3 +49,15 @@ void ActorFrame::SetDiffuse( RageColor c )
for( unsigned i=0; i<m_SubActors.size(); i++ )
m_SubActors[i]->SetDiffuse(c );
}
float ActorFrame::TweenTime() const
{
float m = Actor::TweenTime();
for( unsigned i=0; i<m_SubActors.size(); i++ )
m = max(m, m_SubActors[i]->TweenTime());
return m;
}
+3
View File
@@ -24,6 +24,9 @@ public:
virtual void SetDiffuse( RageColor c );
/* Amount of time until all tweens (and all children's tweens) have stopped: */
virtual float TweenTime() const;
protected:
CArray<Actor*,Actor*> m_SubActors;
};