--- a/doc/protocol.txt Thu Dec 06 00:08:33 2012 +0400
+++ b/doc/protocol.txt Thu Dec 06 00:14:40 2012 +0400
@@ -1,34 +1,35 @@
- '?' 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
- 'K' вывести сообщение из KB
- 'Q' выход через команду /quit
- 'q' выход по причине окончания игры
- 't' + № /taunt №
- 'F' + <team> команда team вылетела в сетевой игре
+ '?' 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 №
фронтенд клиенту:
- 'e' + <команда> выполнить "/<команда>"
- 'T' + {L,N,D} тип игры (локальная, сетевая, просмотр демо)
- 'W' + <текст> сообщение о нефатальной ошибке
+ 'e' + <команда> выполнить "/<команда>"
+ 'T' + {L,N,D} тип игры (локальная, сетевая, просмотр демо)
+ 'W' + <текст> сообщение о нефатальной ошибке
+ 'F' + <team> команда team вылетела в сетевой игре
+ 'o' stop syncing, game over!
Клиент фронтенду:
- 'C' запрос текущего конфига игры
- 'q' выход по причине окончания демки
- 'i' статистика
+ 'C' запрос текущего конфига игры
+ 'q' выход по причине окончания демки
+ 'i' статистика
+ 'K' вывести сообщение из KB
+ 'Q' выход через команду /quit
+ 'q' выход по причине окончания игры
--- a/hedgewars/uIO.pas Thu Dec 06 00:08:33 2012 +0400
+++ b/hedgewars/uIO.pas Thu Dec 06 00:14:40 2012 +0400
@@ -124,6 +124,7 @@
'E': OutError(copy(s, 2, Length(s) - 1), true);
'W': OutError(copy(s, 2, Length(s) - 1), false);
'M': ParseCommand('landcheck ' + s, true);
+ 'o': if fastUntilLag then ParseCommand('forcequit', true);
'T': case s[2] of
'L': GameType:= gmtLocal;
'D': GameType:= gmtDemo;