Added upload and download statistics

This commit is contained in:
2024-01-26 19:00:59 +01:00
parent 8370afd9a1
commit 252d55b30f
10 changed files with 54 additions and 6 deletions

View File

@ -3,7 +3,11 @@ extends NetworkNode
@export var host: String
@export var port: int
signal download_changed(down: int)
signal upload_changed(up: int)
var socket := PacketPeerUDP.new()
var upload := 0
func _enter_tree():
socket.connect_to_host(host, port)
@ -17,4 +21,14 @@ func _enter_tree():
func _process(_delta):
while socket.get_available_packet_count() > 0:
var packet := socket.get_packet()
handle_packet(packet, socket)
handle_packet(packet, socket)
func update_statistics():
download_changed.emit(download)
upload_changed.emit(upload)
download = 0
upload = 0
func send(data: PackedByteArray):
socket.put_packet(data)
upload += data.size()

View File

@ -32,7 +32,7 @@ func send_login():
var buffer := StreamPeerBuffer.new()
buffer.put_8(Packet.LOGIN)
buffer.put_data(JSON.stringify([Global.username, password]).to_utf8_buffer())
%Client.socket.put_packet(buffer.data_array)
%Client.send(buffer.data_array)
print("[%s] Connecting..." % Global.username)
func is_logged_in() -> bool:

View File

@ -19,7 +19,7 @@ func send_ping():
var buffer := StreamPeerBuffer.new()
buffer.put_8(Packet.PING)
buffer.put_8(count)
%Client.socket.put_packet(buffer.data_array)
%Client.send(buffer.data_array)
history[count] = get_time()
count += 1

View File

@ -40,4 +40,4 @@ func send_position():
buffer.put_float(Global.player.position.x)
# buffer.put_float(Global.player.position.y)
buffer.put_float(Global.player.position.z)
%Client.socket.put_packet(buffer.data_array)
%Client.send(buffer.data_array)

View File

@ -2,6 +2,7 @@ class_name NetworkNode
extends Node
var handlers: Array[Node] = []
var download := 0
func _init():
handlers.resize(256)
@ -21,3 +22,4 @@ func handle_packet(packet: PackedByteArray, peer: PacketPeer):
return
handler.handle_packet(packet.slice(1), peer)
download += packet.size()