()
| 1923 | const heartbeatMessageNamePrefix = '#heartbeat'; |
| 1924 | const heartbeatMessageRegex = /#heartbeat#(.+)/; |
| 1925 | const createHeartbeatMessage = (): { |
| 1926 | messageName: string; |
| 1927 | messageData: any; |
| 1928 | } => { |
| 1929 | // If we create the heartbeat message, we are the host. |
| 1930 | // Ensure our player number is correctly set when the first heartbeat is sent. |
| 1931 | _playersInfo[gdjs.multiplayer.getCurrentPlayerNumber()] = { |
| 1932 | ping: 0, // we are the host, so we don't need to compute the ping. |
| 1933 | playerId: gdjs.playerAuthentication.getUserId(), |
| 1934 | username: gdjs.playerAuthentication.getUsername(), |
| 1935 | }; |
| 1936 | for (const playerNumber in _playersInfo) { |
| 1937 | _playersInfo[playerNumber] = { |
| 1938 | ..._playersInfo[playerNumber], |
| 1939 | ping: getPlayerPing(parseInt(playerNumber, 10)), |
| 1940 | }; |
| 1941 | } |
| 1942 | return { |
| 1943 | messageName: `${heartbeatMessageNamePrefix}#${gdjs.multiplayer.getCurrentPlayerNumber()}`, |
| 1944 | messageData: { |
| 1945 | now: getTimeNow(), // we send the current time to compute the ping. |
| 1946 | playersInfo: _playersInfo, |
| 1947 | }, |
| 1948 | }; |
| 1949 | }; |
| 1950 | const createHeartbeatAnswerMessage = ({ |
| 1951 | heartbeatSentAt, |
| 1952 | }: { |
no test coverage detected