RemoteFunction
*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.
Objek RemoteFunction menyederkan komunikasi berbasis waktu nyata antara batas klien-server. Anda dapat menggunakannya untuk mendefinisikan fungsi panggilan khusus dan memanggilnya secara manual dengan menelepon RemoteFunction:InvokeClient() atau 1> Class.RemoteFunction
Untuk mengakses instansi RemoteFunction di server dan klien, itu harus berada di tempat di mana kedua belah pihak dapat melihatnya, seperti ReplicatedStorage , meskipun dalam beberapa kasus itu akan menjadi tepat untuk menyimpannya di Workspace atau di dalam 1> Class.Tool</
Jika hasilnya adalah tidak diperlukan, diperlukan untuk menggunakan RemoteEvent alih-alih, karena panggilannya adalah asinkron dan tidak perlu menunggu balasan untuk melanjutkan eksekusi. Lihat Acara Remote dan Panggilan Kembali untuk contoh kode dan rincian lebih lanjut tentang
Pencegahan Berkualitas
Catat bahwa jika RemoteFunction yang diaktifkan di server
Keterbatasan Parameter
Setiap jenis objek Roblox seperti Enum , Instance , atau yang lainnya dapat diberikan sebagai parameter ketika RemoteFunction dianggil, serta jenis Luau seperti angka, string, dan booleans, meskipun Anda harus menjelajahi dengan hati-hati 1> batasan1> .
Rangkuman
Metode
Memanggil RemoteFunction yang kemudian memanggil OnClientInvoke panggilan kembali.
Memanggil RemoteFunction yang kemudian memanggil OnServerInvoke panggilan.
Callback
Properti
Metode
InvokeClient
Memanggil metode RemoteFunction yang kemudian memanggil panggilan OnClientInvoke. Karena metode ini digunakan untuk berkomunikasi dari server ke klien, itu hanya akan berfungsi ketika digunakan dalam Script .
Setiap jenis objek Roblox seperti Enum, Instance , atau yang lainnya dapat diberikan sebagai parameter ke Class.RemoteFunction:ExecuteClient()|ExecuteClient() , serta jenis Luau seperti nomor, string, dan booleans, meskipun Anda harus menjelajahi dengan hati-hati tentang 1> batasan1> .
Lihat Acara Remote dan Panggilan Kembali untuk sampel kode dan informasi lebih lanjut tentang RemoteFunction .
Peringatan
Dalam praktikum, server tidak sering memanggil klien, karena klien biasanya tidak memiliki informasi yang server tidak memiliki, dan tindakan yang hanya klien dapat mengambil, seperti menampilkan GUI, biasanya tidak memerlukan panggilan kembali. Karena itu, RemoteEvent:FireClient() direkomendasikan sebagai metode asinkron yang tidak perlu menunggu tang
Jika Anda benar-benar perlu mengunduh klien dari server, perhatikan risiko berikut:
- Jika klien menghasilkan kesalahan, server menghasilkan kesalahan juga.
- Jika klien terputus saat diaktifkan, InvokeClient() menghasilkan kesalahan.
- Jika klien tidak mengembalikan nilai, server menghasilkan selamanya.
Parameter
Class.Player yang terkait dengan klien untuk memanggil.
Nilai untuk dikirim ke OnClientInvoke panggilan.
Memberikan nilai
Nilai yang dikembalikan dari panggilan OnClientInvoke.
InvokeServer
Memanggil metode RemoteFunction yang kemudian memanggil panggilan OnServerInvoke. Karena metode ini digunakan untuk berkomunikasi dari klien ke server, itu hanya akan bekerja ketika digunakan dalam LocalScript .
Jika hasil yang dikembalikan tidak diperlukan, disarankan untuk menggunakan RemoteEvent:FireServer() alih-alih, karena panggilannya tidak asinkron dan tidak perlu menunggu balasan untuk melanjutkan eksekusi.
Setiap jenis objek Roblox seperti Enum, Instance , atau yang lainnya dapat diberikan sebagai parameter ke InvokeServer(), serta jenis Luau seperti nomor, string, dan booleans, meskipun Anda harus menjelajahi dengan hati-hati tentang 1> batasan
Lihat Acara Remote dan Panggilan Kembali untuk sampel kode dan informasi lebih lanjut tentang RemoteFunction .
Parameter
Nilai untuk dikirim ke OnServerInvoke panggilan.
Memberikan nilai
Nilai yang dikembalikan dari panggilan OnServerInvoke.