Avatar Bağlam Menüsü

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Avatar Bağlam Menüsü (ACM) kullanıcıların birbirleriyle etkileşimde bulunmalarını kolaylaştırır. ACM oyununuzda etkinleştirildiğinde, bir kullanıcı başka bir kullanıcının karakterinin yanına gidebilir ve onlara tıklayarak birkaç varsayılan seçenekle birlikte küçük bir menü açabilir. Oyuncu bir arkadaşlık isteği gönderebilir, özel bir sohbete başlayabilir, kullanıcının profilini görüntüleyebilir veya el sallayabilir.

ACM'yi oyununuzda etkinleştirdikten sonra, ACM'yi aşağıdaki şekilde özelleştirebilirsiniz:

Avatar Bağlam Menüsünü Etkinleştir

Avatar Bağlam Menüsü, bir LocalScript içinde StarterGui:SetCore() seçeneği "AvatarContextMenuEnabled" kullanılarak etkinleştirilmelidir. ACM, diğer kullanıcılara tıklama için önceden tanımlanmış bir davranışın olmadığı oyunlarda en iyi şekilde kullanılır.

Aşağıdaki kod örneğini kullanarak ACM'yi bir LocalScript içinde etkinleştirin:


-- LocalScript içinde çalıştırın, tercihen "StarterPlayerScripts" içinde
local StarterGui = game:GetService("StarterGui")
StarterGui:SetCore("AvatarContextMenuEnabled", true)

ACM'nin etkin olup olmadığını tespit etmeniz gerekiyorsa, ACM'nin mevcut durumu hakkında bir boolean döndüren aşağıdaki kodu kullanabilirsiniz:


---ACM'nin şu anda etkin olup olmadığını belirten bir boolean döndürür.
StarterGui:GetCore(AvatarContextMenuEnabled)

ACM'yi Açma ve Kapatma

Etkin hale getirildikten sonra, ACM'yi programlı olarak StarterGui ile açıp kapatabilirsiniz.

ACM'yi programlı olarak açmak için aşağıdaki kodu kullanın:


-- TargetPlayer geçerli bir Player nesnesi olmalıdır
StarterGui:SetCore("AvatarContextMenuTarget", targetPlayer)

ACM'yi programlı olarak kapatmak için aşağıdaki kodu kullanın:


StarterGui:SetCore("AvatarContextMenuTarget", nil)

Menü Seçenekleri

Scripting aracılığıyla ekleme ve kaldırma işlemleri gerçekleştirebilirsiniz. Varsayılan olarak menüdeki seçenekler şunlardır:

Menü SeçeneğiAçıklama
ArkadaşSeçilen kullanıcıya bir arkadaşlık isteği gönderir.
SohbetSeçilen kullanıcıyla oyundaki sohbet içinde özel bir konuşma açar.
GörüntüleSeçilen kullanıcının görünümünü incelemek için bir pencere açar.
El SallaSeçilen kullanıcıya bir el sallama animasyonu başlatır.

ACM açıldığında, kullanıcı karakter seçim karuseli üzerinde diğer kullanıcıları kaydırıp seçebilir. Karakterler, seçilen karakterle olan uzaklığa göre sıralanır. Menü yalnızca açıldığında güncellenir ve mevcut kullanıcıların listesi kaydırıldığında tekrarlanır.

Menü Seçenekleri Ekleme

Etkin hale getirildikten sonra, oyuna özgü eylemler ACM'ye eklenebilir. Örneğin, bir oyun ticaret isteklerine, partilere ekleme seçeneklerine veya diğer özel etkileşimlere izin verebilir.

Aşağıdaki örnek, Avatar Bağlam Menüsüne özel bir eylemi nasıl ekleyeceğinizi gösterir:


local Players = game:GetService("Players")
local StarterGui = game:GetService("StarterGui")
local player = Players.LocalPlayer
-- Bir "BindableEvent" ile bir işlev bağlayın
local bindableEvent = Instance.new("BindableEvent")
local function onCustomACMAction(targetPlayer)
-- Bu noktada, sunucuya seçimin bildirimi için InvokeServer() çağrısı yapabilirsiniz
print("ACM olayı " .. player.Name .. " tarafından " .. targetPlayer.Name + " seçildi.")
end
bindableEvent.Event:Connect(onCustomACMAction)
-- "AddAvatarContextMenuOption" ile SetCore() kullanarak ACM seçeneğini ekleyin
local options = {"Özel ACM Eylemi", bindableEvent}
StarterGui:SetCore("AddAvatarContextMenuOption", options)

Menü Seçenekleri Kaldırma

Özel ve varsayılan Arkadaşlık, Sohbet, Görüntüle ve El Salla seçeneklerini, özel Eylem adını veya varsayılan Enum.AvatarContextMenuOption enumunu referans alarak kaldırabilirsiniz.

Bir varsayılan ve özel menü seçeneğini kaldırmak için aşağıdaki kodu kullanın:


-- "Özel ACM Eylemi" seçeneğini kaldır
StarterGui:SetCore("RemoveAvatarContextMenuOption", "Özel ACM Eylemi")
-- AvatarContextMenuOption.Friend Enum'una referans vererek varsayılan "Arkadaş" seçeneğini kaldır
StarterGui:SetCore("RemoveAvatarContextMenuOption", Enum.AvatarContextMenuOption.Friend)

Menü Görünümünü Özelleştirme

Avatar Bağlam Menüsünün görünümünü değiştirmek için StarterGui:SetCore()'yu "AvatarContextMenuTheme" seçeneği ile çağırarak menü görünümünü ayarlamak için bir parametreler ve değerler tablosu sağlayın.

ACM kullanıcı arayüzü aşağıdaki bölümleri içerir:

A. İsim Etiketi: Etkileşimde bulunulan karakterin kullanıcı adı.

B. Buton Çerçevesi: Tüm ACM butonlarını içerir.

C. Butonlar: Varsayılan veya özel ACM eylemleri için bireysel butonlar.

Görünüm Parametreleri

ACM ile ilgili özelleştirme parametreleri şunlardır:

Arka Plan

BackgroundColorACM'nin genel arka planı için bir Color3 (arka plan resmi kullanmadığınızda en faydalı olanıdır).
BackgroundTransparencyACM'nin genel arka planı için şeffaflık değeri (0–1) (arka plan resmi kullanmadığınızda en faydalı olanıdır).
BackgroundImageACM arka planı için geçerli bir varlık kimliği.
BackgroundImageTransparencyArka plan resmi için şeffaflık değeri (0–1).
BackgroundImageScaleTypeArka plan resmi ölçeklendirme için bir Enum.ScaleType enumu.
BackgroundImageSliceCenterBackgroundImageScaleType Enum.ScaleType.Slice olarak ayarlandığında dokuz dilimli bir görüntünün merkezini belirten bir Rect.

İsim etiketi

NameTagColorEtkileşimde bulunulan oyuncunun gösterildiği çubuk için bir Color3.
NameUnderlineColorİsim etiketi ile eylem butonları arasındaki ince çizgi için bir Color3.

Buton çerçevesi

ButtonFrameColorEylem butonlarını içeren bölüm (çerçeve) için bir Color3.
ButtonFrameTransparency Buton çerçevesi bölümü için şeffaflık değeri (0–1).

Buton

ButtonColorACM eylem butonlarının arka planı için bir Color3.
ButtonTransparencyEylem butonlarının arka plan rengi için şeffaflık değeri (0–1).
ButtonHoverColorEylem butonlarının "hover" durumu için bir Color3.
ButtonHoverTransparencyEylem butonlarının "hover" rengi için şeffaflık değeri (0–1).
ButtonUnderlineColorHer bir eylem butonunu ayıran ince çizgi için bir Color3.
ButtonImageButonların arka planı için geçerli bir varlık kimliği.
ButtonImageScaleTypeButon görüntüsü ölçeklendirmesi için bir Enum.ScaleType enumu.
ButtonImageSliceCenterButtonImageScaleType Enum.ScaleType.Slice olarak ayarlandığında dokuz dilimli bir görüntünün merkezini belirten bir Rect.

Metin

Fontİsim etiketi ve buton metni için bir Enum.Font enum değeri.
TextColorACM içindeki tüm metinler için bir Color3.
TextScaleHer bir öğenin varsayılan metin boyutlarını ölçeklendirmek için bir float değeri.

Çeşitli resimler

LeaveMenuImageACM kapatma butonu için bir varlık kimliği.
ScrollLeftImageKaruseldeki "sola kaydır" butonu için bir varlık kimliği.
ScrollRightImageKaruseldeki "sağa kaydır" butonu için geçerli bir varlık kimliği.

Seçilen karakter

SelectedCharacterIndicatorSeçili olduklarını göstermek için bir karakterin başının üzerinde yüzen MeshPart.

Boyut ve Konum

SizeACM'nin genel boyutu için bir UDim2.
MinSizeACM'nin minimum boyutunu belirten bir Vector2.
MaxSizeACM'nin maksimum boyutunu belirten bir Vector2.
AspectRatioACM'nin oranını belirten bir float değeri.
AnchorPointACM'nin AnchorPoint'u.
OnScreenPositionAçıldığında animasyonun gerçekleşeceği ACM'nin ekrandaki konumunu belirten bir UDim2.
OffScreenPositionAçıldığında/kapatıldığında animasyonun gerçekleşeceği ACM'nin ekrandan dışarıdaki konumunu belirten bir UDim2.

Özelleştirme Örneği

Aşağıdaki kod örneği, bazı temel parametreleri kullanarak ACM temasını özelleştirir:


local StarterGui = game:GetService("StarterGui")
StarterGui:SetCore("AvatarContextMenuTheme", {
BackgroundImage = "",
BackgroundTransparency = 0.5,
BackgroundColor = Color3.fromRGB(111, 145, 242),
NameTagColor = Color3.fromRGB(0, 0, 200),
NameUnderlineColor = Color3.fromRGB(213, 233, 255),
ButtonFrameColor = Color3.fromRGB(15, 24, 65),
ButtonFrameTransparency = 0.2,
ButtonUnderlineColor = Color3.fromRGB(213, 233, 255),
Font = Enum.Font.SciFi
})
©2026 Roblox Corporation. Roblox, the Roblox logo and Powering Imagination are among our registered and unregistered trademarks in the U.S. and other countries.