【发布时间】:2020-12-07 03:44:07
【问题描述】:
所以我输入了这个脚本(这是一个普通的脚本)来在有 2 个玩家在游戏中时更改文本,但问题是当玩家 2 稍后加入游戏时,文本只会更改为玩家 2,而玩家 1 没有任何反应(我将脚本插入到 textlabel 将更改的文本标签中)并且当玩家 1 离开游戏时,文本不会更改。无论如何这是脚本:
if #game:GetService("Players"):GetPlayers() >= 2 then
script.Parent.Text ="Intermission: 25"
wait(1)
script.Parent.Text ="Intermission: 24"
wait(1)
script.Parent.Text ="Intermission: 23"
wait(1)
script.Parent.Text ="Intermission: 22"
wait(1)
script.Parent.Text ="Intermission: 21"
wait(1)
script.Parent.Text ="Intermission: 20"
wait(1)
script.Parent.Text ="Intermission: 19"
wait(1)
script.Parent.Text ="Intermission: 18"
wait(1)
script.Parent.Text ="Intermission: 17"
wait(1)
script.Parent.Text ="Intermission: 16"
wait(1)
script.Parent.Text ="Intermission: 15"
wait(1)
script.Parent.Text ="Intermission: 14"
wait(1)
script.Parent.Text ="Intermission: 13"
wait(1)
script.Parent.Text ="Intermission: 12"
wait(1)
script.Parent.Text ="Intermission: 11"
wait(1)
script.Parent.Text ="Intermission: 10"
wait(1)
script.Parent.Text ="Intermission: 9"
wait(1)
script.Parent.Text ="Intermission: 8"
wait(1)
script.Parent.Text ="Intermission: 7"
wait(1)
script.Parent.Text ="Intermission: 6"
wait(1)
script.Parent.Text ="Intermission: 5"
wait(1)
script.Parent.Text ="Intermission: 4"
wait(1)
script.Parent.Text ="Intermission: 3"
wait(1)
script.Parent.Text ="Intermission: 2"
wait(1)
script.Parent.Text ="Intermission: 1"
wait(1)
script.Parent.Text ="Intermission: 0"
else
script.Parent.Text ="Waiting for Players"
end
【问题讨论】:
-
1st,脚本不循环/重复,尝试添加事件。这也有点离题(抱歉),但我建议使用 for 循环来完成这项任务,它会为您节省很多时间和线路。
-
那么 guis 需要本地脚本吗?
-
是的。有一个正常的脚本检测是否有 2 个玩家在游戏中,然后让它触发一个事件。在您的本地脚本中,让它监听此事件,当它听到事件时编辑文本。
-
我也确实使用了本地脚本,但问题是当我用 2 名玩家测试游戏时(需要 2 名玩家同时加入)中场休息落后于玩家 1。
-
他们是在同一时间加入还是有宽限期。此外,您可能希望等待播放器加载,因为脚本可能会在加载第二个播放器的脚本之前检测到播放器。
标签: roblox