Pelacak Teman

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Mencari teman dalam permainan bisa menjadi tantangan. Modul FriendsLocator pengembang memungkinkan pemain dengan mudah menemukan dan teleportasi ke teman mereka di dalam sebuah tempat.

Penggunaan modul

Instalasi

Untuk menggunakan modul FriendsLocator dalam sebuah permainan:

  1. Dari menu Window di Studio atau toolbar tab Home, buka Toolbox dan pilih tab Creator Store.

  2. Pastikan pengurutan Models dipilih, lalu klik tombol See All untuk Categories.

  3. Temukan dan klik ubin Packages.

  4. Temukan modul Friends Locator dan klik, atau seret dan jatuhkan ke dalam tampilan 3D.

  5. Di jendela Explorer, pindahkan seluruh model FriendsLocator ke dalam ReplicatedStorage. Setelah menjalankan permainan, modul akan mulai berjalan.

Uji di Studio

Untuk menguji modul di Studio, modul FriendsLocator harus dijalankan dalam simulasi multi-klien, karena tidak ada teman yang akan hadir dalam pengujian bermain solo.

  1. Di StarterPlayerScripts, buat LocalScript baru dan ganti namanya menjadi ConfigureFriendsLocator.

  2. Tempelkan kode berikut ke dalam skrip ConfigureFriendsLocator yang baru. Pengaturan showAllPlayers dalam fungsi configure memastikan bahwa pelacak ditampilkan untuk semua pengguna saat menguji di Studio, tetapi tidak di tempat yang dipublikasikan.

    LocalScript - ConfigureFriendsLocator
    local RunService = game:GetService("RunService")
    local ReplicatedStorage = game:GetService("ReplicatedStorage")
    local FriendsLocator = require(ReplicatedStorage.FriendsLocator)
    FriendsLocator.configure({
    showAllPlayers = RunService:IsStudio(), -- Memungkinkan untuk debugging di Studio
    })
  3. Dari mezzanine Studio, mulai simulasi multi-klien dengan 2 klien. Tiga instance baru Studio akan terbuka; satu server yang disimulasikan dan dua klien yang disimulasikan.

    Opsi Server & Clients dalam dropdown mode pengujian mezzanine Studio.
  4. Masuk ke salah satu instance client Studio, bergerak sejauh 100 stud dari karakter lainnya, dan Anda akan melihat ikon pelacak muncul di atas kepalanya.

Hubungkan ke acara

Modul FriendsLocator mengekspos acara sehingga Anda dapat memperkenalkan perilaku kustom ketika pengguna berinteraksi dengan ikon pelacak.

  1. Pastikan Anda telah membuat skrip ConfigureFriendsLocator yang dijelaskan dalam pengujian di Studio.

  2. Tambahkan baris 8 dan 11-13 ke skrip:

    LocalScript - ConfigureFriendsLocator
    local RunService = game:GetService("RunService")
    local ReplicatedStorage = game:GetService("ReplicatedStorage")
    local FriendsLocator = require(ReplicatedStorage.FriendsLocator)
    FriendsLocator.configure({
    showAllPlayers = RunService:IsStudio(), -- Memungkinkan untuk debugging di Studio
    teleportToFriend = false, -- Mencegah teleportasi saat ikon diklik/ditekan
    })
    FriendsLocator.clicked:Connect(function(player, playerCFrame)
    print("Anda mengklik ikon pelacak untuk", player.DisplayName)
    end)
  3. Lakukan uji multi-klien dan klik ikon pelacak karakter lain. Perhatikan bahwa karakter Anda tidak teleportasi ke lokasi tersebut, dan acara dipicu untuk memungkinkan penanganan kustom klik ikon.

UI pelacak kustom

Jika gaya default tidak cocok untuk permainan Anda, Anda dapat mengganti UI potret avatar default dengan UI Anda sendiri.

Untuk mengganti UI default:

  1. Buat instance ScreenGui baru di dalam kontainer StarterGui.

  2. Buat instance Frame bernama FriendLocator sebagai anak dari ScreenGui yang baru, lalu tambahkan elemen seperti ImageLabels, TextLabels untuk merancang UI kustom Anda.

  3. Setelah selesai, nonaktifkan ScreenGui induk sehingga modul tidak menampilkan UI pelacak kustom sampai diperlukan.

  4. OPTIONAL
    Jika Anda ingin potret avatar teman dan DisplayName muncul di suatu tempat dalam UI kustom, Anda dapat menempatkan instance berikut di dalam frame FriendLocator.

    Modul akan mencari item-item ini dan menampilkan potret avatar teman dan/atau nama tampilan masing-masing.

Referensi API

Fungsi

configure

configure(config: table)

Mengganti opsi konfigurasi default melalui kunci/nilai berikut dalam tabel config.

KunciDeskripsiDefault
alwaysOnTopJika true, menampilkan ikon pelacak di atas segalanya, mencegahnya terhalang oleh objek dunia 3D.true
showAllPlayersJika true, menampilkan lokasi untuk semua pemain, tidak hanya teman; ini dapat membantu memverifikasi fungsionalitas modul di Studio.false
teleportToFriendTeleportasi karakter pemain ke lokasi teman ketika ikon pelacak mereka diklik atau ditekan.true
thresholdDistanceAmbang jarak kamera di mana ikon pelacak muncul; teman yang lebih dekat dari jarak ini tidak akan menampilkan ikon.100
maxLocatorsJumlah maksimum ikon pelacak yang ditampilkan pada waktu tertentu.10
LocalScript - ConfigureFriendsLocator
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local FriendsLocator = require(ReplicatedStorage.FriendsLocator)
FriendsLocator.configure({
alwaysOnTop = true,
showAllPlayers = false,
teleportToFriend = true,
thresholdDistance = 100,
maxLocators = 10
})

Acara

clicked

Dipicu ketika ikon pelacak diklik/diaktifkan oleh pemain lokal. Acara ini hanya dapat dihubungkan dalam LocalScript.

Parameter
player: PlayerPemain yang menjadi milik ikon pelacak.
playerCFrame: CFrameCFrame dari Humanoid.RootPart pemain yang menjadi milik ikon pelacak.
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Players = game:GetService("Players")
local Workspace = game:GetService("Workspace")
local FriendsLocator = require(ReplicatedStorage.FriendsLocator)
local localPlayer = Players.LocalPlayer
FriendsLocator.clicked:Connect(function(player, playerCFrame)
-- Meminta streaming di sekitar lokasi target
if Workspace.StreamingEnabled then
local success, errorMessage = pcall(function()
localPlayer:RequestStreamAroundAsync(playerCFrame.Position)
end)
if not success then
print(errorMessage)
end
end
print("Anda mengklik ikon pelacak untuk", player.DisplayName, "di posisi", playerCFrame.Position)
end)

visibilityChanged

Dipicu ketika ikon pelacak ditampilkan/disembunyikan di layar pemain lokal. Acara ini hanya dapat dihubungkan dalam LocalScript.

Parameter
player: PlayerObjek Player yang menjadi milik ikon pelacak.
playerCFrame: CFrameCFrame dari Humanoid.RootPart pemain yang menjadi milik ikon pelacak.
isVisible: booleanApakah ikon pelacak saat ini terlihat di layar pemain lokal. Perhatikan bahwa ini akan tetap true jika alwaysOnTop adalah false dan pelacak dirender di belakang objek di dunia 3D.
LocalScript
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local FriendsLocator = require(ReplicatedStorage.FriendsLocator)
FriendsLocator.visibilityChanged:Connect(function(player, playerCFrame, isVisible)
print("Visibilitas ikon pelacak untuk", player.DisplayName, ":", isVisible)
end)
©2026 Roblox Corporation. Roblox, logo Roblox, dan Powering Imagination termasuk dalam merek dagang kami yang terdaftar dan tidak terdaftar di AS dan negara lainnya.