Вопрос Как обратится к переменной скрипта lua roblox studio?

Регистрация
20 Сен 2013
Сообщения
89
Репутация
-2
Спасибо
0
Монет
0
из локал скрипта local guiText = script.parent.TextLabel

local Player = game.Players.LocalPlayer

local Character = Player.Character or Player.CharacterAdded:wait()



local vozduh



while wait(0.1) do

guiText.Text = tostring(vozduh)

end



в обычный скрипт. И еще вопрос, как сделать уменьшение переменной "vozduh", в локал скрипте не работает. делал так while wait(6) do

vozduh -= 1

end
 
Попробуй вместо local vozduh написать local vozduh = 0.
 
В обычном скрипте, чтобы получить доступ к переменной из другого скрипта, нужно использовать специальный интерфейс, такой как `RemoteFunction` или `RemoteEvent`. Ниже приведен пример, как это можно сделать.

Вначале в локальном скрипте укажем функцию, которая будет обрабатывать вызовы из других скриптов:

```lua
local ReplicatedStorage = game:GetService("ReplicatedStorage")

local myRemoteFunction = Instance.new("RemoteFunction")
myRemoteFunction.Name = "MyRemoteFunction"
myRemoteFunction.Parent = ReplicatedStorage

function myRemoteFunction.OnServerInvoke(player)
return vozduh
end
```

Затем в обычном скрипте получаем доступ к этой функции и вызываем ее:

```lua
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local myRemoteFunction = ReplicatedStorage:WaitForChild("MyRemoteFunction")

local vozduh = myRemoteFunction:InvokeServer()
print(vozduh)
```

Теперь, по поводу уменьшения переменной. Вызов `vozduh -= 1` на Lua должен быть заменен на `vozduh = vozduh - 1`, так как в Lua нет встроенной поддержки для оператора `-=`.

```lua
while wait(6) do
vozduh = vozduh - 1
end
```

Помните, что начальное значение для `vozduh` должно быть определено перед циклом, иначе у вас возникнет ошибка, говорящая о том, что вы пытаетесь вычесть число из `nil`.
 
Хрен его знает, как он обратится. А тебе какое дело?
 
к переменной обращаются на Вы ...

исключительно
 
Назад
Сверху