net.Receive
Açıklama
Bir ağ mesajı işleyicisi ekler. Ağ mesajını almak için yalnızca bir alıcı kullanılabilir.
Mesaj işleyici geri çağrısı içinde net.Read* fonksiyonlarını kullanabilirsiniz.
Bu fonksiyonu, ne yaptığınızı bilmiyorsanız, düzgün çalışması için diğer tüm fonksiyonların veya kancaların dışına koymalısınız!
Bilgileri, yazdığınız sırayla okumanız gerekir.
Her ağ mesajının 64KB'lık bir uzunluk sınırı vardır!
Argümanlar
1 string messageName
Kancalanacak mesaj adı.
Mesaj adı küçük harfe dönüştürülür, bu nedenle "
BigBlue" ve "bigblue" mesaj adları eşit kabul edilir.Örnek
Sunucudan gönderildiğinde, istemci tarafında mesaj alımını gösteren bir örnek.
if ( SERVER ) then
util.AddNetworkString( "message_to_clients" )
concommand.Add( "send_message", function( ply, cmd, args )
net.Start( "message_to_clients" )
net.WriteString( args[ 1 ] or "my very cool message, yeah!" )
net.WriteUInt( 1337, 16 )
net.Broadcast()
end )
else
net.Receive( "message_to_clients", function( len, ply )
print( "Sunucudan mesaj alındı. Uzunluğu " .. len .. "." )
-- Yazdığımız sırayla okuyoruz
local message = net.ReadString()
local myCoolNumber = net.ReadUInt( 16 )
print( "Mesaj şuydu: ", message )
print( "Harika sayı şuydu: ", myCoolNumber )
end )
end
Çıktı:
] send_message test
Sunucudan mesaj alındı. Uzunluğu 56.
Mesaj şuydu: test
Harika sayı şuydu: 1337
Örnek
Bir istemciden gönderildiğinde, sunucu tarafında mesaj alımını gösteren bir örnek.
if ( SERVER ) then
util.AddNetworkString( "message_to_server" )
net.Receive( "message_to_server", function( len, ply )
print( "Mesaj " .. ply:Nick() .. "'dan alındı. Uzunluğu " .. len .. "." )
-- Yazdığımız sırayla okuyoruz
local message = net.ReadString()
local myCoolNumber = net.ReadUInt( 16 )
print( "Mesaj şuydu: ", message )
print( "Harika sayı şuydu: ", myCoolNumber )
end )
else
concommand.Add( "send_message_to_server", function( ply, cmd, args )
net.Start( "message_to_server" )
net.WriteString( args[ 1 ] or "my very cool message, yeah!" )
net.WriteUInt( 1337, 16 )
net.SendToServer()
end )
end
Çıktı:
] send_message_to_server test
Rubat'tan mesaj alındı. Uzunluğu 56.
Mesaj şuydu: test
Harika sayı şuydu: 1337
Tüm sunucular · GmodTR Launcher · Rehber · GMod Wiki · GmodTR nedir? · Sunucu ekle · Discord