60 GBoxOptionsLayout->addWidget(CB_border, 3, 0, 1, 2); |
60 GBoxOptionsLayout->addWidget(CB_border, 3, 0, 1, 2); |
61 |
61 |
62 L_TurnTime = new QLabel(QLabel::tr("Turn time"), GBoxOptions); |
62 L_TurnTime = new QLabel(QLabel::tr("Turn time"), GBoxOptions); |
63 L_InitHealth = new QLabel(QLabel::tr("Initial health"), GBoxOptions); |
63 L_InitHealth = new QLabel(QLabel::tr("Initial health"), GBoxOptions); |
64 L_SuddenDeath = new QLabel(QLabel::tr("Turns before SD"), GBoxOptions); |
64 L_SuddenDeath = new QLabel(QLabel::tr("Turns before SD"), GBoxOptions); |
65 L_CaseProb = new QLabel(QLabel::tr("Bonus factor"), GBoxOptions); |
65 L_CaseProb = new QLabel(QLabel::tr("Crate drops"), GBoxOptions); |
66 GBoxOptionsLayout->addWidget(L_TurnTime, 4, 0); |
66 GBoxOptionsLayout->addWidget(L_TurnTime, 4, 0); |
67 GBoxOptionsLayout->addWidget(L_InitHealth, 5, 0); |
67 GBoxOptionsLayout->addWidget(L_InitHealth, 5, 0); |
68 GBoxOptionsLayout->addWidget(L_SuddenDeath, 6, 0); |
68 GBoxOptionsLayout->addWidget(L_SuddenDeath, 6, 0); |
69 GBoxOptionsLayout->addWidget(L_CaseProb, 7, 0); |
69 GBoxOptionsLayout->addWidget(L_CaseProb, 7, 0); |
70 GBoxOptionsLayout->addWidget(new QLabel(QLabel::tr("Weapons"), GBoxOptions), 8, 0); |
70 GBoxOptionsLayout->addWidget(new QLabel(QLabel::tr("Weapons"), GBoxOptions), 8, 0); |
|
71 GBoxOptionsLayout->addWidget(new QLabel(QLabel::tr("Generated Map Filter"), GBoxOptions), 9, 0); |
71 |
72 |
72 SB_TurnTime = new QSpinBox(GBoxOptions); |
73 SB_TurnTime = new QSpinBox(GBoxOptions); |
73 SB_TurnTime->setRange(1, 99); |
74 SB_TurnTime->setRange(1, 99); |
74 SB_TurnTime->setValue(45); |
75 SB_TurnTime->setValue(45); |
75 SB_TurnTime->setSingleStep(15); |
76 SB_TurnTime->setSingleStep(15); |
93 GBoxOptionsLayout->addWidget(SB_SuddenDeath, 6, 1); |
94 GBoxOptionsLayout->addWidget(SB_SuddenDeath, 6, 1); |
94 GBoxOptionsLayout->addWidget(SB_CaseProb, 7, 1); |
95 GBoxOptionsLayout->addWidget(SB_CaseProb, 7, 1); |
95 |
96 |
96 WeaponsName = new QComboBox(GBoxOptions); |
97 WeaponsName = new QComboBox(GBoxOptions); |
97 GBoxOptionsLayout->addWidget(WeaponsName, 8, 1); |
98 GBoxOptionsLayout->addWidget(WeaponsName, 8, 1); |
|
99 |
|
100 CB_TemplateFilter = new QComboBox(GBoxOptions); |
|
101 CB_TemplateFilter->addItem(tr("All"), 0); |
|
102 CB_TemplateFilter->addItem(tr("Small"), 1); |
|
103 CB_TemplateFilter->addItem(tr("Medium"), 2); |
|
104 CB_TemplateFilter->addItem(tr("Large"), 3); |
|
105 CB_TemplateFilter->addItem(tr("Cavern"), 4); |
|
106 CB_TemplateFilter->addItem(tr("Wacky"), 5); |
|
107 GBoxOptionsLayout->addWidget(CB_TemplateFilter, 9, 1); |
98 |
108 |
99 connect(SB_InitHealth, SIGNAL(valueChanged(int)), this, SIGNAL(initHealthChanged(int))); |
109 connect(SB_InitHealth, SIGNAL(valueChanged(int)), this, SIGNAL(initHealthChanged(int))); |
100 connect(SB_TurnTime, SIGNAL(valueChanged(int)), this, SIGNAL(turnTimeChanged(int))); |
110 connect(SB_TurnTime, SIGNAL(valueChanged(int)), this, SIGNAL(turnTimeChanged(int))); |
101 connect(SB_SuddenDeath, SIGNAL(valueChanged(int)), this, SIGNAL(suddenDeathTurnsChanged(int))); |
111 connect(SB_SuddenDeath, SIGNAL(valueChanged(int)), this, SIGNAL(suddenDeathTurnsChanged(int))); |
102 connect(SB_CaseProb, SIGNAL(valueChanged(int)), this, SIGNAL(caseProbabilityChanged(int))); |
112 connect(SB_CaseProb, SIGNAL(valueChanged(int)), this, SIGNAL(caseProbabilityChanged(int))); |
103 connect(CB_mode_Forts, SIGNAL(toggled(bool)), this, SIGNAL(fortsModeChanged(bool))); |
113 connect(CB_mode_Forts, SIGNAL(toggled(bool)), this, SIGNAL(fortsModeChanged(bool))); |
104 connect(CB_teamsDivide, SIGNAL(toggled(bool)), this, SIGNAL(teamsDivideChanged(bool))); |
114 connect(CB_teamsDivide, SIGNAL(toggled(bool)), this, SIGNAL(teamsDivideChanged(bool))); |
105 connect(CB_solid, SIGNAL(toggled(bool)), this, SIGNAL(solidChanged(bool))); |
115 connect(CB_solid, SIGNAL(toggled(bool)), this, SIGNAL(solidChanged(bool))); |
106 connect(CB_border, SIGNAL(toggled(bool)), this, SIGNAL(borderChanged(bool))); |
116 connect(CB_border, SIGNAL(toggled(bool)), this, SIGNAL(borderChanged(bool))); |
107 connect(WeaponsName, SIGNAL(currentIndexChanged(int)), this, SLOT(ammoChanged(int))); |
117 connect(WeaponsName, SIGNAL(currentIndexChanged(int)), this, SLOT(ammoChanged(int))); |
|
118 connect(CB_TemplateFilter, SIGNAL(currentIndexChanged(int)), this, SLOT(templateFilterChanged(int))); |
|
119 connect(CB_TemplateFilter, SIGNAL(currentIndexChanged(int)), this, SLOT(templateFilterChanged(int))); |
108 |
120 |
109 connect(pMapContainer, SIGNAL(seedChanged(const QString &)), this, SIGNAL(seedChanged(const QString &))); |
121 connect(pMapContainer, SIGNAL(seedChanged(const QString &)), this, SIGNAL(seedChanged(const QString &))); |
110 connect(pMapContainer, SIGNAL(mapChanged(const QString &)), this, SIGNAL(mapChanged(const QString &))); |
122 connect(pMapContainer, SIGNAL(mapChanged(const QString &)), this, SIGNAL(mapChanged(const QString &))); |
111 connect(pMapContainer, SIGNAL(themeChanged(const QString &)), this, SIGNAL(themeChanged(const QString &))); |
123 connect(pMapContainer, SIGNAL(themeChanged(const QString &)), this, SIGNAL(themeChanged(const QString &))); |
112 } |
124 } |
160 quint32 GameCFGWidget::getCaseProbability() const |
172 quint32 GameCFGWidget::getCaseProbability() const |
161 { |
173 { |
162 return SB_CaseProb->value(); |
174 return SB_CaseProb->value(); |
163 } |
175 } |
164 |
176 |
|
177 quint32 GameCFGWidget::getTemplateFilter() const |
|
178 { |
|
179 return CB_TemplateFilter->itemData(CB_TemplateFilter->currentIndex()).toInt(); |
|
180 } |
|
181 |
165 QStringList GameCFGWidget::getFullConfig() const |
182 QStringList GameCFGWidget::getFullConfig() const |
166 { |
183 { |
167 QStringList sl; |
184 QStringList sl; |
168 sl.append("eseed " + getCurrentSeed()); |
185 sl.append("eseed " + getCurrentSeed()); |
169 sl.append(QString("e$gmflags %1").arg(getGameFlags())); |
186 sl.append(QString("e$gmflags %1").arg(getGameFlags())); |
170 sl.append(QString("e$turntime %1").arg(getTurnTime() * 1000)); |
187 sl.append(QString("e$turntime %1").arg(getTurnTime() * 1000)); |
171 sl.append(QString("e$sd_turns %1").arg(getSuddenDeathTurns())); |
188 sl.append(QString("e$sd_turns %1").arg(getSuddenDeathTurns())); |
172 sl.append(QString("e$casefreq %1").arg(getCaseProbability())); |
189 sl.append(QString("e$casefreq %1").arg(getCaseProbability())); |
|
190 sl.append(QString("e$template_filter %1").arg(getTemplateFilter())); |
173 |
191 |
174 QString currentMap = getCurrentMap(); |
192 QString currentMap = getCurrentMap(); |
175 if (currentMap.size() > 0) |
193 if (currentMap.size() > 0) |
176 sl.append("emap " + currentMap); |
194 sl.append("emap " + currentMap); |
177 sl.append("etheme " + getCurrentTheme()); |
195 sl.append("etheme " + getCurrentTheme()); |