Блог школы Роблоппа — Роблокс Студио, обучение, познавательные статьи и новости школы

Как получить персонажа игрока в Роблокс Студио

Документация
Персонаж игрока — это модель (Character), которая появляется в игре.
Чтобы работать с ним (движение, здоровье, позиция), нужно правильно его получить.

🟢 1. Через CharacterAdded (самый правильный способ)

📌 Используется чаще всего
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character)
print("Персонаж получен:", character.Name)
end)
end)
✔️ срабатывает при спавне и респавне

🟢 2. Через свойство player.Character

📌 если персонаж уже существует
local character = player.Character
if character then
print(character.Name)
end
✔️ быстро, но может быть nil

🟡 3. Безопасный способ (рекомендуется)

local character = player.Character or player.CharacterAdded:Wait()
print(character.Name)
✔️ работает всегда

🟡 4. Из события Touched

script.Parent.Touched:Connect(function(hit)
local character = hit.Parent
local player = game.Players:GetPlayerFromCharacter(character)
if player then
print("Персонаж игрока:", character.Name)
end
end)
✔️ получаем персонажа через касание

🟠 5. В LocalScript (клиент)

local player = game.Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
print(character.Name)
✔️ используется в GUI и камере

🔧 Работа с Humanoid

local character = player.Character or player.CharacterAdded:Wait()
local humanoid = character:WaitForChild("Humanoid")
humanoid.WalkSpeed = 25
✔️ изменение характеристик

📦 Работа с частями персонажа

local root = character:WaitForChild("HumanoidRootPart")
root.Position = Vector3.new(0, 10, 0)
✔️ телепорт

❗ Важные моменты

✔️ персонаж может быть nil при входе
✔️ всегда учитывай респавн
✔️ используй CharacterAdded
✔️ WaitForChild — обязательно

❌ Частые ошибки

❌ сразу используют player.Character
❌ не проверяют nil
❌ забывают про респавн
❌ путают Player и Character

🚀 Итог

Получить персонажа в Роблокс Студио можно так:
  • CharacterAdded — лучший способ
  • player.Character — быстрый, но не всегда безопасный
  • CharacterAdded:Wait() — универсальный
👉 Это основа работы с игроком и его управлением.

🔗 Полезные ссылки:

🚀 Хочешь научиться делать свои игры?

Переходи на roblo.ru и запишись на обучение Роблокс Студио!
И не забудь заглянуть в наш Telegram 👉 t.me/robloppo
Made on
Tilda