videorec: Fix flushing encoders
When passing NULL frames, encoders empty their queues, but we have
to stop polling from them when they don't any more data.
'?' ping?
'!' pong!
'l','L' срабатывание команд -left, +left
'r','R' -right, +right
'u','U' -up, +up
'd','D' -down, +down
'z', 'Z' -precise, +precise
'N' срабатывание команды /nextturn
'S' /switch
's' + <текст> /say
'+' пустой пакет для постоянности лага
'1'..'5' /timer 1..5
chr(128+№) /slot №
'w' /setweap
'p' /put
'j' /ljump
'J' /hjump
'E' + <текст> сообщение об ошибке
',' /skip
't' + № /taunt №
'f' + <team> 'team' is uncontrolled
'g' + <team> 'team' is controlled again (synced msg)
фронтенд клиенту:
'e' + <команда> выполнить "/<команда>"
'T' + {L,N,D} тип игры (локальная, сетевая, просмотр демо)
'W' + <текст> сообщение о нефатальной ошибке
'F' + <team> команда team вылетела в сетевой игре
'G' + <team> 'team' is back (unsynced msg)
'o' stop syncing, game over!
Клиент фронтенду:
'C' запрос текущего конфига игры
'q' выход по причине окончания демки
'i' статистика
'K' вывести сообщение из KB
'Q' выход через команду /quit
'q' выход по причине окончания игры