QTfrontend/game.cpp
changeset 7665 e556b44f5bd8
parent 7629 d624030abf24
child 7687 c73fd8cfa7c0
child 7713 3833741d8752
equal deleted inserted replaced
7664:4bc4b739f6e0 7665:e556b44f5bd8
   429     QByteArray buf;
   429     QByteArray buf;
   430     HWProto::addStringToBuffer(buf, QString("efinish"));
   430     HWProto::addStringToBuffer(buf, QString("efinish"));
   431     RawSendIPC(buf);
   431     RawSendIPC(buf);
   432 }
   432 }
   433 
   433 
   434 void HWGame::sendCampaignVar(QByteArray varToSend)
   434 void HWGame::sendCampaignVar(const QByteArray &varToSend)
   435 {
   435 {
   436     QString varToFind(varToSend);
   436     QString varToFind(varToSend);
   437     QSettings teamfile(cfgdir->absolutePath() + "/Teams/" + campaignTeam + ".hwt", QSettings::IniFormat, 0);
   437     QSettings teamfile(cfgdir->absolutePath() + "/Teams/" + campaignTeam + ".hwt", QSettings::IniFormat, 0);
   438     teamfile.setIniCodec("UTF-8");
   438     teamfile.setIniCodec("UTF-8");
   439     QString varValue = teamfile.value("Campaign " + campaign + "/" + varToFind, "").toString();
   439     QString varValue = teamfile.value("Campaign " + campaign + "/" + varToFind, "").toString();
   440     QByteArray command;
   440     QByteArray command;
   441     HWProto::addStringToBuffer(command, "V." + varValue);
   441     HWProto::addStringToBuffer(command, "V." + varValue);
   442     RawSendIPC(command);
   442     RawSendIPC(command);
   443 }
   443 }
   444 
   444 
   445 void HWGame::writeCampaignVar(QByteArray varVal)
   445 void HWGame::writeCampaignVar(const QByteArray & varVal)
   446 {
   446 {
   447     QString varToWrite("");
   447     int i = varVal.indexOf(" ");
   448     QString varValue("");
   448     if(i < 0)
   449     unsigned int i = 0;
   449         return;
   450     while (i < varVal.size() && varVal.at(i) != ' ')
   450 
   451     {
   451     QString varToWrite = QString::fromUtf8(varVal.left(i));
   452       varToWrite.append(varVal.at(i));
   452     QString varValue = QString::fromUtf8(varVal.mid(i + 1));
   453       i++;
       
   454     }
       
   455     i++;
       
   456     while (i < varVal.size() && varVal.at(i) != '\0')
       
   457     {
       
   458       varValue.append(varVal.at(i));
       
   459       i++;
       
   460     }
       
   461 
   453 
   462     QSettings teamfile(cfgdir->absolutePath() + "/Teams/" + campaignTeam + ".hwt", QSettings::IniFormat, 0);
   454     QSettings teamfile(cfgdir->absolutePath() + "/Teams/" + campaignTeam + ".hwt", QSettings::IniFormat, 0);
   463     teamfile.setIniCodec("UTF-8");
   455     teamfile.setIniCodec("UTF-8");
   464     teamfile.setValue("Campaign " + campaign + "/" + varToWrite, varValue);
   456     teamfile.setValue("Campaign " + campaign + "/" + varToWrite, varValue);
   465 }
   457 }