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 } |