PortExternal is only used when set. Normal case is PortServer now

This commit is contained in:
Titus Tscharntke 2012-10-06 13:45:42 +00:00
parent 685b15c91e
commit 9a57dc095f
5 changed files with 35 additions and 34 deletions

View File

@ -64,7 +64,6 @@ MasterServerExternalPortList=61357,61367,61377,61387,61397,80,1080,8000,8080,443
NetPlayerName=newbie
NetworkConsistencyChecks=true
PhotoMode=false
PortExternal=0
PortList=61357,61367,61377,61387,61397
PortServer=61357
RefreshFrequency=75

View File

@ -201,8 +201,8 @@ MenuStateCustomGame::MenuStateCustomGame(Program *program, MainMenu *mainMenu,
ipText += ip;
}
}
string externalPort=config.getString("PortExternal", intToStr(GameConstants::serverPort).c_str());
string serverPort=config.getString("PortServer", intToStr(GameConstants::serverPort).c_str());
string externalPort=config.getString("PortExternal", serverPort.c_str());
labelLocalIP.setText(lang.get("LanIP") + ipText + " ( "+serverPort+" / "+externalPort+" )");
ServerSocket::setExternalPort(strToInt(externalPort));
@ -738,8 +738,9 @@ void MenuStateCustomGame::reloadUI() {
ipText += ip;
}
}
string externalPort=config.getString("PortExternal", intToStr(GameConstants::serverPort).c_str());
string serverPort=config.getString("PortServer", intToStr(GameConstants::serverPort).c_str());
string externalPort=config.getString("PortExternal", serverPort.c_str());
labelLocalIP.setText(lang.get("LanIP") + ipText + " ( "+serverPort+" / "+externalPort+" )");
labelMap.setText(lang.get("Map")+":");
@ -2859,8 +2860,9 @@ void MenuStateCustomGame::publishToMasterserver() {
publishToServerInfo["networkSlots"] = intToStr(slotCountHumans);
publishToServerInfo["connectedClients"] = intToStr(slotCountConnectedPlayers);
string externalport = config.getString("PortExternal", intToStr(GameConstants::serverPort).c_str());
publishToServerInfo["externalconnectport"] = externalport;
string serverPort=config.getString("PortServer", intToStr(GameConstants::serverPort).c_str());
string externalPort=config.getString("PortExternal", serverPort.c_str());
publishToServerInfo["externalconnectport"] = externalPort;
publishToServerInfo["privacyPlease"] = intToStr(config.getBool("PrivacyPlease","false"));
publishToServerInfo["gameStatus"] = intToStr(game_status_waiting_for_players);

View File

@ -446,23 +446,6 @@ MenuStateOptions::MenuStateOptions(Program *program, MainMenu *mainMenu):
labelServerPortLabel.registerGraphicComponent(containerName,"labelServerPortLabel");
labelServerPortLabel.init(currentLabelStart,currentLine);
labelServerPortLabel.setText(lang.get("ServerPort"));
labelServerPort.init(currentColumnStart,currentLine);
string port=intToStr(config.getInt("PortServer"));
if(port != intToStr(GameConstants::serverPort)){
port=port +" ("+lang.get("NonStandardPort")+"!!)";
}
else{
port=port +" ("+lang.get("StandardPort")+")";
}
labelServerPort.setText(port);
// external server port
currentLine-=lineOffset;
labelPublishServerExternalPort.registerGraphicComponent(containerName,"labelPublishServerExternalPort");
labelPublishServerExternalPort.init(currentLabelStart, currentLine, 150);
labelPublishServerExternalPort.setText(lang.get("PublishServerExternalPort"));
listBoxServerPort.registerGraphicComponent(containerName,"listBoxPublishServerExternalPort");
listBoxServerPort.init(currentColumnStart, currentLine, 170);
@ -471,19 +454,35 @@ MenuStateOptions::MenuStateOptions(Program *program, MainMenu *mainMenu):
std::vector<std::string> portList;
Tokenize(portListString,portList,",");
string currentPort=config.getString("PortExternal", intToStr(GameConstants::serverPort).c_str());
int masterServerExternalPortSelectionIndex=0;
string currentPort=config.getString("PortServer", intToStr(GameConstants::serverPort).c_str());
int portSelectionIndex=0;
for(int idx = 0; idx < portList.size(); idx++) {
if(portList[idx] != "" && IsNumeric(portList[idx].c_str(),false)) {
listBoxServerPort.pushBackItem(portList[idx]);
if(currentPort==portList[idx])
{
masterServerExternalPortSelectionIndex=idx;
portSelectionIndex=idx;
}
}
}
listBoxServerPort.setSelectedItemIndex(masterServerExternalPortSelectionIndex);
listBoxServerPort.setSelectedItemIndex(portSelectionIndex);
// external server port
currentLine-=lineOffset;
labelPublishServerExternalPort.registerGraphicComponent(containerName,"labelPublishServerExternalPort");
labelPublishServerExternalPort.init(currentLabelStart, currentLine, 150);
labelPublishServerExternalPort.setText(lang.get("PublishServerExternalPort"));
labelExternalPort.init(currentColumnStart,currentLine);
string extPort= config.getString("PortExternal","not set");
if(extPort == "not set" || extPort == "0"){
extPort=" --- ";
}
else{
extPort="!!! "+extPort+" !!!";
}
labelExternalPort.setText(extPort);
currentLine-=lineOffset;
// FTP Config - start
labelEnableFTP.registerGraphicComponent(containerName,"labelEnableFTP");
@ -694,7 +693,7 @@ void MenuStateOptions::reloadUI() {
port = port +" ("+lang.get("StandardPort")+")";
}
labelServerPort.setText(port);
labelExternalPort.setText(port);
labelPublishServerExternalPort.setText(lang.get("PublishServerExternalPort"));
@ -870,7 +869,7 @@ void MenuStateOptions::mouseClick(int x, int y, MouseButton mouseButton){
// use the following ports for ftp
char szBuf[1024]="";
sprintf(szBuf,"%d - %d",selectedPort + 1, selectedPort + GameConstants::maxPlayers);
labelFTPServerPort.setText(intToStr(selectedPort));
labelFTPServerPort.setText(intToStr(selectedPort+1));
labelFTPServerDataPorts.setText(szBuf);
}
@ -1054,7 +1053,7 @@ void MenuStateOptions::render(){
renderer.renderLabel(&labelScreenModes);
renderer.renderListBox(&listBoxScreenModes);
renderer.renderLabel(&labelServerPortLabel);
renderer.renderLabel(&labelServerPort);
renderer.renderLabel(&labelExternalPort);
renderer.renderListBox(&listFontSizeAdjustment);
renderer.renderLabel(&labelFontSizeAdjustment);
renderer.renderLabel(&labelFullscreenWindowed);
@ -1150,8 +1149,8 @@ void MenuStateOptions::saveConfig(){
config.setString("FontSizeAdjustment", listFontSizeAdjustment.getSelectedItem());
CoreData::getInstance().getMenuMusic()->setVolume(strToInt(listBoxVolumeMusic.getSelectedItem())/100.f);
config.setString("SoundVolumeMusic", listBoxVolumeMusic.getSelectedItem());
config.setString("PortExternal", listBoxServerPort.getSelectedItem());
config.setInt("FTPServerPort",config.getInt("PortExternal")+1);
config.setString("PortServer", listBoxServerPort.getSelectedItem());
config.setInt("FTPServerPort",config.getInt("PortServer")+1);
config.setBool("EnableFTPXfer", checkBoxEnableFTP.getValue());
config.setBool("EnableFTPServer", checkBoxEnableFTPServer.getValue());

View File

@ -55,7 +55,7 @@ private:
GraphicLabel labelPlayerName;
GraphicLabel labelPlayerNameLabel;
GraphicLabel *activeInputLabel;
GraphicLabel labelServerPort;
GraphicLabel labelExternalPort;
GraphicLabel labelServerPortLabel;

View File

@ -2424,8 +2424,9 @@ std::map<string,string> ServerInterface::publishToMasterserver() {
publishToServerInfo["activeSlots"] = intToStr(slotCountUsed);
publishToServerInfo["networkSlots"] = intToStr(slotCountHumans);
publishToServerInfo["connectedClients"] = intToStr(slotCountConnectedPlayers);
string externalport = config.getString("PortExternal", intToStr(GameConstants::serverPort).c_str());
publishToServerInfo["externalconnectport"] = externalport;
string serverPort=config.getString("PortServer", intToStr(GameConstants::serverPort).c_str());
string externalPort=config.getString("PortExternal", serverPort.c_str());
publishToServerInfo["externalconnectport"] = externalPort;
publishToServerInfo["privacyPlease"] = intToStr(config.getBool("PrivacyPlease","false"));
publishToServerInfo["gameStatus"] = intToStr(game_status_in_progress);