X-Git-Url: http://deadsoftware.ru/gitweb?p=d2df-sdl.git;a=blobdiff_plain;f=src%2Fgame%2Fg_netmaster.pas;h=b05c6d434946e4c9b76c461dc37bcf3a7eae9dac;hp=e0eed50cdb6668dae4b2fd19671556f3cd92325c;hb=652c380f1fe8a394de7793f6f386eb0df284d2aa;hpb=9abb24523fd7fcb7778fda5920f7d0b39175eb61 diff --git a/src/game/g_netmaster.pas b/src/game/g_netmaster.pas index e0eed50..b05c6d4 100644 --- a/src/game/g_netmaster.pas +++ b/src/game/g_netmaster.pas @@ -23,7 +23,7 @@ type Port: Word; Map: string; Players, MaxPlayers, LocalPl, Bots: Byte; - Ping: Integer; + Ping: Int64; GameMode: Byte; Password: Boolean; PingAddr: ENetAddress; @@ -66,7 +66,7 @@ var slFetched: Boolean = False; slDirPressed: Boolean = False; -function GetTimerMS(): Integer; +function GetTimerMS(): Int64; begin Result := GetTimer() {div 1000}; end; @@ -74,17 +74,17 @@ end; procedure PingServer(var S: TNetServer; Sock: ENetSocket); var Buf: ENetBuffer; - Ping: array [0..5] of Byte; - ClTime: Integer; + Ping: array [0..9] of Byte; + ClTime: Int64; begin ClTime := GetTimerMS(); Buf.data := Addr(Ping[0]); - Buf.dataLength := 6; + Buf.dataLength := 2+8; Ping[0] := Ord('D'); Ping[1] := Ord('F'); - LongInt(Addr(Ping[2])^) := ClTime; + Int64(Addr(Ping[2])^) := ClTime; enet_socket_send(Sock, Addr(S.PingAddr), @Buf, 1); end; @@ -94,7 +94,8 @@ var Cnt: Byte; P: pENetPacket; MID: Byte; - I, T, RX: Integer; + I, RX: Integer; + T: Int64; Sock: ENetSocket; Buf: ENetBuffer; SvAddr: ENetAddress; @@ -196,7 +197,7 @@ begin begin with SL[I] do begin - Ping := e_Buffer_Read_LongInt(@NetIn); + Ping := e_Buffer_Read_Int64(@NetIn); Ping := GetTimerMS() - Ping; Name := e_Buffer_Read_String(@NetIn); Map := e_Buffer_Read_String(@NetIn);