remove LoadFromNode, add PlayerState param
This commit is contained in:
@@ -12,6 +12,7 @@
|
|||||||
#include "XmlFile.h"
|
#include "XmlFile.h"
|
||||||
#include "LuaBinding.h"
|
#include "LuaBinding.h"
|
||||||
#include "GameManager.h"
|
#include "GameManager.h"
|
||||||
|
#include "PlayerState.h"
|
||||||
|
|
||||||
REGISTER_ACTOR_CLASS( DifficultyDisplay );
|
REGISTER_ACTOR_CLASS( DifficultyDisplay );
|
||||||
|
|
||||||
@@ -42,7 +43,7 @@ DifficultyDisplay::DifficultyDisplay()
|
|||||||
* so I'm trying it first in only this object.
|
* so I'm trying it first in only this object.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void DifficultyDisplay::Load( const RString &sMetricsGroup )
|
void DifficultyDisplay::Load( const RString &sMetricsGroup, const PlayerState *pPlayerState )
|
||||||
{
|
{
|
||||||
m_sMetricsGroup = sMetricsGroup;
|
m_sMetricsGroup = sMetricsGroup;
|
||||||
|
|
||||||
@@ -106,19 +107,16 @@ void DifficultyDisplay::Load( const RString &sMetricsGroup )
|
|||||||
this->AddChild( &m_sprStepsType );
|
this->AddChild( &m_sprStepsType );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Play Load Command
|
||||||
|
PlayerState* pPlayerState_ = const_cast<PlayerState*>(pPlayerState);
|
||||||
|
Message msg("Load");
|
||||||
|
if( pPlayerState_ )
|
||||||
|
msg.SetParam( "PlayerState", LuaReference::CreateFromPush(*pPlayerState_) );
|
||||||
|
this->HandleMessage( msg );
|
||||||
|
|
||||||
Unset();
|
Unset();
|
||||||
}
|
}
|
||||||
|
|
||||||
void DifficultyDisplay::LoadFromNode( const XNode* pNode )
|
|
||||||
{
|
|
||||||
ActorFrame::LoadFromNode( pNode );
|
|
||||||
|
|
||||||
RString s;
|
|
||||||
if( !pNode->GetAttrValue("Type", s) )
|
|
||||||
RageException::Throw( "%s: DifficultyDisplay: missing the \"Type\" attribute", ActorUtil::GetWhere(pNode).c_str() );
|
|
||||||
Load( s );
|
|
||||||
}
|
|
||||||
|
|
||||||
void DifficultyDisplay::SetFromGameState( PlayerNumber pn )
|
void DifficultyDisplay::SetFromGameState( PlayerNumber pn )
|
||||||
{
|
{
|
||||||
if( GAMESTATE->IsCourseMode() )
|
if( GAMESTATE->IsCourseMode() )
|
||||||
@@ -278,7 +276,7 @@ void DifficultyDisplay::SetInternal( const SetParams ¶ms )
|
|||||||
class LunaDifficultyDisplay: public Luna<DifficultyDisplay>
|
class LunaDifficultyDisplay: public Luna<DifficultyDisplay>
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
static int Load( T* p, lua_State *L ) { p->Load( SArg(1) ); return 0; }
|
static int Load( T* p, lua_State *L ) { p->Load( SArg(1), NULL ); return 0; }
|
||||||
static int SetFromStepsTypeAndMeterAndDifficulty( T* p, lua_State *L ) { p->SetFromStepsTypeAndMeterAndDifficulty( Enum::Check<StepsType>(L, 1), IArg(2), Enum::Check<Difficulty>(L, 3) ); return 0; }
|
static int SetFromStepsTypeAndMeterAndDifficulty( T* p, lua_State *L ) { p->SetFromStepsTypeAndMeterAndDifficulty( Enum::Check<StepsType>(L, 1), IArg(2), Enum::Check<Difficulty>(L, 3) ); return 0; }
|
||||||
static int SetFromSteps( T* p, lua_State *L )
|
static int SetFromSteps( T* p, lua_State *L )
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -15,14 +15,14 @@
|
|||||||
|
|
||||||
class Steps;
|
class Steps;
|
||||||
class Trail;
|
class Trail;
|
||||||
|
class PlayerState;
|
||||||
|
|
||||||
class DifficultyDisplay : public ActorFrame
|
class DifficultyDisplay : public ActorFrame
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
DifficultyDisplay();
|
DifficultyDisplay();
|
||||||
|
|
||||||
void Load( const RString &sMetricsGroup );
|
void Load( const RString &sMetricsGroup, const PlayerState *pPlayerState );
|
||||||
void LoadFromNode( const XNode* pNode );
|
|
||||||
|
|
||||||
virtual DifficultyDisplay *Copy() const;
|
virtual DifficultyDisplay *Copy() const;
|
||||||
|
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ void DifficultyList::LoadFromNode( const XNode* pNode )
|
|||||||
for( unsigned m = 0; m < m_Lines.size(); ++m )
|
for( unsigned m = 0; m < m_Lines.size(); ++m )
|
||||||
{
|
{
|
||||||
m_Lines[m].m_Meter.SetName( "Row" );
|
m_Lines[m].m_Meter.SetName( "Row" );
|
||||||
m_Lines[m].m_Meter.Load( "DifficultyDisplayListRow" );
|
m_Lines[m].m_Meter.Load( "DifficultyDisplayListRow", NULL );
|
||||||
this->AddChild( &m_Lines[m].m_Meter );
|
this->AddChild( &m_Lines[m].m_Meter );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user