Stop syncing when recieved 'o' message
authorunc0rr
Thu, 06 Dec 2012 00:14:40 +0400
changeset 8243 92a430205796
parent 8241 b15f165c080c
child 8245 d1a830c304c7
Stop syncing when recieved 'o' message
doc/protocol.txt
hedgewars/uIO.pas
--- 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;