StarterPlayer
*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.
Một dịch vụ cho phép các giá trị mặc định của các thuộc tính trong đối tượng Player được cài đặt.Khi một người chơi vào máy chủ, mỗi thuộc tính của đối tượng người chơi được đặt vào giá trị hiện tại của thuộc tính tương ứng trong StarterPlayer .
Ngoài ra, bạn có thể thêm bốn đối tượng vào dịch vụ này:
- Một ví dụ StarterPlayerScripts instance với các tập lệnh chạy một lần cho mỗi người chơi.
- Một ví dụ StarterCharacterScripts với các tập lệnh để thêm vào tính cách của mỗi người chơi mỗi khi họ xuất hiện.
- Một ví dụ Humanoid mang tên StarterHumanoid sẽ được sử dụng làm humanoid mặc định cho mỗi nhân vật của người chơi.
- Một ví dụ Model mang tên StarterCharacter sẽ được sử dụng làm mô hình nhân vật cho tất cả các người chơi.
Tóm Tắt
Thuộc Tính
Mô tả các cấp quyền hiện tại của trò chơi liên quan đến hoạt hình avatar tùy chỉnh từ trang web.
Bộ đặt xem liệu nhân vật sẽ tự động nhảy khi va chạm với chướng ngại vật trên thiết bị di động.
Khoảng cách tối đa mà camera mặc định của người chơi được phép phóng to trong đinh tán.
Khoảng cách tối thiểu trong đinh tán mà camera mặc định của người chơi được phép phóng to.
Thay đổi chế độ mặc định của camera thành người thứ nhất hoặc thứ ba.
Xác định giá trị khởi động của Humanoid.JumpHeight cho Player.Character .
Xác định giá trị khởi động của Humanoid.JumpPower cho Player.Character .
Xác định giá trị khởi động của Humanoid.MaxSlopeAngle cho Player.Character .
Xác định trạng thái khởi động của Humanoid.UseJumpPower cho Player.Character.
Xác định giá trị khởi động của Humanoid.WalkSpeed cho Player.Character .
Xác định cách camera mặc định xử lý các đối tượng giữa camera và người chơi.
Hãy để nhà phát triển ghi đè chế độ máy ảnh mặc định cho mỗi người chơi nếu người chơi đang ở trên máy tính.
Hãy để nhà phát triển viết lại chế độ di chuyển của người chơi nếu người chơi đang ở trên máy tính.
Hãy để nhà phát triển ghi đè lại chế độ di chuyển camera mặc định cho mỗi người chơi nếu người chơi đang ở trên thiết bị di động.
Hãy để nhà phát triển viết lại chế độ di chuyển của người chơi nếu người chơi đang ở trên thiết bị cảm ứng.
Xác định xem một người chơi có thể chuyển đổi khóa chuột mặc định hay không.
Đặt khoảng cách mà người chơi này sẽ nhìn thấy các thanh sức khỏe khác Humanoid . Nếu đặt thành 0, các thanh sức khỏe sẽ không được hiển thị.
Liệu có nên tải xuống ngoại hình của nhân vật của người chơi hay không.
Chỉ ra liệu các nhân vật xuất hiện trong trải nghiệm có được trang bị phụ kiện quần áo có lớp trên họ hay không.
Đặt khoảng cách mà người chơi này sẽ nhìn thấy các tên khác Humanoid .
Xác định xem có nên tải các biểu cảm của người dùng khi tải avatar hay không.
Thuộc Tính
AllowCustomAnimations
Thuộc tính này mô tả các cấp quyền hiện tại của trò chơi liên quan đến avatar tùy chỉnh Animations từ trang web.
Do đó, giá trị này không thể thay đổi từ bên trong trò chơi.Nó chỉ có thể được thay đổi bằng cách thay đổi cấp độ quyền của trò chơi trong trang cài đặt của trò chơi trên trang web.
Tính năng này không dành cho việc sử dụng trong trò chơi.
AutoJumpEnabled
Tính năng này xác định xem nhân vật sẽ tự động nhảy khi va chạm với chướng ngại vật trên thiết bị di động.
Thuộc tính này được sao chép từ StarterPlayer đến Player khi họ tham gia trò chơi.Sau đó.giá trị của thuộc tính này được sao chép sang thuộc tính Humanoid.AutoJumpEnabled của nhân vật Humanoid khi sinh sản.Nói cách khác, bạn có thể đặt hành vi nhảy tự động trên mỗi nhân vật, mỗi người chơi và mỗi trò chơi dựa trên ba thuộc tính này.
Mẫu mã
Mẫu mã này dành cho một TextButton. Nó cho phép người chơi chuyển đổi hành vi nhảy tự động trong khi ở trên thiết bị di động.
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local button = script.Parent
local function update()
-- Cập nhật văn bản nút
if player.AutoJumpEnabled then
button.Text = "Auto-Jump is ON"
else
button.Text = "Auto-Jump is OFF"
end
-- Phản ánh thuộc tính trong nhân vật của người chơi, nếu họ có một
if player.Character then
local human = player.Character:FindFirstChild("Humanoid")
if human then
human.AutoJumpEnabled = player.AutoJumpEnabled
end
end
end
local function onActivated()
-- Bật/tắt nhảy tự động
player.AutoJumpEnabled = not player.AutoJumpEnabled
-- Cập nhật tất cả những thứ khác
update()
end
button.Activated:Connect(onActivated)
update()
AvatarJointUpgrade
CameraMaxZoomDistance
Tính năng này đặt khoảng cách tối đa trong các đinh tán mà camera có thể từ nhân vật với các máy ảnh mặc định.
Thuộc tính này đặt giá trị mặc định của Player.CameraMaxZoomDistance cho mỗi người chơi tham gia trò chơi.Nếu giá trị này được đặt thành giá trị thấp hơn StarterPlayer.CameraMinZoomDistance nó sẽ được tăng lên thành CameraMinZoomDistance.
Mẫu mã
The example demonstrates how to set a player's camera minimum and maximum zoom distance.
In this example, we set the Player.CameraMinZoomDistance and Player.CameraMaxZoomDistance to set the min and max distance in studs a player's camera can be from their character.
Note that since the example attempts to set the CameraMinZoomDistance to be greater than the CameraMaxZoomDistance, the CameraMinZoomDistance value will be decreased and set to the value of the max zoom distance.
To change the default min and max zoom distance values for a player when they first enter the game, you can change the StarterClass.Player.CameraMinZoomDistance and StarterClass.Player.CameraMaxZoomDistance properties.
local Players = game:GetService("Players")
local player = Players.LocalPlayer
player.CameraMaxZoomDistance = 50
player.CameraMinZoomDistance = 75
CameraMinZoomDistance
Tính năng này đặt khoảng cách tối thiểu trong các đinh tán mà camera có thể từ nhân vật với các máy ảnh mặc định.
Thuộc tính này đặt giá trị mặc định của Player.CameraMinZoomDistance cho mỗi người chơi tham gia trò chơi.Nếu giá trị này được đặt thành giá trị cao hơn StarterPlayer.CameraMaxZoomDistance nó sẽ bị giảm xuống thành CameraMaxZoomDistance.
Mẫu mã
The example demonstrates how to set a player's camera minimum and maximum zoom distance.
In this example, we set the Player.CameraMinZoomDistance and Player.CameraMaxZoomDistance to set the min and max distance in studs a player's camera can be from their character.
Note that since the example attempts to set the CameraMinZoomDistance to be greater than the CameraMaxZoomDistance, the CameraMinZoomDistance value will be decreased and set to the value of the max zoom distance.
To change the default min and max zoom distance values for a player when they first enter the game, you can change the StarterClass.Player.CameraMinZoomDistance and StarterClass.Player.CameraMaxZoomDistance properties.
local Players = game:GetService("Players")
local player = Players.LocalPlayer
player.CameraMaxZoomDistance = 50
player.CameraMinZoomDistance = 75
CameraMode
Đặt giá trị mặc định cho Player.CameraMode cho mỗi người chơi trong trò chơi. Camera có hai chế độ:
Người đầu tiên
Trong chế độ người thứ nhất, camera của người chơi được phóng to suốt cả đường.Trừ khi có GUI hiển thị với thuộc tính GuiButton.Modal được đặt thành true , chuột sẽ bị khóa và máy ảnh của người dùng sẽ chuyển thành chuột di chuyển.
Người thứ ba
Trong chế độ người thứ ba (mặc định), nhân vật có thể được nhìn thấy trong máy ảnh. Trong chế độ người thứ ba trên Roblox:
- Bạn có thể nhấp chuột phải và kéo để xoay máy ảnh của bạn, hoặc sử dụng các phím mũi tên ở góc dưới bên phải màn hình.
- Khi bạn di chuyển con chuột, máy ảnh của bạn không thay đổi (trừ khi bạn di chuyển con trỏ đến cuối màn hình).
- Khi bạn nhấn bất kỳ phím mũi tên nào, nhân vật của người dùng sẽ đối mặt với hướng phím mũi chìa khóatương ứng.
- Bạn có thể phóng to và nhỏ tự do.
Mẫu mã
This example demonstrates how to change the character's CameraMode to first person using the LockFirstPerson value of the Enum.CameraMode enum.
local Players = game:GetService("Players")
local player = Players.LocalPlayer
player.CameraMode = Enum.CameraMode.LockFirstPerson
CharacterJumpHeight
Thuộc tính này xác định giá trị bắt đầu của Humanoid.JumpHeight cho một người chơi Player.Character . Giá trị của thuộc tính này mặc định là 7,2 đinh tán.
Tính năng này chỉ xuất hiện trong cửa sổ Thuộc tính nếu StarterPlayer.CharacterUseJumpPower được đặt thành false, bởi nó sẽ không liên quan nếu không.
Vì thuộc tính này chỉ liên quan đến các nhân vật được tạo ra trong tương lai, việc thay đổi nó sẽ không thay đổi bất kỳ nhân vật người chơi hiện tại nào.Các thay đổi đối với tính năng này chỉ có hiệu lực khi một người chơi hồi sinh.
CharacterJumpPower
Tính chất này xác định giá trị khởi động của Humanoid.JumpPower cho Player.Character của một người chơi.Giá trị của thuộc tính này mặc định là 50 và khi áp dụng cho Humanoid của người chơi nó sẽ bị giới hạn giữa 0 và 1000.
Tính năng này chỉ xuất hiện trong cửa sổ Thuộc tính nếu StarterPlayer.CharacterUseJumpPower được đặt thành true, bởi nó sẽ không liên quan nếu không.
Vì thuộc tính này chỉ liên quan đến các nhân vật được tạo ra trong tương lai, việc thay đổi nó sẽ không thay đổi bất kỳ nhân vật người chơi hiện tại nào.Các thay đổi đối với tính năng này chỉ có hiệu lực khi một người chơi hồi sinh.
CharacterMaxSlopeAngle
Tính chất này xác định giá trị khởi động của Humanoid.MaxSlopeAngle cho Player.Character của một người chơi.Nó mặc định là 89°, vì vậy humanoids có thể leo lên hầu hết mọi dốc mà họ muốn theo mặc định.Khi áp dụng cho Humanoid, nó sẽ bị giới hạn giữa 0 và 89.
Vì thuộc tính này chỉ liên quan đến các nhân vật được tạo ra trong tương lai, việc thay đổi nó sẽ không thay đổi bất kỳ nhân vật người chơi hiện tại nào.Các thay đổi đối với tính năng này chỉ có hiệu lực khi một người chơi hồi sinh.
CharacterUseJumpPower
CharacterUseJumpPower xác định giá trị khởi động của Humanoid.UseJumpPower cho một người chơi Player.Character .Bật/tắt nó sẽ thay đổi đặc tính nào có thể nhìn thấy trong cửa sổ thuộc tính: CharacterJumpHeight (giả mạo) hoặc StarterPlayer.CharacterJumpPower (đúng).Mặc định là true.
Vì thuộc tính này chỉ liên quan đến các nhân vật được tạo ra trong tương lai, việc thay đổi nó sẽ không thay đổi bất kỳ nhân vật người chơi hiện tại nào.Các thay đổi đối với tính năng này chỉ có hiệu lực khi một người chơi hồi sinh.
CharacterWalkSpeed
Thuộc tính này xác định giá trị khởi động của Humanoid.WalkSpeed cho một người chơi Player.Character . Thuộc tính này mặc định là 16.
Vì thuộc tính này chỉ liên quan đến các nhân vật được tạo ra trong tương lai, việc thay đổi nó sẽ không thay đổi bất kỳ nhân vật người chơi hiện tại nào.Các thay đổi đối với tính năng này chỉ có hiệu lực khi một người chơi hồi sinh.
ClassicDeath
DevCameraOcclusionMode
Xác định cách các kịch bản camera mặc định xử lý các đối tượng giữa máy ảnh và chủ đề máy ảnh.Áp dụng cho tất cả người chơi khi họ tham gia trải nghiệm và không thể thay đổi cho mỗi người chơi cá nhân.
Giá trị mặc định là Zoom (0). Xem Enum.DevCameraOcclusionMode để có danh sách các chế độ có sẵn.
DevComputerCameraMovementMode
Tính năng này cho phép nhà phát triển ghi đè chế độ máy ảnh của người chơi nếu người chơi đang ở trên máy tính.
Đây là tính chất mặc định cho người chơi tham gia trò chơi. Nó có thể được thay đổi cho mỗi người chơi bằng cách cài đặt Player.DevComputerCameraMode .
Nếu được đặt thành UserChoice thì chế độ di chuyển camera của người chơi sẽ được xác định bởi bất kỳ thứ gì người chơi đã đặt trong cài đặt trò chơi.Nếu không, chế độ sẽ được đặt dựa trên thuộc tính này.
Xem Enum.DevComputerCameraMovementMode đối với các chế độ máy ảnh khác nhau có sẵn.
Thuộc tính này không ảnh hưởng đến người chơi không trên máy tính.
Mẫu mã
The example demonstrates how to set a player's camera movement mode for players on a computer.
In this example, we set the camera movement mode to Classic via the Enum.DevComputerCameraMovementMode enum. This means that the camera of players on touch enabled devices will track the player but will not automatically rotate if the player walks left or right.
local Players = game:GetService("Players")
local player = Players.LocalPlayer
-- Set the player's camera movement mode on computers to classic
player.DevComputerCameraMode = Enum.DevComputerCameraMovementMode.Classic
DevComputerMovementMode
Tính năng này cho phép nhà phát triển ghi đè lại chế độ di chuyển của người chơi nếu người chơi ở trên máy tính.
Đây là tính chất mặc định cho người chơi tham gia trò chơi. Nó có thể được thay đổi cho mỗi người chơi bằng cách cài đặt Player.DevComputerMovementMode .
Nếu được đặt thành UserChoice thì chế độ di chuyển của người chơi sẽ được xác định bởi bất kỳ thứ gì người chơi đặt trong cài đặt trò chơi.Nếu không, chế độ sẽ được đặt dựa trên thuộc tính này.
Xem Enum.DevComputerMovementMode cho các chế độ di chuyển khác nhau có sẵn. Hãy để nhà phát triển ghi đè lại chế độ di chuyển của người chơi nếu người chơi đang ở trên máy tính.
Thuộc tính này không ảnh hưởng đến người chơi không trên máy tính.
Mẫu mã
Demonstrates how to set the movement mode for players on computers using the Player.DevComputerMovementMode property.
local Players = game:GetService("Players")
local function onPlayerAdded(player: Player)
-- Set the player's movement mode on desktop devices to click-to-move
-- Once set, the player can right click in the game world and the character will move there.
player.DevComputerMovementMode = Enum.DevComputerMovementMode.ClickToMove
end
Players.PlayerAdded:Connect(onPlayerAdded)
DevTouchCameraMovementMode
Tính năng này cho phép nhà phát triển ghi đè chế độ máy ảnh của người chơi nếu người chơi đang ở trên thiết bị cảm ứng.
Đây là tính chất mặc định cho người chơi tham gia trò chơi. Nó có thể được thay đổi cho mỗi người chơi bằng cách cài đặt Player.DevTouchCameraMode .
Nếu được đặt thành UserChoice thì chế độ di chuyển camera của người chơi sẽ được xác định bởi bất kỳ thứ gì người chơi đã đặt trong cài đặt trò chơi.Nếu không, chế độ sẽ được đặt dựa trên thuộc tính này.
Xem Enum.DevTouchCameraMovementMode đối với các chế độ máy ảnh khác nhau có sẵn.
Thuộc tính này không ảnh hưởng đến người chơi không trên thiết bị di động.
Mẫu mã
The example demonstrates how to set a player's camera movement mode.
In this example, we set the camera movement mode to Classic via the Enum.DevTouchCameraMovementMode enum. This means that the camera of players on touch enabled devices will track the player but will not automatically rotate if the player walks left or right.
local Players = game:GetService("Players")
local player = Players.LocalPlayer
-- Set the player's camera movement mode on mobile devices to classic
player.DevTouchCameraMovementMode = Enum.DevTouchCameraMovementMode.Classic
DevTouchMovementMode
Tính năng này cho phép nhà phát triển ghi đè chế độ di chuyển của người chơi nếu người chơi đang ở trên thiết bị cảm ứng.
Đây là tính chất mặc định cho người chơi tham gia trò chơi. Nó có thể được thay đổi cho mỗi người chơi bằng cách cài đặt Player.DevTouchMovementMode .
Nếu được đặt thành UserChoice thì chế độ di chuyển của người chơi sẽ được xác định bởi bất kỳ thứ gì người chơi đặt trong cài đặt trò chơi.Nếu không, chế độ sẽ được đặt dựa trên thuộc tính này.
Xem Enum.DevTouchMovementMode cho các chế độ di chuyển khác nhau có sẵn. Cho phép nhà phát triển ghi đè lại chế độ di chuyển của người chơi nếu người chơi đang ở trên thiết bị cảm ứng.
Thuộc tính này không ảnh hưởng đến người chơi không trên thiết bị có kích hoạt chạm.
Mẫu mã
The example demonstrates how to set the movement mode for players on touch enabled devices.
In this example, we set the movement mode to Thumbstick via the Enum.DevTouchMovementMode enum. This means that players on touch enabled devices are able to move via a virtual thumbstick on their screen.
local Players = game:GetService("Players")
game.Players.PlayerAdded:Connect(function(player)
-- Set the player's movement mode on mobile devices to a dynamic thumbstick
player.DevTouchMovementMode = Enum.DevTouchMovementMode.DynamicThumbstick
end)
EnableDynamicHeads
EnableMouseLockOption
Tính năng này xác định xem một người chơi có thể chuyển đổi khóa chuột mặc định hay không.
Mouselock sẽ khóa con trỏ của người chơi vào giữa màn hình.Di chuyển con trỏ sẽ xoay Camera và Player sẽ di chuyển tương đối với vòng xoay hiện tại của máy ảnh.
Thuộc tính này đặt giá trị của Player.DevEnableMouseLock .
Lưu ý rằng các API liên quan đến shift-lock đang trong quá trình bị lược bỏ, vì vậy nó được khuyến khích sử dụng UserInputService.MouseBehavior thay vì khóa chuột.
Mẫu mã
The example demonstrates how to enable and disabled whether a player can lock their mouse.
In this example, we set the use a while true loop to toggle the state of the DevEnabledMouseLock property between true and false every 5 seconds. While this example has little practical use, it demos how to change the property via a LocalScript.
local Players = game:GetService("Players")
local player = Players.LocalPlayer
while true do
player.DevEnableMouseLock = not player.DevEnableMouseLock
task.wait(5)
end
HealthDisplayDistance
Thuộc tính này đặt khoảng cách bằng đinh tán ở đó mà người chơi này sẽ nhìn thấy các thanh sức khỏe khác Humanoid .Nếu đặt thành 0, các thanh sức khỏe sẽ không được hiển thị.Thuộc tính này được đặt thành 100 studs mặc định.
Để thay đổi khoảng cách hiển thị cho một người chơi một khi họ tham gia trò chơi, bạn có thể đặt thuộc tính Player.HealthDisplayDistance.
Nếu thanh sức khỏe Humanoid hiển thị, bạn có thể đặt loại hiển thị bằng cách sử dụng Humanoid.DisplayDistanceType .
Mẫu mã
This example demonstrates how to hide other Humanoid's (Player and NPC) health bars and names.
This is done by setting the player's Player.HealthDisplayDistance and Player.NameDisplayDistance properties to 0.
If you would like to display health bars and names, you set the properties to a value greater than 0. For instance, setting the properties to 100 means that the player will see other player's health and names up to 100 studs away.
To modify the default values for players, you can change the values of the StarterClass.Player.HealthDisplayDistance and StarterClass.Player.NameDisplayDistance properties.
local Players = game:GetService("Players")
local player = Players.LocalPlayer
player.HealthDisplayDistance = 0
player.NameDisplayDistance = 0
LoadCharacterAppearance
Tính năng này xác định liệu có nên tải xuống hình xuất hiện của nhân vật của người chơi hay không.
Đặt điều này thành false kết quả dẫn đến người chơi không có quần áo (bao gồm mũ), màu cơ thể, gói cơ thể hoặc bất cứ thứ gì khác liên quan đến sự xuất hiện của avatar người chơi.Mặc định, thuộc tính này được đặt thành true .
Đặt điều này thành true kết quả khi người chơi tải xuống hình xuất hiện tương ứng với người chơi Player.CharacterAppearanceId .
Nếu Player:LoadCharacterWithHumanoidDescription() được sử dụng, có thể có lợi khi đặt StarterPlayer.LoadCharacterAppearance thành false vì avatar của người chơi không cần thiết vì tất cả các ID tài sản để trang bị cho nhân vật sẽ đến từ HumanoidDescription .
Mẫu mã
This example demonstrates how to disable loading a player's character appearance. Instead, the player loads as a grey model without any hats, shirts, pants, etc.
This is useful for games using custom clothing and accessories.
Note that if the character has already spawned, this change will not take affect until the player respawns or the Player:LoadCharacter() function is called.
local Players = game:GetService("Players")
local player = Players.LocalPlayer
player.CanLoadCharacterAppearance = false
LoadCharacterLayeredClothing
Chỉ ra liệu các nhân vật xuất hiện trong một trải nghiệm có sẽ có trang phục phụ trợ được trang bị cho họ (Mặc dù Workspace.MeshPartHeadsAndAccessories cũng cần phải được bật ở Workspace ).
LuaCharacterController
NameDisplayDistance
Đặt khoảng cách mà người chơi này sẽ nhìn thấy các tên khác Humanoid .Nếu được đặt thành 0 , các tên được ẩn.Thuộc tính này được đặt thành 100 đinh tán mặc định.
Để thay đổi khoảng cách hiển thị cho một người chơi một khi họ tham gia trò chơi, bạn có thể đặt thuộc tính Player.NameDisplayDistance.
Nếu một tên Humanoid có thể nhìn thấy, bạn có thể đặt loại hiển thị bằng cách sử dụng Humanoid.DisplayDistanceType .
Mẫu mã
This example demonstrates how to hide other Humanoid's (Player and NPC) health bars and names.
This is done by setting the player's Player.HealthDisplayDistance and Player.NameDisplayDistance properties to 0.
If you would like to display health bars and names, you set the properties to a value greater than 0. For instance, setting the properties to 100 means that the player will see other player's health and names up to 100 studs away.
To modify the default values for players, you can change the values of the StarterClass.Player.HealthDisplayDistance and StarterClass.Player.NameDisplayDistance properties.
local Players = game:GetService("Players")
local player = Players.LocalPlayer
player.HealthDisplayDistance = 0
player.NameDisplayDistance = 0
RagdollDeath
UserEmotesEnabled
Tính chất này xác định xem các biểu cảm thuộc về người dùng có được tải khi tải avatar hay không.Đặt thuộc tính này thành false vô hiệu hóa việc tải.Các nhà phát triển có thể đặt thuộc tính trong Studio trực tiếp hoặc thông qua menu Cài đặt trò chơi.
Khi vô hiệu hóa tải biểu cảm, giao diện người dùng biểu cảm vẫn hoạt động miễn là các nhà phát triển chọn sử dụng tính năng biểu cảm bằng cách thêm biểu cảm vào trò chơi của họ.
Xem thêm Biểu cảm Avatar, một bài viết chi tiết cách điều khiển, tùy chỉnh và chơi biểu cảm avatar.