SpawnLocation
*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.
SpawnLocations, veya "spawns" ölümcülerinde bir Player respawn'ının nerede gerçekleşeceğini belirler. Onlar, Teams kullanılarak sadece belirli oyuncuların her yeniden doğuşunu izleyebilirler. Ayrıca, yeni oluşturulan oyuncular için Class.
SpawnLocations, engel kursları gibi, SpawnLocation.AllowTeamChangeOnTouch özelliğini kullanarak, bir oyuncunun dokunduğunda takım değiştirilecek şekilde, Team takımına değiştirilecektir. Bu durumda, ilk
Stüdyo'daki Workspace ile bir SpawnLocation.Neutral ile takılırsa, bir takım oluşturulur SpawnLocation.TeamColor if it does not already exist. Bu dav
Kurallar Oluşturuluyor
Bir oyuncu yeniden doğduğunda verilen bir SpawnLocation için birkaç kurallar vardır:
- Class.SpawnLocation.Neutral ters değil yalnızca Players ile Player.TeamColor eşleştirilmiş 1>Class.SpawnLocation.TeamColor1> üzerinde yeniden doğar
- Class.SpawnLocation.Neutral doğruysa, herhangi bir Oyuncu üzerinde SpawnLocation.TeamColor olarak herhangi bir şeyin üstünde oluşturabilir
- Eğer Player ile birden fazla uygun yer mevcutsa, rastgele birisi seçilir
- Oyuncular, bir SpawnLocation'ın üstünde farklı noktalarda oluşacak, ancak şu anda, birbirinden hemen sonra oluşabilirler
Ayrıca bakınız:
- Bir oyuncunun yeniden doğması için kaç saniye süreceğini yapılandırmak istiyorsanız, RespawnTime özelliğine bir göz atın
Kod Örnekleri
local Teams = game:GetService("Teams")
-- create start team (AutoAssignable = true)
local startTeam = Instance.new("Team")
startTeam.Name = "Start"
startTeam.AutoAssignable = true
startTeam.TeamColor = BrickColor.new("White")
startTeam.Parent = Teams
-- create checkpoint teams (Autoassignable = false), ensuring all TeamColors are unique
local team1 = Instance.new("Team")
team1.Name = "Checkpoint 1"
team1.AutoAssignable = false
team1.TeamColor = BrickColor.new("Bright blue")
team1.Parent = Teams
local team2 = Instance.new("Team")
team2.Name = "Checkpoint 2"
team2.AutoAssignable = false
team2.TeamColor = BrickColor.new("Bright green")
team2.Parent = Teams
local team3 = Instance.new("Team")
team3.Name = "Checkpoint 2"
team3.AutoAssignable = false
team3.TeamColor = BrickColor.new("Bright red")
team3.Parent = Teams
-- create spawns
local startSpawn = Instance.new("SpawnLocation")
startSpawn.Anchored = true
startSpawn.Size = Vector3.new(5, 1, 5)
startSpawn.Neutral = false
startSpawn.AllowTeamChangeOnTouch = false
startSpawn.TeamColor = startTeam.TeamColor
startSpawn.BrickColor = startTeam.TeamColor
startSpawn.Parent = game.Workspace
local team1Spawn = Instance.new("SpawnLocation")
team1Spawn.Anchored = true
team1Spawn.Size = Vector3.new(5, 1, 5)
team1Spawn.Neutral = false
team1Spawn.AllowTeamChangeOnTouch = true
team1Spawn.TeamColor = team1.TeamColor
team1Spawn.BrickColor = team1.TeamColor
team1Spawn.Parent = game.Workspace
local team2Spawn = Instance.new("SpawnLocation")
team2Spawn.Anchored = true
team2Spawn.Size = Vector3.new(5, 1, 5)
team2Spawn.Neutral = false
team2Spawn.AllowTeamChangeOnTouch = true
team2Spawn.TeamColor = team2.TeamColor
team2Spawn.BrickColor = team2.TeamColor
team2Spawn.Parent = game.Workspace
local team3Spawn = Instance.new("SpawnLocation")
team3Spawn.Anchored = true
team3Spawn.Size = Vector3.new(5, 1, 5)
team3Spawn.Neutral = false
team3Spawn.AllowTeamChangeOnTouch = true
team3Spawn.TeamColor = team3.TeamColor
team3Spawn.BrickColor = team3.TeamColor
team3Spawn.Parent = game.Workspace
-- position spawns
startSpawn.CFrame = CFrame.new(0, 0.5, 0)
team1Spawn.CFrame = CFrame.new(10, 0.5, 0)
team2Spawn.CFrame = CFrame.new(20, 0.5, 0)
team3Spawn.CFrame = CFrame.new(30, 0.5, 0)
Özet
Özellikler
Bir Player ın takıma katılmak için SpawnLocation ına dokunmasına izin verir. Açıkken, bir Player karakteri 1> Class.SpawnLocation.TeamColor1> ile temas ettiğinde, oy
Bu ForceField ile ilgili olan Player karakterinin oluşturulması için kullanılan zamanın uzunluğu, saniye olarak, bir SpawnLocation ile uygulanacak. Eğer Sü
Class.SpawnLocation ın etkinleştirilip etkinleştirilmez olup olmadığını ayarlar. SpawnLocation ın devre dışı bırakıldığında oyuncular oyun içinde oluşturulamaz ve AllowTeamChangeOnTouch işlevi devre dışı bırakıldığında oyun içinde oluşturulabilir.
Bir SpawnLocation ile ilgili olup olmadığını, bir Player veya herhangi bir Team ile ilgili olup olmadığını ifade eder. Bu, bu özellik açık olarak ayarlandığında herhangi bir 1> Class.Player1> veya herhangi bir 4> Class.Team4> ile ilgili olabilir.
Class.SpawnLocation ile ilgili takım kaydedilir. SpawnLocation.Neutral özelliği sahtaysa, sadece Players ile aynı 1>Class.Player.TeamColor1> değeriyle oluşturulabilir.
Nesnenin genel şeklini ayarlar.
Bir parçanın fiziksel olarak hareket edilemez olup olmadığını belirler.
Parçanın montajının açısal hızı.
Parça montajının dünya alanındaki parça merkezinde.
Parçanın montajının lineer hızı.
Parçanın montajının toplamı.
Kurbanın kök kısmına bir referans.
Bir parçanın arka yüzünün türünü belirler (+Z yönlendirmesi).
Bir parçanın alt yüzünün türünü belirler (-Y yönlendirimi).
Bir parçanın rengini belirler.
Dünyadaki BasePart 'in konumunu ve yönünü belirler.
Bir parçanın başka bir parçaya çarpışıp çarpışmayacağını belirler.
Parçanın yerel sorgu işlemlerinde dikkate alınıp alınmadığını belirler.
Parçanın Touched ve TouchEnded olaylarının parçada ne sıklıkta ateş edileceğini belirler.
Bir parçanın gölge oluşturup oluşturmadığını belirler.
Bir parçanın merkezindeki masa üzerindeki dünya konumunu açıklar.
Bir parçanın çarpışma grupadını açıklar.
Bir parçanın rengini belirler.
Parçanın mevcut fiziksel özelliklerini gösterir.
Bir parçanın birkaç fiziksel özelliğini belirler.
Parçalarda ve bileşenlerde havadan güçleri etkinleştirmek veya devre dışı bırakmak için kullanılır.
Class.BasePart 'in fiziksel varlıklarının BasePart kısmı.
Fiziksel boyutları BasePart fiziksel motoru tarafından dikkate alınan gerçek boyutu.
Bir parçanın Front yüzünün hangi tip bir yüzey olacağını belirler (-Z yönlendirimi).
Bir parçanın sol yüzünün türünü belirler (-X yönü).
Yalnızca yerel kliente görünür olan BasePart.Transparency ile ilgili bir çarpan belirleyin.
Bir parçanın Studio'da seçilebilir olup olmadığını belirler.
Parçanın miktarını, yoğunluğunun ve hacminin ürününü açıklar.
Parçanın kalıcı vücuttoplam masyana veya içine katkıda bulunduğunu belirler.
Bir parçanın tekstürünü ve varsayılan fiziksel özelliklerini belirler.
MaterialVariant ın adı.
Parçanın dünyadaki dönüşümünü açıklar.
Parçanın pivot'unun CFrame 'inden oluğunu belirtir.
Parçanın dünyadaki konumunu açıklar.
Son kaydedilen fiziksel güncellemeden bu yana kaydedilen süre.
Bir parçanın gökyüzü kutusunu ne kadar yansıttığını belirler.
Resize yöntemi tarafından izin verilen en küçük değişikliği açıklar.
Bir parçanın yeniden boyutlandırılabileceği yüzleri tanımlar.
Bir parçanın sağ yüzünün türünü belirler (+X yönü).
Bir montajın kök kısmını belirlemede asıl kural.
Parçanın üç eksen için derece olarak dönme.
Bir parçanın boyutlarını (genişlik, yükseklik) belirler.
Bir parçanın üst yüzünün türünü belirler (+Y yönü).
Bir parçanın görülebilirliğini (parça gizliliğinin tersi) belirler.
Yöntemler
Şuradan alınan Yöntemler: BasePartKuruluşa bir kuvvet uygula.
Kuruluşun center of mass kullanımına bir impuls uygula.
Belirli bir pozisyondaki montaja bir impuls uygula.
Parçaların birbirleriyle çarpışabileceğini veya çarpışmayabileceğini belirler.
Bir parçanın ağ sahibi olup olmadığını kontrol eder.
Nesneye herhangi bir türde katlanmış bir bağlantıyla bağlanmış bir parça tablosu döndürür.
Bu Parçaya bağlı olan tüm Ortakları veya Sınırları iade edin.
Class.BasePart.Mass|Mass özelliğinin değerini iade eder.
Bu bölgenin ağ sahibi olan mevcut oyuncuyu veya sunucunun durumunda nul'u döndürür.
Oyun motoru bu bölüm için ağ sahibini otomatik olarak belirlerse geri döner.
Bir parçanın temel kısmını bir montajın geri döndürür.
Bu parçayla etkileşim kuran tüm BasePart.CanCollide gerçek parçaların bir tablosunu içerir.
Bu bileşenin montajına ilişkin verilen pozisyondaki parçanın lineer hızını iade eder.
Eğer nesne yerini alacak bir paraya bağlanıyorsa (örneğin bir Anchored parçası) geri döndürür, aksi takdirde geri döndürmez.
Stüdyo boyutlandırma aracını kullanarak nesnenin boyutunu değiştirmenin aynısını yapar.
Bu ve tüm bağlantılı parçalar için verilen oyuncuyu ağ sahibi olarak ayarlar.
Oyun motoru, kimin fiziğini ele alacağını dinamik olarak karar vermesine izin verir (bir klien veya sunucu).
- IntersectAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Parçanın ve diğer parçaların çakışma geometrisinden yeni bir IntersectOperation oluşturur.
- SubtractAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Verilen matrisindeki parçaların geometrisinden düşük olarak yeni bir UnionOperation oluşturur.
- UnionAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Parçadan yeni bir UnionOperation oluşturur, plus birimde verilen matematiksel çizimin kaplandığı yer.
Bir PVInstance 'nin pivot'unu alır.
Tüm ataları ile birlikte PVInstance şeklini alır, böylece merkez noktası artık belirlenen PVInstances ile bulunur.
Etkinlikler
Şuradan alınan Etkinlikler: BasePartFiziksel hareketin sonucu olarak bir parçanın başka bir parçaya dokunmasını durdurur.
Fiziksel hareketin sonucu olarak bir parça başka bir parçaya dokunduğunda ateş eder.
Özellikler
AllowTeamChangeOnTouch
Bir Player ile takımına katılmak için SpawnLocation 'a dokun
Class.SpawnLocation.Enabled değeri false olarak ayarlandığında bunu işlemek için işlev etmez.
Kontrol Noktaları Oluşturulması
Bu özellik genellikle engel kursları veya benzer oyunların kontrol noktalarını oluşturmak için kullanılır.
Kod Örnekleri
local Teams = game:GetService("Teams")
-- create start team (AutoAssignable = true)
local startTeam = Instance.new("Team")
startTeam.Name = "Start"
startTeam.AutoAssignable = true
startTeam.TeamColor = BrickColor.new("White")
startTeam.Parent = Teams
-- create checkpoint teams (Autoassignable = false), ensuring all TeamColors are unique
local team1 = Instance.new("Team")
team1.Name = "Checkpoint 1"
team1.AutoAssignable = false
team1.TeamColor = BrickColor.new("Bright blue")
team1.Parent = Teams
local team2 = Instance.new("Team")
team2.Name = "Checkpoint 2"
team2.AutoAssignable = false
team2.TeamColor = BrickColor.new("Bright green")
team2.Parent = Teams
local team3 = Instance.new("Team")
team3.Name = "Checkpoint 2"
team3.AutoAssignable = false
team3.TeamColor = BrickColor.new("Bright red")
team3.Parent = Teams
-- create spawns
local startSpawn = Instance.new("SpawnLocation")
startSpawn.Anchored = true
startSpawn.Size = Vector3.new(5, 1, 5)
startSpawn.Neutral = false
startSpawn.AllowTeamChangeOnTouch = false
startSpawn.TeamColor = startTeam.TeamColor
startSpawn.BrickColor = startTeam.TeamColor
startSpawn.Parent = game.Workspace
local team1Spawn = Instance.new("SpawnLocation")
team1Spawn.Anchored = true
team1Spawn.Size = Vector3.new(5, 1, 5)
team1Spawn.Neutral = false
team1Spawn.AllowTeamChangeOnTouch = true
team1Spawn.TeamColor = team1.TeamColor
team1Spawn.BrickColor = team1.TeamColor
team1Spawn.Parent = game.Workspace
local team2Spawn = Instance.new("SpawnLocation")
team2Spawn.Anchored = true
team2Spawn.Size = Vector3.new(5, 1, 5)
team2Spawn.Neutral = false
team2Spawn.AllowTeamChangeOnTouch = true
team2Spawn.TeamColor = team2.TeamColor
team2Spawn.BrickColor = team2.TeamColor
team2Spawn.Parent = game.Workspace
local team3Spawn = Instance.new("SpawnLocation")
team3Spawn.Anchored = true
team3Spawn.Size = Vector3.new(5, 1, 5)
team3Spawn.Neutral = false
team3Spawn.AllowTeamChangeOnTouch = true
team3Spawn.TeamColor = team3.TeamColor
team3Spawn.BrickColor = team3.TeamColor
team3Spawn.Parent = game.Workspace
-- position spawns
startSpawn.CFrame = CFrame.new(0, 0.5, 0)
team1Spawn.CFrame = CFrame.new(10, 0.5, 0)
team2Spawn.CFrame = CFrame.new(20, 0.5, 0)
team3Spawn.CFrame = CFrame.new(30, 0.5, 0)
Duration
Bu ForceField ile ilgili olan Player karakterinin oluşturulması için kullanılan zamanın uzunluğu, saniye olarak, bir SpawnLocation ile uygulanacak. Eğer Sü
Bu özelliğin varsayılan değeri 10 saniye'dir.
Yaşama koruması, oyuncular için bir yıkıcı deneyim olabilir. Not, Players sadece oyuncuları ForceFields veya silah kullanıyor olup olmadığını <
Kod Örnekleri
local spawnLocation = Instance.new("SpawnLocation")
spawnLocation.Anchored = true
spawnLocation.Size = Vector3.new(5, 1, 5)
spawnLocation.Neutral = true -- anyone can spawn here
spawnLocation.Duration = 20
spawnLocation.Parent = workspace
Enabled
Class.SpawnLocation 'in etkinleştirilip etkinleştirilmeyeceğini ayarlar. SpawnLocation ve SpawnLocation.AllowTeamChangeOnTouch işlevselliği devre dışı bırakıldığında oyuncular oluşturulmaz.
Bu özellik, Players 'in bir oluşturma noktasında ortaya çıkmasını önlemenin en kolay yolunu sağlar.
Not, SpawnLocation.AllowTeamChangeOnTouch kullanılarak takım değiştirmeyi kullanırken, BasePart.Touched kullanılarak diğer dokunmatik etkinlikleri hala çalıştırır.
Kod Örnekleri
local spawnLocation = Instance.new("SpawnLocation")
spawnLocation.Anchored = true
spawnLocation.Size = Vector3.new(5, 1, 5)
spawnLocation.Neutral = true -- anyone can spawn here
spawnLocation.Enabled = true
spawnLocation.Parent = workspace
local function onEnabledChanged()
spawnLocation.Transparency = spawnLocation.Enabled and 0 or 0.5
end
spawnLocation:GetPropertyChangedSignal("Enabled"):Connect(onEnabledChanged)
task.wait(5)
spawnLocation.Enabled = false -- transparency = 0.5
Neutral
Bir oluşturma belirli bir takımla bağlantılı mı yoksa bağlantılı değil. Bu, bu özellik Player , herhangi bir Team ile ilgili olup olmadığını ifade eder.
Eğer Neutral "yanlış" olarak ayarlandıysa, sadece Class.Player.TeamColor``Class.SpawnLocation.TeamColor ile eşit olan oyuncular SpawnLocation kullanabilir.
Eğer SpawnLocation.AllowTeamChangeOnTouch doğruysa Player.Neutral bu özellik kullanıcının yakınındaki bir nesneye kaydedilir.
Kod Örnekleri
local Teams = game:GetService("Teams")
-- create start team (AutoAssignable = true)
local startTeam = Instance.new("Team")
startTeam.Name = "Start"
startTeam.AutoAssignable = true
startTeam.TeamColor = BrickColor.new("White")
startTeam.Parent = Teams
-- create checkpoint teams (Autoassignable = false), ensuring all TeamColors are unique
local team1 = Instance.new("Team")
team1.Name = "Checkpoint 1"
team1.AutoAssignable = false
team1.TeamColor = BrickColor.new("Bright blue")
team1.Parent = Teams
local team2 = Instance.new("Team")
team2.Name = "Checkpoint 2"
team2.AutoAssignable = false
team2.TeamColor = BrickColor.new("Bright green")
team2.Parent = Teams
local team3 = Instance.new("Team")
team3.Name = "Checkpoint 2"
team3.AutoAssignable = false
team3.TeamColor = BrickColor.new("Bright red")
team3.Parent = Teams
-- create spawns
local startSpawn = Instance.new("SpawnLocation")
startSpawn.Anchored = true
startSpawn.Size = Vector3.new(5, 1, 5)
startSpawn.Neutral = false
startSpawn.AllowTeamChangeOnTouch = false
startSpawn.TeamColor = startTeam.TeamColor
startSpawn.BrickColor = startTeam.TeamColor
startSpawn.Parent = game.Workspace
local team1Spawn = Instance.new("SpawnLocation")
team1Spawn.Anchored = true
team1Spawn.Size = Vector3.new(5, 1, 5)
team1Spawn.Neutral = false
team1Spawn.AllowTeamChangeOnTouch = true
team1Spawn.TeamColor = team1.TeamColor
team1Spawn.BrickColor = team1.TeamColor
team1Spawn.Parent = game.Workspace
local team2Spawn = Instance.new("SpawnLocation")
team2Spawn.Anchored = true
team2Spawn.Size = Vector3.new(5, 1, 5)
team2Spawn.Neutral = false
team2Spawn.AllowTeamChangeOnTouch = true
team2Spawn.TeamColor = team2.TeamColor
team2Spawn.BrickColor = team2.TeamColor
team2Spawn.Parent = game.Workspace
local team3Spawn = Instance.new("SpawnLocation")
team3Spawn.Anchored = true
team3Spawn.Size = Vector3.new(5, 1, 5)
team3Spawn.Neutral = false
team3Spawn.AllowTeamChangeOnTouch = true
team3Spawn.TeamColor = team3.TeamColor
team3Spawn.BrickColor = team3.TeamColor
team3Spawn.Parent = game.Workspace
-- position spawns
startSpawn.CFrame = CFrame.new(0, 0.5, 0)
team1Spawn.CFrame = CFrame.new(10, 0.5, 0)
team2Spawn.CFrame = CFrame.new(20, 0.5, 0)
team3Spawn.CFrame = CFrame.new(30, 0.5, 0)
TeamColor
TakımRenkleri özelliği, SpawnLocation ile ilgili takımın üyesi olduğunu belirtir. Eğer SpawnLocation.Neutral özelliği sahteysa, aynı Players ile kaydolmuş takım sadece o kaydolma noktasında o
Eğer SpawnLocation.AllowTeamChangeOnTouch doğruysa Player.Neutral bu özellik kullanıcının yakınındaki bir nesneye kaydedilir.
Kod Örnekleri
local Teams = game:GetService("Teams")
-- create start team (AutoAssignable = true)
local startTeam = Instance.new("Team")
startTeam.Name = "Start"
startTeam.AutoAssignable = true
startTeam.TeamColor = BrickColor.new("White")
startTeam.Parent = Teams
-- create checkpoint teams (Autoassignable = false), ensuring all TeamColors are unique
local team1 = Instance.new("Team")
team1.Name = "Checkpoint 1"
team1.AutoAssignable = false
team1.TeamColor = BrickColor.new("Bright blue")
team1.Parent = Teams
local team2 = Instance.new("Team")
team2.Name = "Checkpoint 2"
team2.AutoAssignable = false
team2.TeamColor = BrickColor.new("Bright green")
team2.Parent = Teams
local team3 = Instance.new("Team")
team3.Name = "Checkpoint 2"
team3.AutoAssignable = false
team3.TeamColor = BrickColor.new("Bright red")
team3.Parent = Teams
-- create spawns
local startSpawn = Instance.new("SpawnLocation")
startSpawn.Anchored = true
startSpawn.Size = Vector3.new(5, 1, 5)
startSpawn.Neutral = false
startSpawn.AllowTeamChangeOnTouch = false
startSpawn.TeamColor = startTeam.TeamColor
startSpawn.BrickColor = startTeam.TeamColor
startSpawn.Parent = game.Workspace
local team1Spawn = Instance.new("SpawnLocation")
team1Spawn.Anchored = true
team1Spawn.Size = Vector3.new(5, 1, 5)
team1Spawn.Neutral = false
team1Spawn.AllowTeamChangeOnTouch = true
team1Spawn.TeamColor = team1.TeamColor
team1Spawn.BrickColor = team1.TeamColor
team1Spawn.Parent = game.Workspace
local team2Spawn = Instance.new("SpawnLocation")
team2Spawn.Anchored = true
team2Spawn.Size = Vector3.new(5, 1, 5)
team2Spawn.Neutral = false
team2Spawn.AllowTeamChangeOnTouch = true
team2Spawn.TeamColor = team2.TeamColor
team2Spawn.BrickColor = team2.TeamColor
team2Spawn.Parent = game.Workspace
local team3Spawn = Instance.new("SpawnLocation")
team3Spawn.Anchored = true
team3Spawn.Size = Vector3.new(5, 1, 5)
team3Spawn.Neutral = false
team3Spawn.AllowTeamChangeOnTouch = true
team3Spawn.TeamColor = team3.TeamColor
team3Spawn.BrickColor = team3.TeamColor
team3Spawn.Parent = game.Workspace
-- position spawns
startSpawn.CFrame = CFrame.new(0, 0.5, 0)
team1Spawn.CFrame = CFrame.new(10, 0.5, 0)
team2Spawn.CFrame = CFrame.new(20, 0.5, 0)
team3Spawn.CFrame = CFrame.new(30, 0.5, 0)