bindings
This commit is contained in:
@@ -242,7 +242,12 @@ static const CString PerDifficultyAwardNames[] = {
|
|||||||
XToString( PerDifficultyAward, NUM_PER_DIFFICULTY_AWARDS );
|
XToString( PerDifficultyAward, NUM_PER_DIFFICULTY_AWARDS );
|
||||||
XToThemedString( PerDifficultyAward, NUM_PER_DIFFICULTY_AWARDS );
|
XToThemedString( PerDifficultyAward, NUM_PER_DIFFICULTY_AWARDS );
|
||||||
StringToX( PerDifficultyAward );
|
StringToX( PerDifficultyAward );
|
||||||
|
static void LuaPerDifficultyAward( lua_State* L )
|
||||||
|
{
|
||||||
|
FOREACH_PerDifficultyAward( i )
|
||||||
|
LUA->SetGlobal( PerDifficultyAwardNames[i], i );
|
||||||
|
}
|
||||||
|
REGISTER_WITH_LUA_FUNCTION( LuaPerDifficultyAward );
|
||||||
|
|
||||||
// Numbers are intentially not at the front of these strings so that the
|
// Numbers are intentially not at the front of these strings so that the
|
||||||
// strings can be used as XML entity names.
|
// strings can be used as XML entity names.
|
||||||
@@ -263,7 +268,12 @@ static const CString PeakComboAwardNames[] = {
|
|||||||
XToString( PeakComboAward, NUM_PEAK_COMBO_AWARDS );
|
XToString( PeakComboAward, NUM_PEAK_COMBO_AWARDS );
|
||||||
XToThemedString( PeakComboAward, NUM_PEAK_COMBO_AWARDS );
|
XToThemedString( PeakComboAward, NUM_PEAK_COMBO_AWARDS );
|
||||||
StringToX( PeakComboAward );
|
StringToX( PeakComboAward );
|
||||||
|
static void LuaPeakComboAward( lua_State* L )
|
||||||
|
{
|
||||||
|
FOREACH_PeakComboAward( i )
|
||||||
|
LUA->SetGlobal( PeakComboAwardNames[i], i );
|
||||||
|
}
|
||||||
|
REGISTER_WITH_LUA_FUNCTION( LuaPeakComboAward );
|
||||||
|
|
||||||
LuaXToString( Difficulty );
|
LuaXToString( Difficulty );
|
||||||
LuaStringToX( Difficulty );
|
LuaStringToX( Difficulty );
|
||||||
|
|||||||
@@ -255,12 +255,8 @@ void ScreenEvaluation::Init()
|
|||||||
//
|
//
|
||||||
// update persistent statistics
|
// update persistent statistics
|
||||||
//
|
//
|
||||||
int iPersonalHighScoreIndex[NUM_PLAYERS];
|
|
||||||
int iMachineHighScoreIndex[NUM_PLAYERS];
|
|
||||||
RankingCategory rc[NUM_PLAYERS];;
|
RankingCategory rc[NUM_PLAYERS];;
|
||||||
PerDifficultyAward pdaToShow[NUM_PLAYERS];
|
CommitScores( m_StageStats, m_iPersonalHighScoreIndex, m_iMachineHighScoreIndex, rc, m_pdaToShow, m_pcaToShow );
|
||||||
PeakComboAward pcaToShow[NUM_PLAYERS];
|
|
||||||
CommitScores( m_StageStats, iPersonalHighScoreIndex, iMachineHighScoreIndex, rc, pdaToShow, pcaToShow );
|
|
||||||
|
|
||||||
m_bTryExtraStage =
|
m_bTryExtraStage =
|
||||||
GAMESTATE->HasEarnedExtraStage() &&
|
GAMESTATE->HasEarnedExtraStage() &&
|
||||||
@@ -694,32 +690,32 @@ void ScreenEvaluation::Init()
|
|||||||
//
|
//
|
||||||
FOREACH_EnabledPlayer( p )
|
FOREACH_EnabledPlayer( p )
|
||||||
{
|
{
|
||||||
if( iMachineHighScoreIndex[p] != -1 )
|
if( m_iMachineHighScoreIndex[p] != -1 )
|
||||||
{
|
{
|
||||||
m_sprMachineRecord[p].Load( THEME->GetPathG( m_sName, ssprintf("MachineRecord %02d",iMachineHighScoreIndex[p]+1) ) );
|
m_sprMachineRecord[p].Load( THEME->GetPathG( m_sName, ssprintf("MachineRecord %02d",m_iMachineHighScoreIndex[p]+1) ) );
|
||||||
m_sprMachineRecord[p]->SetName( ssprintf("MachineRecordP%d",p+1) );
|
m_sprMachineRecord[p]->SetName( ssprintf("MachineRecordP%d",p+1) );
|
||||||
SET_XY_AND_ON_COMMAND( m_sprMachineRecord[p] );
|
SET_XY_AND_ON_COMMAND( m_sprMachineRecord[p] );
|
||||||
this->AddChild( m_sprMachineRecord[p] );
|
this->AddChild( m_sprMachineRecord[p] );
|
||||||
}
|
}
|
||||||
if( iPersonalHighScoreIndex[p] != -1 )
|
if( m_iPersonalHighScoreIndex[p] != -1 )
|
||||||
{
|
{
|
||||||
m_sprPersonalRecord[p].Load( THEME->GetPathG( m_sName, ssprintf("PersonalRecord %02d",iPersonalHighScoreIndex[p]+1) ) );
|
m_sprPersonalRecord[p].Load( THEME->GetPathG( m_sName, ssprintf("PersonalRecord %02d",m_iPersonalHighScoreIndex[p]+1) ) );
|
||||||
m_sprPersonalRecord[p]->SetName( ssprintf("PersonalRecordP%d",p+1) );
|
m_sprPersonalRecord[p]->SetName( ssprintf("PersonalRecordP%d",p+1) );
|
||||||
SET_XY_AND_ON_COMMAND( m_sprPersonalRecord[p] );
|
SET_XY_AND_ON_COMMAND( m_sprPersonalRecord[p] );
|
||||||
this->AddChild( m_sprPersonalRecord[p] );
|
this->AddChild( m_sprPersonalRecord[p] );
|
||||||
}
|
}
|
||||||
if( SHOW_PER_DIFFICULTY_AWARD && pdaToShow[p]!=PER_DIFFICULTY_AWARD_INVALID )
|
if( SHOW_PER_DIFFICULTY_AWARD && m_pdaToShow[p]!=PER_DIFFICULTY_AWARD_INVALID )
|
||||||
{
|
{
|
||||||
CString sAward = PerDifficultyAwardToString( pdaToShow[p] );
|
CString sAward = PerDifficultyAwardToString( m_pdaToShow[p] );
|
||||||
|
|
||||||
m_PerDifficultyAward[p].Load( THEME->GetPathG(m_sName,"PerDifficultyAward "+sAward) );
|
m_PerDifficultyAward[p].Load( THEME->GetPathG(m_sName,"PerDifficultyAward "+sAward) );
|
||||||
m_PerDifficultyAward[p]->SetName( ssprintf("PerDifficultyAwardP%d",p+1) );
|
m_PerDifficultyAward[p]->SetName( ssprintf("PerDifficultyAwardP%d",p+1) );
|
||||||
SET_XY_AND_ON_COMMAND( m_PerDifficultyAward[p] );
|
SET_XY_AND_ON_COMMAND( m_PerDifficultyAward[p] );
|
||||||
this->AddChild( m_PerDifficultyAward[p] );
|
this->AddChild( m_PerDifficultyAward[p] );
|
||||||
}
|
}
|
||||||
if( SHOW_PEAK_COMBO_AWARD && pcaToShow[p]!=PEAK_COMBO_AWARD_INVALID )
|
if( SHOW_PEAK_COMBO_AWARD && m_pcaToShow[p]!=PEAK_COMBO_AWARD_INVALID )
|
||||||
{
|
{
|
||||||
CString sAward = PeakComboAwardToString( pcaToShow[p] );
|
CString sAward = PeakComboAwardToString( m_pcaToShow[p] );
|
||||||
|
|
||||||
m_PeakComboAward[p].Load( THEME->GetPathG(m_sName,"PeakComboAward "+sAward) );
|
m_PeakComboAward[p].Load( THEME->GetPathG(m_sName,"PeakComboAward "+sAward) );
|
||||||
m_PeakComboAward[p]->SetName( ssprintf("PeakComboAwardP%d",p+1) );
|
m_PeakComboAward[p]->SetName( ssprintf("PeakComboAwardP%d",p+1) );
|
||||||
@@ -730,7 +726,7 @@ void ScreenEvaluation::Init()
|
|||||||
|
|
||||||
bool bOneHasNewTopRecord = false;
|
bool bOneHasNewTopRecord = false;
|
||||||
FOREACH_PlayerNumber( p )
|
FOREACH_PlayerNumber( p )
|
||||||
if( GAMESTATE->IsPlayerEnabled(p) && (iMachineHighScoreIndex[p] != -1 || iPersonalHighScoreIndex[p] != -1) )
|
if( GAMESTATE->IsPlayerEnabled(p) && (m_iMachineHighScoreIndex[p] != -1 || m_iPersonalHighScoreIndex[p] != -1) )
|
||||||
bOneHasNewTopRecord = true;
|
bOneHasNewTopRecord = true;
|
||||||
|
|
||||||
Grade best_grade = Grade_NoData;
|
Grade best_grade = Grade_NoData;
|
||||||
@@ -1352,10 +1348,18 @@ class LunaScreenEvaluation: public Luna<ScreenEvaluation>
|
|||||||
public:
|
public:
|
||||||
LunaScreenEvaluation() { LUA->Register( Register ); }
|
LunaScreenEvaluation() { LUA->Register( Register ); }
|
||||||
static int GetEvalStageStats( T* p, lua_State *L ) { p->m_StageStats.PushSelf( L ); return 1; }
|
static int GetEvalStageStats( T* p, lua_State *L ) { p->m_StageStats.PushSelf( L ); return 1; }
|
||||||
|
static int GetPersonalHighScoreIndex( T* p, lua_State *L ) { lua_pushnumber( L, p->m_iPersonalHighScoreIndex[IArg(1)] ); return 1; }
|
||||||
|
static int GetMachineHighScoreIndex( T* p, lua_State *L ) { lua_pushnumber( L, p->m_iMachineHighScoreIndex[IArg(1)] ); return 1; }
|
||||||
|
static int GetPerDifficultyAward( T* p, lua_State *L ) { lua_pushnumber( L, p->m_pdaToShow[IArg(1)] ); return 1; }
|
||||||
|
static int GetPeakComboAward( T* p, lua_State *L ) { lua_pushnumber( L, p->m_pcaToShow[IArg(1)] ); return 1; }
|
||||||
|
|
||||||
static void Register( Lua *L )
|
static void Register( Lua *L )
|
||||||
{
|
{
|
||||||
ADD_METHOD( GetEvalStageStats )
|
ADD_METHOD( GetEvalStageStats )
|
||||||
|
ADD_METHOD( GetPersonalHighScoreIndex )
|
||||||
|
ADD_METHOD( GetMachineHighScoreIndex )
|
||||||
|
ADD_METHOD( GetPerDifficultyAward )
|
||||||
|
ADD_METHOD( GetPeakComboAward )
|
||||||
Luna<T>::Register( L );
|
Luna<T>::Register( L );
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -48,6 +48,10 @@ public:
|
|||||||
virtual void PushSelf( lua_State *L );
|
virtual void PushSelf( lua_State *L );
|
||||||
|
|
||||||
StageStats m_StageStats;
|
StageStats m_StageStats;
|
||||||
|
int m_iPersonalHighScoreIndex[NUM_PLAYERS];
|
||||||
|
int m_iMachineHighScoreIndex[NUM_PLAYERS];
|
||||||
|
PerDifficultyAward m_pdaToShow[NUM_PLAYERS];
|
||||||
|
PeakComboAward m_pcaToShow[NUM_PLAYERS];
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void CommitScores(
|
void CommitScores(
|
||||||
|
|||||||
Reference in New Issue
Block a user