Slight restructure, it's best to make sure we know where all of the elements are and where they're going.
This commit is contained in:
@@ -9,6 +9,7 @@
|
|||||||
#include "ScreenTextEntry.h"
|
#include "ScreenTextEntry.h"
|
||||||
#include "ScreenManager.h"
|
#include "ScreenManager.h"
|
||||||
#include "VirtualKeyboard.h"
|
#include "VirtualKeyboard.h"
|
||||||
|
#include "Command.h"
|
||||||
|
|
||||||
#define TITLEBG_WIDTH THEME->GetMetricF(m_sName,"TitleBGWidth")
|
#define TITLEBG_WIDTH THEME->GetMetricF(m_sName,"TitleBGWidth")
|
||||||
#define TITLEBG_HEIGHT THEME->GetMetricF(m_sName,"TitleBGHeight")
|
#define TITLEBG_HEIGHT THEME->GetMetricF(m_sName,"TitleBGHeight")
|
||||||
@@ -211,8 +212,8 @@ void ScreenNetRoom::MenuUp( PlayerNumber pn, const InputEventType type )
|
|||||||
switch (m_SelectMode) {
|
switch (m_SelectMode) {
|
||||||
case SelectRooms:
|
case SelectRooms:
|
||||||
if (m_iRoomPlace > 0) {
|
if (m_iRoomPlace > 0) {
|
||||||
ShiftRoomsDown();
|
|
||||||
m_iRoomPlace--;
|
m_iRoomPlace--;
|
||||||
|
UpdateRoomPos();
|
||||||
}
|
}
|
||||||
ScreenNetSelectBase::MenuUp( pn );
|
ScreenNetSelectBase::MenuUp( pn );
|
||||||
break;
|
break;
|
||||||
@@ -226,8 +227,8 @@ void ScreenNetRoom::MenuDown( PlayerNumber pn, const InputEventType type )
|
|||||||
case SelectRooms:
|
case SelectRooms:
|
||||||
if( m_iRoomPlace+1 < (int) m_RoomList.size() )
|
if( m_iRoomPlace+1 < (int) m_RoomList.size() )
|
||||||
{
|
{
|
||||||
ShiftRoomsUp();
|
|
||||||
m_iRoomPlace++;
|
m_iRoomPlace++;
|
||||||
|
UpdateRoomPos();
|
||||||
}
|
}
|
||||||
ScreenNetSelectBase::MenuDown( pn );
|
ScreenNetSelectBase::MenuDown( pn );
|
||||||
break;
|
break;
|
||||||
@@ -254,16 +255,8 @@ void ScreenNetRoom::MenuRight( PlayerNumber pn, const InputEventType type )
|
|||||||
|
|
||||||
void ScreenNetRoom::UpdateRoomsList()
|
void ScreenNetRoom::UpdateRoomsList()
|
||||||
{
|
{
|
||||||
float cx;
|
float cx = THEME->GetMetricF(m_sName, "RoomsX") - ROOMSPACEX * ( m_iRoomPlace );
|
||||||
float cy;
|
float cy = THEME->GetMetricF(m_sName, "RoomsY") - ROOMSPACEY * ( m_iRoomPlace );
|
||||||
|
|
||||||
if (m_RoomList.size() > 0) {
|
|
||||||
cx = m_RoomList[0].GetX();
|
|
||||||
cy = m_RoomList[0].GetY();
|
|
||||||
} else {
|
|
||||||
cx = THEME->GetMetricF(m_sName, "RoomsX");
|
|
||||||
cy = THEME->GetMetricF(m_sName, "RoomsY");
|
|
||||||
}
|
|
||||||
|
|
||||||
for (unsigned int i = 0; i < m_RoomList.size(); ++i)
|
for (unsigned int i = 0; i < m_RoomList.size(); ++i)
|
||||||
this->RemoveChild(&m_RoomList[i]);
|
this->RemoveChild(&m_RoomList[i]);
|
||||||
@@ -310,31 +303,23 @@ void ScreenNetRoom::CreateNewRoom( const CString& rName, const CString& rDesc )
|
|||||||
NSMAN->SendSMOnline( );
|
NSMAN->SendSMOnline( );
|
||||||
}
|
}
|
||||||
|
|
||||||
void ScreenNetRoom::ShiftRoomsUp() {
|
void ScreenNetRoom::UpdateRoomPos() {
|
||||||
for (unsigned int x = 0; x < m_RoomList.size(); ++x) {
|
float cx = THEME->GetMetricF(m_sName, "RoomsX") - ROOMSPACEX * ( m_iRoomPlace );
|
||||||
m_RoomList[x].FinishTweening();
|
float cy = THEME->GetMetricF(m_sName, "RoomsY") - ROOMSPACEY * ( m_iRoomPlace );
|
||||||
if ((m_RoomList[x].GetY()-ROOMSPACEY >= ROOMUPPERBOUND)&&(m_RoomList[x].GetY()-ROOMSPACEY < ROOMLOWERBOUND)) {
|
for (unsigned int x = 0; x < m_RoomList.size(); ++x)
|
||||||
COMMAND(m_RoomList[x], "ShiftUp");
|
|
||||||
COMMAND(m_RoomList[x], "RoomsOn");
|
|
||||||
} else {
|
|
||||||
COMMAND(m_RoomList[x], "ShiftUp");
|
|
||||||
COMMAND(m_RoomList[x], "RoomsOff");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void ScreenNetRoom::ShiftRoomsDown()
|
|
||||||
{
|
|
||||||
for( unsigned x = 0; x < m_RoomList.size(); ++x )
|
|
||||||
{
|
{
|
||||||
m_RoomList[x].FinishTweening();
|
m_RoomList[x].StopTweening();
|
||||||
if ((m_RoomList[x].GetY()+ROOMSPACEY >= ROOMUPPERBOUND)&&(m_RoomList[x].GetY()+ROOMSPACEY < ROOMLOWERBOUND)) {
|
CString Command = ssprintf( "linear,0.2;y,%f;x,%f;", cy, cx );
|
||||||
COMMAND(m_RoomList[x], "ShiftDown");
|
|
||||||
COMMAND(m_RoomList[x], "RoomsOn");
|
if ( ( cy > ROOMLOWERBOUND ) || ( cy < ROOMUPPERBOUND ) )
|
||||||
} else {
|
Command += THEME->GetMetric( m_sName, "RoomsOffCommand" );
|
||||||
COMMAND(m_RoomList[x], "ShiftDown");
|
else
|
||||||
COMMAND(m_RoomList[x], "RoomsOff");
|
Command += THEME->GetMetric( m_sName, "RoomsOnCommand" );
|
||||||
}
|
|
||||||
|
ActorCommands cmds( Command );
|
||||||
|
m_RoomList[x].RunCommands( cmds );
|
||||||
|
cx += ROOMSPACEX;
|
||||||
|
cy += ROOMSPACEY;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -45,8 +45,7 @@ private:
|
|||||||
void MenuLeft( PlayerNumber pn, const InputEventType type );
|
void MenuLeft( PlayerNumber pn, const InputEventType type );
|
||||||
void MenuRight( PlayerNumber pn, const InputEventType type );
|
void MenuRight( PlayerNumber pn, const InputEventType type );
|
||||||
void CreateNewRoom( const CString& rName, const CString& rDesc );
|
void CreateNewRoom( const CString& rName, const CString& rDesc );
|
||||||
void ShiftRoomsUp();
|
void UpdateRoomPos();
|
||||||
void ShiftRoomsDown();
|
|
||||||
|
|
||||||
enum NetSelectModes
|
enum NetSelectModes
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user