QTfrontend/game.cpp
branchexperimental3D
changeset 4812 f924be23ffb4
parent 4004 b1c2c2f6fc5e
parent 4494 9585435e20f7
child 4849 e7b1f0aaf36f
equal deleted inserted replaced
4347:0ddb100fea61 4812:f924be23ffb4
    38   m_pTeamSelWidget(pTeamSelWidget)
    38   m_pTeamSelWidget(pTeamSelWidget)
    39 {
    39 {
    40     this->config = config;
    40     this->config = config;
    41     this->gamecfg = gamecfg;
    41     this->gamecfg = gamecfg;
    42     TeamCount = 0;
    42     TeamCount = 0;
       
    43     netSuspend = false;
    43 }
    44 }
    44 
    45 
    45 HWGame::~HWGame()
    46 HWGame::~HWGame()
    46 {
    47 {
    47     SetGameState(gsDestroyed);
    48     SetGameState(gsDestroyed);
    75         default:
    76         default:
    76             gt = "TL";
    77             gt = "TL";
    77     }
    78     }
    78     HWProto::addStringToBuffer(buf, gt);
    79     HWProto::addStringToBuffer(buf, gt);
    79 
    80 
    80     HWProto::addStringListToBuffer(buf, gamecfg->getFullConfig());
    81     buf += gamecfg->getFullConfig();
    81 
    82 
    82     if (m_pTeamSelWidget)
    83     if (m_pTeamSelWidget)
    83     {
    84     {
    84         QList<HWTeam> teams = m_pTeamSelWidget->getPlayingTeams();
    85         QList<HWTeam> teams = m_pTeamSelWidget->getPlayingTeams();
    85         for(QList<HWTeam>::iterator it = teams.begin(); it != teams.end(); ++it)
    86         for(QList<HWTeam>::iterator it = teams.begin(); it != teams.end(); ++it)
    86         {
    87         {
    87             HWProto::addStringToBuffer(buf, QString("eammloadt %1").arg(ammostr.mid(0, cAmmoNumber)));
    88             HWProto::addStringToBuffer(buf, QString("eammloadt %1").arg(ammostr.mid(0, cAmmoNumber)));
    88             HWProto::addStringToBuffer(buf, QString("eammprob %1").arg(ammostr.mid(cAmmoNumber, cAmmoNumber)));
    89             HWProto::addStringToBuffer(buf, QString("eammprob %1").arg(ammostr.mid(cAmmoNumber, cAmmoNumber)));
    89             HWProto::addStringToBuffer(buf, QString("eammdelay %1").arg(ammostr.mid(2 * cAmmoNumber, cAmmoNumber)));
    90             HWProto::addStringToBuffer(buf, QString("eammdelay %1").arg(ammostr.mid(2 * cAmmoNumber, cAmmoNumber)));
    90             HWProto::addStringToBuffer(buf, QString("eammreinf %1").arg(ammostr.mid(3 * cAmmoNumber, cAmmoNumber)));
    91             HWProto::addStringToBuffer(buf, QString("eammreinf %1").arg(ammostr.mid(3 * cAmmoNumber, cAmmoNumber)));
    91             HWProto::addStringToBuffer(buf, QString("eammstore"));
    92             if(!gamecfg->schemeData(21).toBool()) HWProto::addStringToBuffer(buf, QString("eammstore"));
    92             HWProto::addStringListToBuffer(buf,
    93             HWProto::addStringListToBuffer(buf,
    93                 (*it).TeamGameConfig(gamecfg->getInitHealth()));
    94                 (*it).TeamGameConfig(gamecfg->getInitHealth()));
    94         }
    95         }
    95     }
    96     }
    96     RawSendIPC(buf);
    97     RawSendIPC(buf);
   243             QString msgbody = QString::fromUtf8(msg.mid(2).left(size - 4));
   244             QString msgbody = QString::fromUtf8(msg.mid(2).left(size - 4));
   244             emit SendTeamMessage(msgbody);
   245             emit SendTeamMessage(msgbody);
   245             break;
   246             break;
   246         }
   247         }
   247         default: {
   248         default: {
   248             if (gameType == gtNet)
   249             if (gameType == gtNet && !netSuspend)
   249             {
   250             {
   250                 emit SendNet(msg);
   251                 emit SendNet(msg);
   251             }
   252             }
   252         if (msg.at(1) != 's')
   253         if (msg.at(1) != 's')
   253             demo.append(msg);
   254             demo.append(msg);
   376 void HWGame::SetGameState(GameState state)
   377 void HWGame::SetGameState(GameState state)
   377 {
   378 {
   378     gameState = state;
   379     gameState = state;
   379     emit GameStateChanged(state);
   380     emit GameStateChanged(state);
   380 }
   381 }
       
   382 
       
   383 void HWGame::KillAllTeams()
       
   384 {
       
   385     if (m_pTeamSelWidget)
       
   386     {
       
   387         QByteArray buf;
       
   388         QList<HWTeam> teams = m_pTeamSelWidget->getPlayingTeams();
       
   389         for(QList<HWTeam>::iterator it = teams.begin(); it != teams.end(); ++it)
       
   390             HWProto::addStringToBuffer(buf, QString("eteamgone %1").arg((*it).TeamName));
       
   391         RawSendIPC(buf);
       
   392     }
       
   393 }