首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Roblox中将初始播放器健康值设置为自定义值?

如何在Roblox中将初始播放器健康值设置为自定义值?
EN

Stack Overflow用户
提问于 2022-11-10 18:11:48
回答 1查看 34关注 0票数 0

我的目标是为我在Roblox中的Roblox位置拥有一个初始/最大的自定义球员健康。

为此,我在StarterPlayer/StarterPlayerScript中创建了一个脚本,其内容如下:

代码语言:javascript
运行
复制
local DEFAULT_HEALTH = 10

game.Players.PlayerAdded:connect(function(player)
    player.character.Humanoid.MaxHealth = DEFAULT_HEALTH
    player.character.Humanoid.Health = DEFAULT_HEALTH
end)

我也曾尝试过:

代码语言:javascript
运行
复制
local DEFAULT_HEALTH = 10

local Character = script.Parent
local Humanoid = Character:WaitForChild("Humanoid")
Humanoid.MaxHealth = DEFAULT_HEALTH
Humanoid.Health = DEFAULT_HEALTH

在这两种情况下,当我播放测试it (TEST->PLAY)时,似乎使用的是默认的health=100而不是health=10

有可能解决概述的问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-11-11 00:26:45

一旦播放器加入服务器,PlayerAdded事件就会触发,但是它们的字符模型不会立即加载到世界上。所以你需要等待玩家的角色模型产生。幸运的是,您可以使用CharacterAdded事件来知道何时会发生这种情况。

因此,在Workspace或ServerScriptService中使用一个脚本,尝试如下:

代码语言:javascript
运行
复制
local DEFAULT_HEALTH = 10

game.Players.PlayerAdded:connect(function(player)
    player.CharacterAdded:Connect(function(character)
        character.Humanoid.MaxHealth = DEFAULT_HEALTH
        character.Humanoid.Health = DEFAULT_HEALTH
    end)
end)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74393546

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档