Fixed rules parsing on Windows
This commit is contained in:
@@ -112,32 +112,30 @@ RulesState::RulesState()
|
|||||||
void RulesState::parsePlayerState(int playerId, string s)
|
void RulesState::parsePlayerState(int playerId, string s)
|
||||||
{
|
{
|
||||||
stringstream stream(s);
|
stringstream stream(s);
|
||||||
|
streampos pos = stream.tellg();
|
||||||
stream >> *(playerData[playerId].player);
|
stream >> *(playerData[playerId].player);
|
||||||
|
|
||||||
while(std::getline(stream, s))
|
size_t limiter = s.find("=");
|
||||||
|
if (limiter == string::npos) limiter = s.find(":");
|
||||||
|
string areaS;
|
||||||
|
if (limiter != string::npos)
|
||||||
{
|
{
|
||||||
size_t limiter = s.find("=");
|
areaS = s.substr(0, limiter);
|
||||||
if (limiter == string::npos) limiter = s.find(":");
|
|
||||||
string areaS;
|
|
||||||
if (limiter != string::npos)
|
|
||||||
{
|
|
||||||
areaS = s.substr(0, limiter);
|
|
||||||
|
|
||||||
if (areaS.compare("auto") == 0)
|
if (areaS.compare("auto") == 0)
|
||||||
{
|
{
|
||||||
playerData[playerId].extraRules.push_back(s.substr(limiter + 1));
|
playerData[playerId].extraRules.push_back(s.substr(limiter + 1));
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return; // ERROR
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
//ERROR
|
return; // ERROR
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
//ERROR
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Rules::addExtraRules(GameObserver* g)
|
void Rules::addExtraRules(GameObserver* g)
|
||||||
|
|||||||
Reference in New Issue
Block a user