if (msg.size() >= 9 && msg[0] == 'G' && msg[1] == '0' && msg[2] == '1') {
// G01: Game clock, period number, and number of time-outs.
- bool clock_running = (msg[4] & 0x02);
+ bool clock_running = !(msg[4] & 0x02);
// bool klaxon = (msg[4] & 0x04);
int minutes = parse_clock(msg[5], msg[6]);
int seconds = parse_clock(msg[7], msg[8]);
+ map<string, string> param;
+ param["clock_min"] = to_string(minutes);
+ param["clock_sec"] = to_string(seconds);
+ ws->send_command("update " + serialize_as_json(param));
+ ws->send_command("eval adjustclockfromstate()");
+
if (clock_running) {
ws->send_command("eval startclock()");
- map<string, string> param;
- param["clock_min"] = to_string(minutes);
- param["clock_sec"] = to_string(seconds);
- ws->send_command("update " + serialize_as_json(param));
- ws->send_command("eval setclockfromstate()");
} else {
ws->send_command("eval stopclock()");
}