- added ability to toggle team # from 1 to 8 (for tomreyn)
This commit is contained in:
parent
40a0707519
commit
6ace9ad571
|
@ -432,6 +432,8 @@ MenuStateCustomGame::MenuStateCustomGame(Program *program, MainMenu *mainMenu, b
|
|||
|
||||
listBoxTeams[i].setItems(teamItems);
|
||||
listBoxTeams[i].setSelectedItemIndex(i);
|
||||
lastSelectedTeamIndex[i] = listBoxTeams[i].getSelectedItemIndex();
|
||||
|
||||
listBoxControls[i].setItems(controlItems);
|
||||
labelNetStatus[i].setText("");
|
||||
}
|
||||
|
@ -780,6 +782,15 @@ void MenuStateCustomGame::mouseClick(int x, int y, MouseButton mouseButton){
|
|||
}
|
||||
else if(listBoxTeams[i].mouseClick(x, y))
|
||||
{
|
||||
if(factionFiles[listBoxFactions[i].getSelectedItemIndex()] != formatString(GameConstants::OBSERVER_SLOTNAME)) {
|
||||
//printf("i = %d factionFiles[listBoxFactions[i].getSelectedItemIndex()] [%s] listBoxTeams[i].getSelectedItemIndex() = %d, lastSelectedTeamIndex[i] = %d\n",i,factionFiles[listBoxFactions[i].getSelectedItemIndex()].c_str(),listBoxTeams[i].getSelectedItemIndex(),lastSelectedTeamIndex[i]);
|
||||
if(listBoxTeams[i].getSelectedItemIndex() + 1 != (GameConstants::maxPlayers + fpt_Observer)) {
|
||||
lastSelectedTeamIndex[i] = listBoxTeams[i].getSelectedItemIndex();
|
||||
}
|
||||
}
|
||||
else {
|
||||
lastSelectedTeamIndex[i] = -1;
|
||||
}
|
||||
needToRepublishToMasterserver = true;
|
||||
|
||||
if(hasNetworkGameSettings() == true)
|
||||
|
@ -1772,8 +1783,20 @@ void MenuStateCustomGame::loadGameSettings(GameSettings *gameSettings) {
|
|||
listBoxTeams[i].setSelectedItem(intToStr(GameConstants::maxPlayers + fpt_Observer));
|
||||
}
|
||||
else if(listBoxTeams[i].getSelectedItem() == intToStr(GameConstants::maxPlayers + fpt_Observer)) {
|
||||
if(lastSelectedTeamIndex[i] >= 0 && lastSelectedTeamIndex[i] + 1 != (GameConstants::maxPlayers + fpt_Observer)) {
|
||||
if(lastSelectedTeamIndex[i] == 0) {
|
||||
lastSelectedTeamIndex[i] = GameConstants::maxPlayers-1;
|
||||
}
|
||||
else if(lastSelectedTeamIndex[i] == GameConstants::maxPlayers-1) {
|
||||
lastSelectedTeamIndex[i] = 0;
|
||||
}
|
||||
|
||||
listBoxTeams[i].setSelectedItemIndex(lastSelectedTeamIndex[i]);
|
||||
}
|
||||
else {
|
||||
listBoxTeams[i].setSelectedItem(intToStr(1));
|
||||
}
|
||||
}
|
||||
|
||||
gameSettings->setTeam(slotIndex, listBoxTeams[i].getSelectedItemIndex());
|
||||
gameSettings->setStartLocationIndex(slotIndex, i);
|
||||
|
@ -2008,6 +2031,7 @@ GameSettings MenuStateCustomGame::loadGameSettingsFromFile(std::string fileName)
|
|||
for(int i = 0; i < GameConstants::maxPlayers; ++i) {
|
||||
listBoxControls[i].setSelectedItemIndex(gameSettings.getFactionControl(i));
|
||||
listBoxTeams[i].setSelectedItemIndex(gameSettings.getTeam(i));
|
||||
lastSelectedTeamIndex[i] = listBoxTeams[i].getSelectedItemIndex();
|
||||
|
||||
string factionName = gameSettings.getFactionTypeName(i);
|
||||
factionName = formatString(factionName);
|
||||
|
|
|
@ -130,6 +130,7 @@ private:
|
|||
|
||||
MapPreview mapPreview;
|
||||
bool autostart;
|
||||
std::map<int,int> lastSelectedTeamIndex;
|
||||
|
||||
public:
|
||||
MenuStateCustomGame(Program *program, MainMenu *mainMenu ,bool openNetworkSlots= false, bool parentMenuIsMasterserver=false, bool autostart=false);
|
||||
|
|
Loading…
Reference in New Issue
Block a user