Pelacak Teman

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

Menemukan teman dalam pengalaman bisa jadi menantang. Modul FriendsLocator modul pengembang memungkinkan pemain dengan mudah menemukan dan teleportasi ke teman-teman mereka di dalam suatu lokasi.

Penggunaan Modul

Instalasi

Untuk menggunakan modul FriendsLocator dalam sebuah pengalaman:

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

  2. Pastikan penyortiran Models dipilih, kemudian klik tombol See All untuk Categories.

  3. Temukan dan klik ubin Packages.

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

  5. Di jendela Explorer, pindahkan seluruh model FriendsLocator ke ReplicatedStorage. Setelah menjalankan pengalaman, 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 permainan 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 dalam lokasi yang diterbitkan.

    LocalScript - ConfigureFriendsLocator

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

    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 seharusnya melihat ikon pelacak muncul di atas kepala karakter tersebut.

Koneksikan ke acara

Modul FriendsLocator mengekspos acara sehingga Anda dapat memperkenalkan perilaku kustom saat 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 dalam 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/diusap
    })
    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 dengan pengalaman Anda, Anda dapat mengganti UI potret avatar default dengan UI Anda sendiri.

Untuk mengganti UI default:

  1. Buat instance ScreenGui baru di dalam wadah StarterGui.

  2. Buat instance Frame dengan nama FriendLocator sebagai anak dari ScreenGui baru, kemudian tambahkan elemen seperti ImageLabels, TextLabels untuk merancang UI kustom Anda.

  3. Setelah selesai, nonaktifkan ScreenGui induk agar modul tidak menunjukkan UI pelacak kustom sampai diperlukan.

  4. (Opsional) Jika Anda ingin potret avatar teman dan DisplayName muncul di suatu tempat di 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 semuanya, 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 saat ikon pelacak mereka diklik atau diusap.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 satu waktu.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/diactifkan oleh pemain lokal. Acara ini hanya dapat dihubungkan dalam LocalScript.

Parameter
player: PlayerPemain yang memiliki ikon pelacak.
playerCFrame: CFrameCFrame dari Humanoid.RootPart pemain yang memiliki 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/tersembunyi di layar pemain lokal. Acara ini hanya dapat dihubungkan dalam LocalScript.

Parameter
player: PlayerObjek Player yang memiliki ikon pelacak.
playerCFrame: CFrameCFrame dari Humanoid.RootPart pemain yang memiliki ikon pelacak.
isVisible: booleanApakah ikon pelacak saat ini terlihat di layar pemain lokal. Perhatikan bahwa ini tetap akan 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.