(
peerIds: string[],
messageName: string,
data: object
)
| 242 | * Takes into account the simulation of network latency and packet loss. |
| 243 | */ |
| 244 | const sendDataTo = ( |
| 245 | peerIds: string[], |
| 246 | messageName: string, |
| 247 | data: object |
| 248 | ): void => { |
| 249 | if ( |
| 250 | SIMULATE_NETWORK_PACKET_LOSS_CHANCE > 0 && |
| 251 | Math.random() < SIMULATE_NETWORK_PACKET_LOSS_CHANCE |
| 252 | ) { |
| 253 | return; |
| 254 | } |
| 255 | |
| 256 | if ( |
| 257 | SIMULATE_NETWORK_RANDOM_SLOW_PACKET_CHANCE > 0 && |
| 258 | Math.random() < SIMULATE_NETWORK_RANDOM_SLOW_PACKET_CHANCE |
| 259 | ) { |
| 260 | setTimeout(() => { |
| 261 | gdjs.multiplayerPeerJsHelper.sendDataTo(peerIds, messageName, data); |
| 262 | }, SIMULATE_NETWORK_RANDOM_LATENCY_MS); |
| 263 | return; |
| 264 | } |
| 265 | |
| 266 | if (SIMULATE_NETWORK_LATENCY_MS > 0) { |
| 267 | setTimeout(() => { |
| 268 | gdjs.multiplayerPeerJsHelper.sendDataTo(peerIds, messageName, data); |
| 269 | }, SIMULATE_NETWORK_LATENCY_MS); |
| 270 | return; |
| 271 | } |
| 272 | |
| 273 | gdjs.multiplayerPeerJsHelper.sendDataTo(peerIds, messageName, data); |
| 274 | }; |
| 275 | |
| 276 | const findClosestInstanceWithoutNetworkId = ( |
| 277 | instances: gdjs.RuntimeObject[], |
no test coverage detected