SpawnLocation
*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.
Các vị trí đẻ trứng, hoặc "đẻ trứng" xác định nơi mà một Player đẻ trứng khi chúng chết. Họ có thể được cấu hình để cho phép chỉ một số người chơi sử dụng mỗi đẻ trứng, bằng cách s
Định vị SpawnLocations có thể được sử dụng như là checkpoints, ví dụ như trong một khóa hành trình, bằng cách sử dụng thuộc tính SpawnLocation.AllowTeamChangeOnTouch , để khi một người chạm vào nó, họ
Lưu ý nếu một SpawnLocation được thêm vào Workspace trong Studio với SpawnLocation.Neutral đặt là false một Team sẽ được tạo tương ứng v
Tạo Các Quy Tắc
Có một số quy tắc được áp dụng cho một SpawnLocation nhất định khi một người chơi respawn:
- Khi SpawnLocation.Neutral được đặt thành false chỉ Players với Player.TeamColor khớp ứng 1> Class.SpawnLocation.TeamColor1> sẽ xuất hiện trên nó
- Khi SpawnLocation.Neutral được đặt thành true bất kỳ người chơi nào cũng có thể xuất hiện trên nó mà không bị ảnh hưởng bởi SpawnLocation.TeamColor
- Nếu nhiều người dẫn đẻ đủ điều kiện có sẵn cho một Player, một người dẫn đẻ ngẫu nhiên sẽ được chọn
- Người chơi sẽ xuất hiện ở các điểm khác nhau trên một SpawnLocation, nhưng hiện tại, chúng vẫn có thể xuất hiện ở trên nhau nếu chúng xuất hiện ngay sau nhau
Xem thêm:
- Nếu bạn muốn tùy chỉnh thời gian để một người chơi respawn, hãy xem tính năng RespawnTime
Mẫu mã
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)
Tóm Tắt
Thuộc Tính
Cho phép một Player tham gia vào đội bằng cách chạm vào SpawnLocation . Khi đặt để true, nếu một Player nhân vật đến với
Sự dài của thời gian, trong giây, mà một ForceField sẽ được áp dụng cho một nhân vật Player đang sinh sản tại đây Class.SpawnLocation</
Đặt whether or not the SpawnLocation is enabled. When disabled players cannot spawn at the SpawnLocation and the AllowTeamChangeOnTouch functionality is disabled.
Dù có phải là một SpawnLocation hay không thuộc về một đội cụ thể. Điều này có nghĩa là bất kỳ Player nào, của bất kỳ đội nào, có thể xuất hiện trên nó nếu đặt thuộc tính này thành true.
Đặt nhóm mà SpawnLocation đại diện. Nếu SpawnLocation.Neutral thuộc tính là sai, chỉ có Players với cùng một 1> Class.Player.TeamColor1> như màu của nhóm spawn để có thể spawn ở đó
Định hình hình dạng chung của đối tượng.
Xác định có phải một bộ phận là vật rắn bởi vật lý hay không.
Tốc độ góc của hệ thống tập hợp phần.
Trung tâm của hàng loạt của bộ phận trong không gian thế giới.
Tốc độ truyền thẳng của hộp số.
Tổng trọng lượng của hàng tập họp.
Một tham chiếu đến phần chính của hệ thống.
Xác định loại bề mặt cho mặt sau của một bộ phận (+Z hướng).
Xác định loại bề mặt cho mặt dưới của một bộ phận (-Y hướng).
Xác định màu của một bộ phận.
Xác định vị trí và hướng tây của BasePart trên thế giới.
Xác định có phải vật nào có thể va chạm với nhau.
Xác định có phải xử lý phần nào trong các hành động truy vấn không gian.
Xác định nếu sự kiện Touched và TouchEnded xảy ra trên bộ phận.
Xác định có hay không một bộ phận tạo ra bóng tối.
Mô tả vị trí trên thế giới mà trung tâm hồi quang của một bộ phận được đặt.
Mô tả tên của một nhóm va chạm của một phần.
Xác định màu của một bộ phận.
Chỉ định các thuộc tính vật lý hiện tại của bộ phận.
Xác định một số thuộc tính vật lý của một bộ phận.
Được sử dụng để bật hoặc tắt các lực khí tương đối trên các bộ phận và tập hợp.
Kích thước thực tế của BasePart như được xem xét bởi các khối lận BasePart lận lý.
Xác định loại bề mặt cho mặt trước của một bộ phận (-Z hướng).
Xác định loại bề mặt cho mặt trái của một bộ phận (-X hướng).
Xác định một hệ số nhân cho BasePart.Transparency mà chỉ người dùng địa phương mới có thể thấy.
Xác định có phải một bộ phận được chọn trong Studio không.
Mô tả hầu hết lượng lớn của bộ phận, sản lượng của nó và khối lượng.
Xác định xem liệu phần có đóng góp vào tổng sức mạnh hoặc tốc độ chết của cơ thâncứng rắn của nó hay không.
Xác định các thuộc tính và thuộc tính vật lý mặc định của một phần.
Tên của MaterialVariant .
Mô tả sự quay của bộ phận trong thế giới.
Định vị lệch của các cột trụ của bộ phận từ các CFrame của nó.
Mô tả vị trí của bộ phận trên thế giới.
Thời gian kể từ lần cuối cập nhật vật lý.
Xác định mức độ phản chiếu của một bộ phận trên trời.
Mô tả thay đổi nhỏ nhất cho phép bởi phương pháp Thay đổi kích thước.
Mô tả các khuôn mặt mà một phần có thể được thay đổi kích thước.
Xác định loại bề mặt cho mặt phải của một bộ phận (+X hướng).
Quy tắc chính để xác định phần thân của một bản dựng.
Sự quay của bộ phận theo độ cho ba trục.
Xác định các kích thước của một bộ phận (Độ dài, chiều rộng, chiều cao).
Xác định loại bề mặt cho mặt trên của một bộ phận (+Y hướng).
Xác định mức độ mà một phần có thể được nhìn thấy thông qua (ản định hướng ngược lại của sự mờ dần).
Phương Pháp
Phương Pháp kế thừa từ BasePartXem xét áp dụng một ngực đạo cho hệ thống.
Xem xét áp dụng một xoay tốc độ vào bộ tập hợp tại trung tâm center of mass của nó.
Xem xét áp dụng một xoay tốc độ đến bộ tập hợp ở vị trí đặc định.
Quyết định xem các bộ phận có thể va chạm với nhau.
Kiểm tra xem bạn có thể thiết lập sở hữu mạng của một phần.
Trả lại một bảng các bộ phận kết nối với mục bằng bất kỳ loại nào của mối hàn cứng.
Trả lại tất cả Cột kết nối hoặc Giới hạn mà đã kết nối với phần này.
Trả giá trị của thuộc tính Mass .
Trả về người chơi hiện tại mà là chủ mạng của phần này, hoặc là nil trong trường hợp của máy chủ.
Trả về true nếu Engine game tự động quyết định chủ mạng cho phần này.
Trả lại phần cơ bản của một bộ sưu tập các bộ phận.
Trả về một bảng của tất cả BasePart.CanCollide các bộ phận thực sự có khớp nối với bộ phận này.
Đo lường tốc độ truyền thẳng của cấu hình của bộ phận ở vị trí được cho đối với bộ phận này.
Trả về true nếu đối tượng được kết nối với một phần để giữ nó ở chỗ (ví dụ, một phần Anchored )), trái lại trả về false.
Thay đổi kích thước của một đối tượng chỉ như sử dụng công cụ thay đổi kích thước Studio.
Đặt người chơi được cho là chủ mạng cho các bộ phận này và tất cả các bộ phận kết nối.
Cho phép động cơ trò chơi quyết định dinamically ai sẽ xử lý vật lý của bộ phận (một trong những khách hàng hoặc máy chủ).
- IntersectAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Tạo một IntersectOperation mới từ geometria vuông góc của bộ phận và các bộ phận khác trong mảng được cung cấp.
- SubtractAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Tạo một ô UnionOperation mới từ bên, giảm đi geometri bị chiếm bởi các bộ phận trong danh sách đã được cung cấp.
- UnionAsync(parts : Instances,collisionfidelity : Enum.CollisionFidelity,renderFidelity : Enum.RenderFidelity):Instance
Tạo một cái mới UnionOperation từ bên, plus geometries bị chiếm bởi các bộ phận trong given array.
Nhận pivot của một PVInstance .
Biến hình PVInstance cùng với tất cả các con cháu của nó PVInstances để pivot được đặt ở CFrame đã định.
Sự Kiện
Sự Kiện kế thừa từ BasePartBắt lửa khi một phần dừng chạm vào một phần khác do chuyển động cơ họa.
Bắt lửa khi một phần chạm vào một phần khác do chuyển động cơ học.
Thuộc Tính
AllowTeamChangeOnTouch
Cho phép một Player để tham gia vào đội bằng cách chạm vào
Điều này sẽ không hoạt động khi SpawnLocation.Enabled được đặt về giá trị sai.
Tạo điểm kiểm tra
Tính năng này thường được sử dụng để tạo điểm kiểm tra trong các khóa hành trình hoặc các trò chơi tương tự.
Mẫu mã
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
Sự dài của thời gian, trong giây, mà một ForceField sẽ được áp dụng cho một nhân vật Player đang sinh sản tại đây Class.SpawnLocation</
Giá trị mặc định này của thuộc tính này là 10 giây.
Các tính năng bảo vệ ngắn hạn cho phép các nhà phát triển dễ dàng cung cấp Players bảo vệ từ 'giết người' mà có thể là một trải nghiệm thú v
Mẫu mã
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
Đặt whether or not the SpawnLocation is enabled. When disabled players cannot spawn at the SpawnLocation and the SpawnLocation.AllowTeamChangeOnTouch functionality is disabled.
Đặt tính này cung cấp cách tiện lợi nhất để ngăn chặn Players khỏi xuất hiện ở một nơi xuất hiện.
Lưu ý, mặc dù thay đổi đội bằng cách sử dụng SpawnLocation.AllowTeamChangeOnTouch là bị vô hiệu hóa khi Enabled được đặt thành false, các sự kiện chạm khác bằng cách sử dụng BasePart.Touched vẫn sẽ hoạt động.
Mẫu mã
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
Dù có phải là một đội nào không, nó có thể được tạo trên nó nếu tính năng này được cài đặt cho Player , hoặc tính năng này được cài đặt cho bất kỳ đội nào Team .
Nếu Neutral được đặt để sai, chỉ người chơi cuya Player.TeamColor được bằng SpawnLocation.TeamColor mới có thể sử dụng SpawnLocation .
Nếu SpawnLocation.AllowTeamChangeOnTouch là sự thật, Player.Neutral sẽ được đặt vào giá trị này khi tiếp xúc với nhân vật.
Mẫu mã
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
Thuộc tính Màu Đội cho biết đội nào SpawnLocation đã thuộc về. Nếu SpawnLocation.Neutral thuộc tính là sai, chỉ có Players với cùng một 1> Class.Player.TeamColor1> như th
Nếu SpawnLocation.AllowTeamChangeOnTouch là sự thật, Player.Neutral sẽ được đặt vào giá trị này khi tiếp xúc với nhân vật.
Mẫu mã
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)