equal
deleted
inserted
replaced
60 } |
60 } |
61 } |
61 } |
62 |
62 |
63 void HWConnectedClient::ParseCmd(const QStringList & lst) |
63 void HWConnectedClient::ParseCmd(const QStringList & lst) |
64 { |
64 { |
65 qDebug() << "Server: Parsing:" << lst; |
65 //qDebug() << "Server: Parsing:" << lst; |
66 if(!lst.size()) |
66 if(!lst.size()) |
67 { |
67 { |
68 qWarning("Net server: Bad message"); |
68 qWarning("Net server: Bad message"); |
69 return; |
69 return; |
70 } |
70 } |
136 // create CONFIG_PARAM to save HHNUM at server from lst |
136 // create CONFIG_PARAM to save HHNUM at server from lst |
137 QStringList tmp = lst; |
137 QStringList tmp = lst; |
138 tmp=QStringList("CONFIG_PARAM") << confstr << lst[3]; |
138 tmp=QStringList("CONFIG_PARAM") << confstr << lst[3]; |
139 m_hwserver->sendOthers(this, tmp.join(QString(delimeter))); |
139 m_hwserver->sendOthers(this, tmp.join(QString(delimeter))); |
140 m_hwserver->m_gameCfg[tmp[1]]=tmp.mid(2); |
140 m_hwserver->m_gameCfg[tmp[1]]=tmp.mid(2); |
|
141 qDebug() << QString("[%1] = %2").arg(tmp[1]).arg(tmp.mid(2)[0]); |
141 return; |
142 return; |
142 } |
143 } |
143 |
144 |
144 if(lst[0]=="CONFIG_PARAM") { |
145 if(lst[0]=="CONFIG_PARAM") { |
145 if (lst.size()<3) { |
146 if (lst.size()<3) { |
166 // add team ID |
167 // add team ID |
167 static unsigned int netTeamID=0; |
168 static unsigned int netTeamID=0; |
168 tmp.insert(1, QString::number(++netTeamID)); |
169 tmp.insert(1, QString::number(++netTeamID)); |
169 |
170 |
170 // hedgehogs num count |
171 // hedgehogs num count |
171 int maxAdd=18-m_hwserver->hhnum; |
172 int maxAdd = 18 - m_hwserver->hhnum; |
172 if (maxAdd<=0) |
173 if (maxAdd <= 0) |
173 { |
174 { |
174 qWarning("Net server: 'ADDTEAM' message: rejecting"); |
175 qWarning("Net server: 'ADDTEAM' message: rejecting"); |
175 return; // reject command |
176 return; // reject command |
176 } |
177 } |
177 int toAdd=maxAdd<4 ? maxAdd : 4; |
178 int toAdd=maxAdd < 4 ? maxAdd : 4; |
178 m_hwserver->hhnum+=toAdd; |
179 m_hwserver->hhnum+=toAdd; |
179 qDebug() << "to add = " << toAdd << "m_hwserver->hhnum = " << m_hwserver->hhnum; |
180 qDebug() << "to add = " << toAdd << "m_hwserver->hhnum = " << m_hwserver->hhnum; |
180 // hedgehogs num config |
181 // hedgehogs num config |
181 QString hhnumCfg=QString("CONFIG_PARAM%1HHNUM+%2+%3%1%4").arg(delimeter).arg(tmp[0])\ |
182 QString hhnumCfg=QString("CONFIG_PARAM%1HHNUM+%2+%3%1%4").arg(delimeter).arg(tmp[0])\ |
182 .arg(netTeamID)\ |
183 .arg(netTeamID)\ |
188 .arg(tmp.takeAt(2)); |
189 .arg(tmp.takeAt(2)); |
189 |
190 |
190 m_hwserver->m_gameCfg[colorCfg.split(delimeter)[1]]=colorCfg.split(delimeter).mid(2); |
191 m_hwserver->m_gameCfg[colorCfg.split(delimeter)[1]]=colorCfg.split(delimeter).mid(2); |
191 m_hwserver->m_gameCfg[hhnumCfg.split(delimeter)[1]]=hhnumCfg.split(delimeter).mid(2); |
192 m_hwserver->m_gameCfg[hhnumCfg.split(delimeter)[1]]=hhnumCfg.split(delimeter).mid(2); |
192 m_teamsCfg.push_back(tmp); |
193 m_teamsCfg.push_back(tmp); |
193 |
194 qDebug() << QString("[%1] = %2").arg(hhnumCfg.split(delimeter)[1]).arg(hhnumCfg.split(delimeter).mid(2)[0]); |
194 m_hwserver->sendOthers(this, QString("ADDTEAM:")+delimeter+tmp.join(QString(delimeter))); |
195 m_hwserver->sendOthers(this, QString("ADDTEAM:")+delimeter+tmp.join(QString(delimeter))); |
195 RawSendNet(QString("TEAM_ACCEPTED%1%2%1%3").arg(delimeter).arg(tmp[0]).arg(tmp[1])); |
196 RawSendNet(QString("TEAM_ACCEPTED%1%2%1%3").arg(delimeter).arg(tmp[0]).arg(tmp[1])); |
196 m_hwserver->sendAll(colorCfg); |
197 m_hwserver->sendAll(colorCfg); |
197 m_hwserver->sendAll(hhnumCfg); |
198 m_hwserver->sendAll(hhnumCfg); |
198 return; |
199 return; |
211 if(hhTmpList[0] == "HHNUM") |
212 if(hhTmpList[0] == "HHNUM") |
212 { |
213 { |
213 if(hhTmpList[1]==lst[1]) |
214 if(hhTmpList[1]==lst[1]) |
214 { |
215 { |
215 m_hwserver->hhnum-=it.value()[0].toUInt(); |
216 m_hwserver->hhnum-=it.value()[0].toUInt(); |
|
217 m_hwserver->m_gameCfg.remove(it.key()); |
216 qDebug() << "REMOVETEAM hhnum = " << m_hwserver->hhnum; |
218 qDebug() << "REMOVETEAM hhnum = " << m_hwserver->hhnum; |
217 break; |
219 break; |
218 } |
220 } |
219 } |
221 } |
220 } |
222 } |