Скрипты Roblox Studio
800 скриптов для твоих игр
Выберите пример, следуйте инструкции, скопируйте код и проверьте его в Roblox Studio. Начните с простых задач и постепенно переходите к сложным.
Выберите интересующую тему
Девять направлений и 38 тематических подразделов. Нажмите на подраздел, чтобы увидеть соответствующие примеры.
Luau и алгоритмы110 примеров · 6 подразделов
Создание миров130 примеров · 5 подразделов
Интерактивные объекты140 примеров · 5 подразделов
Движение и эффекты190 примеров · 8 подразделов
GUI и мобильность30 примеров · 3 подразделов
Персонаж и инструменты30 примеров · 3 подразделов
Игровые системы80 примеров · 2 подразделов
Серверная практика70 примеров · 4 подразделов
Данные и коллекции20 примеров · 2 подразделов
001Приветствие в OutputLuau и алгоритмы / Основы Luau · Начальный
Что делает скрипт
Скрипт выполняет команды Luau по порядку. Изучи значения переменных и сообщения Output.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService, вставьте код и запустите Play. Откройте View → Output.
print("Привет, Игровёнок!")
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
print("Привет, Игровёнок!")Выводит текст или значение в окно Output.
Как проверить
В Output появится приветствие.
002Переменная с именемLuau и алгоритмы / Основы Luau · Начальный
Что делает скрипт
Скрипт выполняет команды Luau по порядку. Изучи значения переменных и сообщения Output.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService, вставьте код и запустите Play. Откройте View → Output.
local name = "Игрок"
print("Привет, " .. name)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local name = "Игрок"Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.print("Привет, " .. name)Выводит текст или значение в окно Output.
Как проверить
Выведется фраза с именем.
003Сложение очковLuau и алгоритмы / Основы Luau · Начальный
Что делает скрипт
Скрипт выполняет команды Luau по порядку. Изучи значения переменных и сообщения Output.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService, вставьте код и запустите Play. Откройте View → Output.
local stars = 3
stars += 2
print("Звёзды:", stars)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local stars = 3Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.stars += 2Увеличивает текущее значение переменной или свойства на указанную величину.print("Звёзды:", stars)Выводит текст или значение в окно Output.
Как проверить
Покажет 5 звёзд.
004Условие победыLuau и алгоритмы / Основы Luau · Начальный
Что делает скрипт
Скрипт выполняет команды Luau по порядку. Изучи значения переменных и сообщения Output.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService, вставьте код и запустите Play. Откройте View → Output.
local score = 10
if score >= 10 then
print("Победа!")
else
print("Продолжай!")
end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local score = 10Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.if score >= 10 thenПроверяет условие; вложенные команды выполнятся, если оно истинно.print("Победа!")Выводит текст или значение в окно Output.elseВыполняет альтернативную ветку, если предыдущие условия ложны.print("Продолжай!")Выводит текст или значение в окно Output.endЗакрывает блок функции, условия или цикла.
Как проверить
Вывод зависит от количества очков.
005Цикл от одного до пятиLuau и алгоритмы / Основы Luau · Начальный
Что делает скрипт
Скрипт выполняет команды Luau по порядку. Изучи значения переменных и сообщения Output.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService, вставьте код и запустите Play. Откройте View → Output.
for i = 1, 5 do
print("Шаг", i)
end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
for i = 1, 5 doЗапускает цикл: тело выполняется для указанных значений счётчика или элементов.print("Шаг", i)Выводит текст или значение в окно Output.endЗакрывает блок функции, условия или цикла.
Как проверить
В Output появятся числа 1–5.
006Цикл с шагом дваLuau и алгоритмы / Основы Luau · Начальный
Что делает скрипт
Скрипт выполняет команды Luau по порядку. Изучи значения переменных и сообщения Output.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService, вставьте код и запустите Play. Откройте View → Output.
for i = 2, 10, 2 do
print(i)
end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
for i = 2, 10, 2 doЗапускает цикл: тело выполняется для указанных значений счётчика или элементов.print(i)Выводит текст или значение в окно Output.endЗакрывает блок функции, условия или цикла.
Как проверить
Выведутся чётные числа до 10.
007Функция приветствияLuau и алгоритмы / Основы Luau · Начальный
Что делает скрипт
Скрипт выполняет команды Luau по порядку. Изучи значения переменных и сообщения Output.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService, вставьте код и запустите Play. Откройте View → Output.
local function greet(name)
print("Здравствуй, " .. name)
end
greet("Аня")
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local function greet(name)Объявляет локальную функцию с именем и параметрами.print("Здравствуй, " .. name)Выводит текст или значение в окно Output.endЗакрывает блок функции, условия или цикла.greet("Аня")Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.
Как проверить
Вывод приветствия через функцию.
008Список наградLuau и алгоритмы / Основы Luau · Начальный
Что делает скрипт
Скрипт выполняет команды Luau по порядку. Изучи значения переменных и сообщения Output.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService, вставьте код и запустите Play. Откройте View → Output.
local prizes = {"Звезда", "Ключ", "Кристалл"}
for i, prize in ipairs(prizes) do
print(i, prize)
end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local prizes = {"Звезда", "Ключ", "Кристалл"}Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.for i, prize in ipairs(prizes) doЗапускает цикл: тело выполняется для указанных значений счётчика или элементов.print(i, prize)Выводит текст или значение в окно Output.endЗакрывает блок функции, условия или цикла.
Как проверить
Покажет три награды.
009Случайное числоLuau и алгоритмы / Основы Luau · Начальный
Что делает скрипт
Скрипт выполняет команды Luau по порядку. Изучи значения переменных и сообщения Output.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService, вставьте код и запустите Play. Откройте View → Output.
local random = Random.new()
print("Бросок кубика:", random:NextInteger(1, 6))
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local random = Random.new()Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.print("Бросок кубика:", random:NextInteger(1, 6))Выводит текст или значение в окно Output.
Как проверить
Случайное число от 1 до 6.
010Обратный отсчётLuau и алгоритмы / Основы Luau · Начальный
Что делает скрипт
Скрипт выполняет команды Luau по порядку. Изучи значения переменных и сообщения Output.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService, вставьте код и запустите Play. Откройте View → Output.
for seconds = 5, 1, -1 do
print(seconds)
task.wait(1)
end
print("Старт!")
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
for seconds = 5, 1, -1 doЗапускает цикл: тело выполняется для указанных значений счётчика или элементов.print(seconds)Выводит текст или значение в окно Output.task.wait(1)Приостанавливает текущий поток на указанное приблизительное время.endЗакрывает блок функции, условия или цикла.print("Старт!")Выводит текст или значение в окно Output.
Как проверить
Отсчёт перед стартом.
011Меняем цвет деталиСоздание миров / Детали и мир · Начальный
Что делает скрипт
Скрипт меняет свойства экземпляров Part. Обращай внимание на script.Parent и workspace.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace и помести внутрь обычный Script. Деталь лучше закрепить свойством Anchored = true.
local part = script.Parent
part.Color = Color3.fromRGB(80, 170, 255)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.Color = Color3.fromRGB(80, 170, 255)Создаёт цвет RGB и назначает его свойству детали.
Как проверить
Деталь становится голубой.
012Делаем деталь прозрачнойСоздание миров / Детали и мир · Начальный
Что делает скрипт
Скрипт меняет свойства экземпляров Part. Обращай внимание на script.Parent и workspace.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace и помести внутрь обычный Script. Деталь лучше закрепить свойством Anchored = true.
local part = script.Parent
part.Transparency = 0.5
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.Transparency = 0.5Устанавливает прозрачность от 0 (непрозрачно) до 1 (невидимо).
Как проверить
Деталь становится полупрозрачной.
013Отключаем столкновенияСоздание миров / Детали и мир · Начальный
Что делает скрипт
Скрипт меняет свойства экземпляров Part. Обращай внимание на script.Parent и workspace.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace и помести внутрь обычный Script. Деталь лучше закрепить свойством Anchored = true.
local part = script.Parent
part.CanCollide = false
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.CanCollide = falseМеняет возможность физического столкновения с деталью.
Как проверить
Через деталь можно проходить.
014Увеличиваем платформуСоздание миров / Детали и мир · Начальный
Что делает скрипт
Скрипт меняет свойства экземпляров Part. Обращай внимание на script.Parent и workspace.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace и помести внутрь обычный Script. Деталь лучше закрепить свойством Anchored = true.
local part = script.Parent
part.Size = Vector3.new(16, 2, 16)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.Size = Vector3.new(16, 2, 16)Создаёт трёхмерный вектор размеров или положения.
Как проверить
Размер платформы увеличивается.
015Перемещаем деталь вверхСоздание миров / Детали и мир · Начальный
Что делает скрипт
Скрипт меняет свойства экземпляров Part. Обращай внимание на script.Parent и workspace.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace и помести внутрь обычный Script. Деталь лучше закрепить свойством Anchored = true.
local part = script.Parent
part.Position += Vector3.new(0, 8, 0)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.Position += Vector3.new(0, 8, 0)Создаёт трёхмерный вектор размеров или положения.
Как проверить
Деталь поднимается на 8 studs.
016Поворачиваем объектСоздание миров / Детали и мир · Начальный
Что делает скрипт
Скрипт меняет свойства экземпляров Part. Обращай внимание на script.Parent и workspace.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace и помести внутрь обычный Script. Деталь лучше закрепить свойством Anchored = true.
local part = script.Parent
part.CFrame = part.CFrame * CFrame.Angles(0, math.rad(45), 0)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.CFrame = part.CFrame * CFrame.Angles(0, math.rad(45), 0)Изменяет положение или ориентацию объекта в трёхмерном пространстве.
Как проверить
Объект поворачивается на 45°.
017Случайный цветСоздание миров / Детали и мир · Начальный
Что делает скрипт
Скрипт меняет свойства экземпляров Part. Обращай внимание на script.Parent и workspace.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace и помести внутрь обычный Script. Деталь лучше закрепить свойством Anchored = true.
local part = script.Parent
local r = Random.new()
part.Color = Color3.fromHSV(r:NextNumber(), 0.8, 1)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local r = Random.new()Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.Color = Color3.fromHSV(r:NextNumber(), 0.8, 1)Создаёт цвет RGB и назначает его свойству детали.
Как проверить
Каждый запуск выбирает цвет.
018Неоновая детальСоздание миров / Детали и мир · Начальный
Что делает скрипт
Скрипт меняет свойства экземпляров Part. Обращай внимание на script.Parent и workspace.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace и помести внутрь обычный Script. Деталь лучше закрепить свойством Anchored = true.
local part = script.Parent
part.Material = Enum.Material.Neon
part.Color = Color3.fromRGB(80, 255, 205)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.Material = Enum.Material.NeonВыполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.part.Color = Color3.fromRGB(80, 255, 205)Создаёт цвет RGB и назначает его свойству детали.
Как проверить
Деталь светится неоновым материалом.
019Создаём новую платформуСоздание миров / Детали и мир · Начальный
Что делает скрипт
Скрипт меняет свойства экземпляров Part. Обращай внимание на script.Parent и workspace.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace и помести внутрь обычный Script. Деталь лучше закрепить свойством Anchored = true.
local part = script.Parent
local p = Instance.new("Part")
p.Name = "GeneratedPlatform"
p.Anchored = true
p.Size = Vector3.new(12, 1, 12)
p.Position = part.Position + Vector3.new(0, 8, 0)
p.Parent = workspace
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local p = Instance.new("Part")Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.p.Name = "GeneratedPlatform"Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.p.Anchored = trueВыполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.p.Size = Vector3.new(12, 1, 12)Создаёт трёхмерный вектор размеров или положения.p.Position = part.Position + Vector3.new(0, 8, 0)Создаёт трёхмерный вектор размеров или положения.p.Parent = workspaceВыполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.
Как проверить
Над исходной деталью появляется платформа.
020Крутим деталь бесконечноСоздание миров / Детали и мир · Начальный
Что делает скрипт
Скрипт меняет свойства экземпляров Part. Обращай внимание на script.Parent и workspace.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace и помести внутрь обычный Script. Деталь лучше закрепить свойством Anchored = true.
local part = script.Parent
while part.Parent do
part.CFrame *= CFrame.Angles(0, math.rad(2), 0)
task.wait(0.03)
end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.while part.Parent doВыполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.part.CFrame *= CFrame.Angles(0, math.rad(2), 0)Изменяет положение или ориентацию объекта в трёхмерном пространстве.task.wait(0.03)Приостанавливает текущий поток на указанное приблизительное время.endЗакрывает блок функции, условия или цикла.
Как проверить
Деталь плавно вращается.
021Изменить цвет при касанииИнтерактивные объекты / Касания и события · Начальный
Что делает скрипт
Соединение :Connect связывает событие с функцией; она выполняется при касании.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, помести внутрь Script. Проверьте касание персонажем в Play.
local part = script.Parent
local busy = {}
part.Touched:Connect(function(hit)
local character = hit.Parent
local humanoid = character and character:FindFirstChildOfClass("Humanoid")
if not humanoid or busy[humanoid] then return end
busy[humanoid] = true
part.Color = Color3.fromRGB(255, 190, 70)
task.delay(1, function() busy[humanoid] = nil end)
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local busy = {}Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.Touched:Connect(function(hit)Подключает функцию к событию, чтобы она вызывалась при срабатывании.local character = hit.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local humanoid = character and character:FindFirstChildOfClass("Humanoid")Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.if not humanoid or busy[humanoid] then return endПроверяет условие; вложенные команды выполнятся, если оно истинно.busy[humanoid] = trueВыполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.part.Color = Color3.fromRGB(255, 190, 70)Создаёт цвет RGB и назначает его свойству детали.task.delay(1, function() busy[humanoid] = nil end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.
Как проверить
При прикосновении деталь станет жёлтой.
022Сделать блок невидимымИнтерактивные объекты / Касания и события · Начальный
Что делает скрипт
Соединение :Connect связывает событие с функцией; она выполняется при касании.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, помести внутрь Script. Проверьте касание персонажем в Play.
local part = script.Parent
local busy = {}
part.Touched:Connect(function(hit)
local character = hit.Parent
local humanoid = character and character:FindFirstChildOfClass("Humanoid")
if not humanoid or busy[humanoid] then return end
busy[humanoid] = true
part.Transparency = 1
part.CanCollide = false
task.delay(1, function() busy[humanoid] = nil end)
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local busy = {}Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.Touched:Connect(function(hit)Подключает функцию к событию, чтобы она вызывалась при срабатывании.local character = hit.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local humanoid = character and character:FindFirstChildOfClass("Humanoid")Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.if not humanoid or busy[humanoid] then return endПроверяет условие; вложенные команды выполнятся, если оно истинно.busy[humanoid] = trueВыполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.part.Transparency = 1Устанавливает прозрачность от 0 (непрозрачно) до 1 (невидимо).part.CanCollide = falseМеняет возможность физического столкновения с деталью.task.delay(1, function() busy[humanoid] = nil end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.
Как проверить
Деталь исчезнет и станет проходимой.
023Кнопка одноразового действияИнтерактивные объекты / Касания и события · Начальный
Что делает скрипт
Соединение :Connect связывает событие с функцией; она выполняется при касании.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, помести внутрь Script. Проверьте касание персонажем в Play.
local part = script.Parent
local busy = {}
part.Touched:Connect(function(hit)
local character = hit.Parent
local humanoid = character and character:FindFirstChildOfClass("Humanoid")
if not humanoid or busy[humanoid] then return end
busy[humanoid] = true
if part:GetAttribute("Used") then return end
part:SetAttribute("Used", true)
part.Color = Color3.fromRGB(90, 220, 130)
task.delay(1, function() busy[humanoid] = nil end)
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local busy = {}Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.Touched:Connect(function(hit)Подключает функцию к событию, чтобы она вызывалась при срабатывании.local character = hit.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local humanoid = character and character:FindFirstChildOfClass("Humanoid")Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.if not humanoid or busy[humanoid] then return endПроверяет условие; вложенные команды выполнятся, если оно истинно.busy[humanoid] = trueВыполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.if part:GetAttribute("Used") then return endПроверяет условие; вложенные команды выполнятся, если оно истинно.part:SetAttribute("Used", true)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.part.Color = Color3.fromRGB(90, 220, 130)Создаёт цвет RGB и назначает его свойству детали.task.delay(1, function() busy[humanoid] = nil end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.
Как проверить
Первое касание активирует кнопку.
024Восстановить платформуИнтерактивные объекты / Касания и события · Начальный
Что делает скрипт
Соединение :Connect связывает событие с функцией; она выполняется при касании.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, помести внутрь Script. Проверьте касание персонажем в Play.
local part = script.Parent
local busy = {}
part.Touched:Connect(function(hit)
local character = hit.Parent
local humanoid = character and character:FindFirstChildOfClass("Humanoid")
if not humanoid or busy[humanoid] then return end
busy[humanoid] = true
part.Transparency = 1
part.CanCollide = false
task.wait(3)
part.Transparency = 0
part.CanCollide = true
task.delay(1, function() busy[humanoid] = nil end)
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local busy = {}Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.Touched:Connect(function(hit)Подключает функцию к событию, чтобы она вызывалась при срабатывании.local character = hit.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local humanoid = character and character:FindFirstChildOfClass("Humanoid")Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.if not humanoid or busy[humanoid] then return endПроверяет условие; вложенные команды выполнятся, если оно истинно.busy[humanoid] = trueВыполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.part.Transparency = 1Устанавливает прозрачность от 0 (непрозрачно) до 1 (невидимо).part.CanCollide = falseМеняет возможность физического столкновения с деталью.task.wait(3)Приостанавливает текущий поток на указанное приблизительное время.part.Transparency = 0Устанавливает прозрачность от 0 (непрозрачно) до 1 (невидимо).part.CanCollide = trueМеняет возможность физического столкновения с деталью.task.delay(1, function() busy[humanoid] = nil end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.
Как проверить
Платформа исчезнет на три секунды.
025Ускоряющая площадкаИнтерактивные объекты / Касания и события · Начальный
Что делает скрипт
Соединение :Connect связывает событие с функцией; она выполняется при касании.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, помести внутрь Script. Проверьте касание персонажем в Play.
local part = script.Parent
local busy = {}
part.Touched:Connect(function(hit)
local character = hit.Parent
local humanoid = character and character:FindFirstChildOfClass("Humanoid")
if not humanoid or busy[humanoid] then return end
busy[humanoid] = true
humanoid.WalkSpeed = 26
task.delay(5, function()
if humanoid.Parent then humanoid.WalkSpeed = 16 end
end)
task.delay(1, function() busy[humanoid] = nil end)
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local busy = {}Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.Touched:Connect(function(hit)Подключает функцию к событию, чтобы она вызывалась при срабатывании.local character = hit.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local humanoid = character and character:FindFirstChildOfClass("Humanoid")Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.if not humanoid or busy[humanoid] then return endПроверяет условие; вложенные команды выполнятся, если оно истинно.busy[humanoid] = trueВыполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.humanoid.WalkSpeed = 26Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.task.delay(5, function()Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.if humanoid.Parent then humanoid.WalkSpeed = 16 endПроверяет условие; вложенные команды выполнятся, если оно истинно.end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.task.delay(1, function() busy[humanoid] = nil end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.
Как проверить
Игрок ускорится на пять секунд.
026Прыгучая площадкаИнтерактивные объекты / Касания и события · Начальный
Что делает скрипт
Соединение :Connect связывает событие с функцией; она выполняется при касании.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, помести внутрь Script. Проверьте касание персонажем в Play.
local part = script.Parent
local busy = {}
part.Touched:Connect(function(hit)
local character = hit.Parent
local humanoid = character and character:FindFirstChildOfClass("Humanoid")
if not humanoid or busy[humanoid] then return end
busy[humanoid] = true
humanoid.JumpPower = 85
humanoid.UseJumpPower = true
task.delay(5, function()
if humanoid.Parent then humanoid.JumpPower = 50 end
end)
task.delay(1, function() busy[humanoid] = nil end)
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local busy = {}Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.Touched:Connect(function(hit)Подключает функцию к событию, чтобы она вызывалась при срабатывании.local character = hit.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local humanoid = character and character:FindFirstChildOfClass("Humanoid")Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.if not humanoid or busy[humanoid] then return endПроверяет условие; вложенные команды выполнятся, если оно истинно.busy[humanoid] = trueВыполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.humanoid.JumpPower = 85Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.humanoid.UseJumpPower = trueВыполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.task.delay(5, function()Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.if humanoid.Parent then humanoid.JumpPower = 50 endПроверяет условие; вложенные команды выполнятся, если оно истинно.end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.task.delay(1, function() busy[humanoid] = nil end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.
Как проверить
Прыжок усилится на пять секунд.
027Лечащий блокИнтерактивные объекты / Касания и события · Начальный
Что делает скрипт
Соединение :Connect связывает событие с функцией; она выполняется при касании.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, помести внутрь Script. Проверьте касание персонажем в Play.
local part = script.Parent
local busy = {}
part.Touched:Connect(function(hit)
local character = hit.Parent
local humanoid = character and character:FindFirstChildOfClass("Humanoid")
if not humanoid or busy[humanoid] then return end
busy[humanoid] = true
humanoid.Health = math.min(humanoid.MaxHealth, humanoid.Health + 20)
task.delay(1, function() busy[humanoid] = nil end)
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local busy = {}Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.Touched:Connect(function(hit)Подключает функцию к событию, чтобы она вызывалась при срабатывании.local character = hit.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local humanoid = character and character:FindFirstChildOfClass("Humanoid")Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.if not humanoid or busy[humanoid] then return endПроверяет условие; вложенные команды выполнятся, если оно истинно.busy[humanoid] = trueВыполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.humanoid.Health = math.min(humanoid.MaxHealth, humanoid.Health + 20)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.task.delay(1, function() busy[humanoid] = nil end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.
Как проверить
Восстанавливает до 20 единиц здоровья.
028Опасная лаваИнтерактивные объекты / Касания и события · Начальный
Что делает скрипт
Соединение :Connect связывает событие с функцией; она выполняется при касании.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, помести внутрь Script. Проверьте касание персонажем в Play.
local part = script.Parent
local busy = {}
part.Touched:Connect(function(hit)
local character = hit.Parent
local humanoid = character and character:FindFirstChildOfClass("Humanoid")
if not humanoid or busy[humanoid] then return end
busy[humanoid] = true
humanoid:TakeDamage(25)
task.delay(1, function() busy[humanoid] = nil end)
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local busy = {}Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.Touched:Connect(function(hit)Подключает функцию к событию, чтобы она вызывалась при срабатывании.local character = hit.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local humanoid = character and character:FindFirstChildOfClass("Humanoid")Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.if not humanoid or busy[humanoid] then return endПроверяет условие; вложенные команды выполнятся, если оно истинно.busy[humanoid] = trueВыполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.humanoid:TakeDamage(25)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.task.delay(1, function() busy[humanoid] = nil end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.
Как проверить
Касание уменьшает здоровье.
029Контрольная точкаИнтерактивные объекты / Касания и события · Начальный
Что делает скрипт
Соединение :Connect связывает событие с функцией; она выполняется при касании.
Куда вставить
Script внутри SpawnLocation
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Добавьте SpawnLocation в Workspace и помести внутрь Script. Установите Neutral = true.
local part = script.Parent
-- Этот скрипт помещают в SpawnLocation, не в обычный Part!
part.Touched:Connect(function(hit)
local character = hit.Parent
local humanoid = character and character:FindFirstChildOfClass("Humanoid")
if not humanoid then return end
local player = game.Players:GetPlayerFromCharacter(character)
if player then player.RespawnLocation = part end
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.-- Этот скрипт помещают в SpawnLocation, не в обычный Part!Комментарий для читателя; Roblox не выполняет эту строку.part.Touched:Connect(function(hit)Подключает функцию к событию, чтобы она вызывалась при срабатывании.local character = hit.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local humanoid = character and character:FindFirstChildOfClass("Humanoid")Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.if not humanoid then return endПроверяет условие; вложенные команды выполнятся, если оно истинно.local player = game.Players:GetPlayerFromCharacter(character)Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.if player then player.RespawnLocation = part endПроверяет условие; вложенные команды выполнятся, если оно истинно.end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.
Как проверить
Назначает SpawnLocation точкой возрождения.
030Сообщение о финишеИнтерактивные объекты / Касания и события · Начальный
Что делает скрипт
Соединение :Connect связывает событие с функцией; она выполняется при касании.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, помести внутрь Script. Проверьте касание персонажем в Play.
local part = script.Parent
local busy = {}
part.Touched:Connect(function(hit)
local character = hit.Parent
local humanoid = character and character:FindFirstChildOfClass("Humanoid")
if not humanoid or busy[humanoid] then return end
busy[humanoid] = true
local player = game.Players:GetPlayerFromCharacter(character)
if player then print(player.Name .. " достиг финиша!") end
task.delay(1, function() busy[humanoid] = nil end)
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local busy = {}Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.part.Touched:Connect(function(hit)Подключает функцию к событию, чтобы она вызывалась при срабатывании.local character = hit.ParentСоздаёт локальную переменную или получает ссылку на объект; значение справа используется далее.local humanoid = character and character:FindFirstChildOfClass("Humanoid")Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.if not humanoid or busy[humanoid] then return endПроверяет условие; вложенные команды выполнятся, если оно истинно.busy[humanoid] = trueВыполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.local player = game.Players:GetPlayerFromCharacter(character)Создаёт локальную переменную или получает ссылку на объект; значение справа используется далее.if player then print(player.Name .. " достиг финиша!") endПроверяет условие; вложенные команды выполнятся, если оно истинно.task.delay(1, function() busy[humanoid] = nil end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.end)Выполняет указанную операцию над значением или объектом; проверьте результат в Play/Output.
Как проверить
На сервере появляется сообщение о финише.
031Открыть проходИнтерактивные объекты / Кнопки и взаимодействие · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.
Куда вставить
Script в Part рядом с ProximityPrompt
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, добавьте внутрь ProximityPrompt и Script. Для действий со светом также добавьте PointLight в эту же деталь.
local part = script.Parent
local prompt = part:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
part.CanCollide = false
part.Transparency = 0.65
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local prompt = part:WaitForChild("ProximityPrompt")Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.part.CanCollide = falseОтключаем столкновения, позволяя пройти сквозь деталь.part.Transparency = 0.65Устанавливаем прозрачность 0.65: 0 — видимый объект, 1 — невидимый.end)Завершаем блок функции, условия или цикла.
Добавьте закрытие прохода через 3 секунды с task.delay и проверьте CanCollide.
Как проверить
Проход открывается.
032Закрыть проходИнтерактивные объекты / Кнопки и взаимодействие · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.
Куда вставить
Script в Part рядом с ProximityPrompt
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, добавьте внутрь ProximityPrompt и Script. Для действий со светом также добавьте PointLight в эту же деталь.
local part = script.Parent
local prompt = part:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
part.CanCollide = true
part.Transparency = 0
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local prompt = part:WaitForChild("ProximityPrompt")Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.part.CanCollide = trueВключаем столкновения с деталью.part.Transparency = 0Устанавливаем прозрачность 0: 0 — видимый объект, 1 — невидимый.end)Завершаем блок функции, условия или цикла.
Поставь рядом второй проход; сделайте отдельную кнопку для каждого.
Как проверить
Проход закрывается.
033Включить светИнтерактивные объекты / Кнопки и взаимодействие · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Ожидаем объект с точным именем PointLight; если имени нет, код будет ждать и Roblox может вывести предупреждение.
Куда вставить
Script в Part рядом с ProximityPrompt
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, добавьте внутрь ProximityPrompt и Script. Для действий со светом также добавьте PointLight в эту же деталь.
local part = script.Parent
local prompt = part:WaitForChild("ProximityPrompt")
local light = part:WaitForChild("PointLight")
prompt.Triggered:Connect(function(player)
light.Enabled = true
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local prompt = part:WaitForChild("ProximityPrompt")Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.local light = part:WaitForChild("PointLight")Ожидаем объект с точным именем PointLight; если имени нет, код будет ждать и Roblox может вывести предупреждение.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.light.Enabled = trueВключаем компонент.end)Завершаем блок функции, условия или цикла.
Добавьте вторую лампу и включай обе одним нажатием.
Как проверить
Свет включается.
034Выключить светИнтерактивные объекты / Кнопки и взаимодействие · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Ожидаем объект с точным именем PointLight; если имени нет, код будет ждать и Roblox может вывести предупреждение.
Куда вставить
Script в Part рядом с ProximityPrompt
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, добавьте внутрь ProximityPrompt и Script. Для действий со светом также добавьте PointLight в эту же деталь.
local part = script.Parent
local prompt = part:WaitForChild("ProximityPrompt")
local light = part:WaitForChild("PointLight")
prompt.Triggered:Connect(function(player)
light.Enabled = false
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local prompt = part:WaitForChild("ProximityPrompt")Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.local light = part:WaitForChild("PointLight")Ожидаем объект с точным именем PointLight; если имени нет, код будет ждать и Roblox может вывести предупреждение.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.light.Enabled = falseВыключаем компонент.end)Завершаем блок функции, условия или цикла.
Создайте кнопку для повторного включения лампы.
Как проверить
Свет выключается.
035Перекрасить дверьИнтерактивные объекты / Кнопки и взаимодействие · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.
Куда вставить
Script в Part рядом с ProximityPrompt
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, добавьте внутрь ProximityPrompt и Script. Для действий со светом также добавьте PointLight в эту же деталь.
local part = script.Parent
local prompt = part:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
part.Color = Color3.fromRGB(45, 220, 120)
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local prompt = part:WaitForChild("ProximityPrompt")Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.part.Color = Color3.fromRGB(45, 220, 120)Создаём цвет из трёх значений красного, зелёного и синего в диапазоне 0–255.end)Завершаем блок функции, условия или цикла.
Измените цвет двери на голубой и сравните результат.
Как проверить
Дверь меняет цвет.
036Получить подсказкуИнтерактивные объекты / Кнопки и взаимодействие · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.
Куда вставить
Script в Part рядом с ProximityPrompt
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, добавьте внутрь ProximityPrompt и Script. Для действий со светом также добавьте PointLight в эту же деталь.
local part = script.Parent
local prompt = part:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
print(player.Name .. ": найди ключ у моста")
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local prompt = part:WaitForChild("ProximityPrompt")Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.print(player.Name .. ": найди ключ у моста")Выводим сообщение во вкладку Output Roblox Studio, а не на экран игрока.end)Завершаем блок функции, условия или цикла.
Замени текст подсказки; найди сообщение в Output, а не на экране.
Как проверить
В Output сервера появится подсказка.
037Поднять мостИнтерактивные объекты / Кнопки и взаимодействие · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Ожидаем объект с точным именем Bridge; если имени нет, код будет ждать и Roblox может вывести предупреждение.
Куда вставить
Script в Part рядом с ProximityPrompt
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте закреплённый Part с именем Bridge в Workspace. Отдельно создайте кнопку Part с ProximityPrompt и Script внутри. Кнопка и мост — разные объекты.
local part = script.Parent
local prompt = part:WaitForChild("ProximityPrompt")
local bridge = workspace:WaitForChild("Bridge")
prompt.Triggered:Connect(function(player)
bridge.Position += Vector3.new(0, 6, 0)
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local prompt = part:WaitForChild("ProximityPrompt")Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.local bridge = workspace:WaitForChild("Bridge")Ожидаем объект с точным именем Bridge; если имени нет, код будет ждать и Roblox может вывести предупреждение.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.bridge.Position += Vector3.new(0, 6, 0)Сдвигаем деталь относительно её текущей позиции; повторное выполнение продолжит движение.end)Завершаем блок функции, условия или цикла.
Добавьте проверку высоВы моста, чтобы повторные нажатия не поднимали его бесконечно.
Как проверить
При взаимодействии с кнопкой мост перемещается вверх на 6 studs. Каждое нажатие снова сдвигает его; добавьте предел перемещения для настоящей игры.
038Опустить мостИнтерактивные объекты / Кнопки и взаимодействие · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Ожидаем объект с точным именем Bridge; если имени нет, код будет ждать и Roblox может вывести предупреждение.
Куда вставить
Script в Part рядом с ProximityPrompt
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте закреплённый Part с именем Bridge в Workspace. Отдельно создайте кнопку Part с ProximityPrompt и Script внутри. Кнопка и мост — разные объекты.
local part = script.Parent
local prompt = part:WaitForChild("ProximityPrompt")
local bridge = workspace:WaitForChild("Bridge")
prompt.Triggered:Connect(function(player)
part.Position -= Vector3.new(0, 6, 0)
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local prompt = part:WaitForChild("ProximityPrompt")Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.local bridge = workspace:WaitForChild("Bridge")Ожидаем объект с точным именем Bridge; если имени нет, код будет ждать и Roblox может вывести предупреждение.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.end)Завершаем блок функции, условия или цикла.
Добавьте ограничение нижней позиции моста.
Как проверить
При взаимодействии с кнопкой мост перемещается вниз на 6 studs. Каждое нажатие снова сдвигает его; добавьте предел перемещения для настоящей игры.
039Запустить таймерИнтерактивные объекты / Кнопки и взаимодействие · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.
Куда вставить
Script в Part рядом с ProximityPrompt
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, добавьте внутрь ProximityPrompt и Script. Для действий со светом также добавьте PointLight в эту же деталь.
local part = script.Parent
local prompt = part:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
for i = 3, 1, -1 do print(i); task.wait(1) end
print("Готово!")
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local prompt = part:WaitForChild("ProximityPrompt")Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.for i = 3, 1, -1 do print(i); task.wait(1) endДелаем паузу между действиями, позволяя другим задачам выполняться.print("Готово!")Выводим сообщение во вкладку Output Roblox Studio, а не на экран игрока.end)Завершаем блок функции, условия или цикла.
Проверь, что при многократном нажатии могут запуститься параллельные отсчёты; попробуйте добавить флаг busy.
Как проверить
Запускается обратный отсчёт.
040Сменить материалИнтерактивные объекты / Кнопки и взаимодействие · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.
Куда вставить
Script в Part рядом с ProximityPrompt
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part в Workspace, добавьте внутрь ProximityPrompt и Script. Для действий со светом также добавьте PointLight в эту же деталь.
local part = script.Parent
local prompt = part:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
part.Material = Enum.Material.Glass
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local prompt = part:WaitForChild("ProximityPrompt")Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.end)Завершаем блок функции, условия или цикла.
Сравните внешний вид Plastic и Neon и объясни различие.
Как проверить
Деталь становится стеклянной.
041Настроить утроДвижение и эффекты / Свет и атмосфера · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.; Меняем игровое время суток через Lighting; это не системное время компьютера.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Для кнопки добавьте Part с именем TimeButton и ProximityPrompt внутри.
local Lighting = game:GetService("Lighting")
Lighting.ClockTime = 8
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Lighting = game:GetService("Lighting")Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.Lighting.ClockTime = 8Меняем игровое время суток через Lighting; это не системное время компьютера.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
В игровом мире утро.
042Настроить полденьДвижение и эффекты / Свет и атмосфера · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.; Меняем игровое время суток через Lighting; это не системное время компьютера.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Для кнопки добавьте Part с именем TimeButton и ProximityPrompt внутри.
local Lighting = game:GetService("Lighting")
Lighting.ClockTime = 12
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Lighting = game:GetService("Lighting")Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.Lighting.ClockTime = 12Меняем игровое время суток через Lighting; это не системное время компьютера.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
В мире полдень.
043Настроить вечерДвижение и эффекты / Свет и атмосфера · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.; Меняем игровое время суток через Lighting; это не системное время компьютера.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Для кнопки добавьте Part с именем TimeButton и ProximityPrompt внутри.
local Lighting = game:GetService("Lighting")
Lighting.ClockTime = 18.5
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Lighting = game:GetService("Lighting")Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.Lighting.ClockTime = 18.5Меняем игровое время суток через Lighting; это не системное время компьютера.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
В игровом мире вечер.
044Настроить ночьДвижение и эффекты / Свет и атмосфера · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.; Меняем игровое время суток через Lighting; это не системное время компьютера.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Для кнопки добавьте Part с именем TimeButton и ProximityPrompt внутри.
local Lighting = game:GetService("Lighting")
Lighting.ClockTime = 0
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Lighting = game:GetService("Lighting")Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.Lighting.ClockTime = 0Меняем игровое время суток через Lighting; это не системное время компьютера.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
В игровом мире ночь.
045Повысить яркостьДвижение и эффекты / Свет и атмосфера · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.; Задаём общую яркость освещения мира.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Для кнопки добавьте Part с именем TimeButton и ProximityPrompt внутри.
local Lighting = game:GetService("Lighting")
Lighting.Brightness = 3
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Lighting = game:GetService("Lighting")Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.Lighting.Brightness = 3Задаём общую яркость освещения мира.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Свет становится ярче.
046Изменить окружениеДвижение и эффекты / Свет и атмосфера · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.; Меняем оттенок окружающего света.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Для кнопки добавьте Part с именем TimeButton и ProximityPrompt внутри.
local Lighting = game:GetService("Lighting")
Lighting.Ambient = Color3.fromRGB(80, 100, 150)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Lighting = game:GetService("Lighting")Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.Lighting.Ambient = Color3.fromRGB(80, 100, 150)Меняем оттенок окружающего света.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Окружение приобретает синий оттенок.
047Сделать туманДвижение и эффекты / Свет и атмосфера · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.; Задаём дистанцию начала или конца тумана.; Задаём дистанцию начала или конца тумана.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Для кнопки добавьте Part с именем TimeButton и ProximityPrompt внутри.
local Lighting = game:GetService("Lighting")
Lighting.FogEnd = 140
Lighting.FogStart = 25
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Lighting = game:GetService("Lighting")Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.Lighting.FogEnd = 140Задаём дистанцию начала или конца тумана.Lighting.FogStart = 25Задаём дистанцию начала или конца тумана.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
На горизонте появляется туман.
048Отключить туманДвижение и эффекты / Свет и атмосфера · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.; Задаём дистанцию начала или конца тумана.; Задаём дистанцию начала или конца тумана.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Для кнопки добавьте Part с именем TimeButton и ProximityPrompt внутри.
local Lighting = game:GetService("Lighting")
Lighting.FogEnd = 100000
Lighting.FogStart = 0
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Lighting = game:GetService("Lighting")Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.Lighting.FogEnd = 100000Задаём дистанцию начала или конца тумана.Lighting.FogStart = 0Задаём дистанцию начала или конца тумана.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Дальний туман исчезает.
049День и ночь по кругуДвижение и эффекты / Свет и атмосфера · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.; Начинаем бесконечный цикл; внутри должна быть пауза, иначе он может перегрузить игру.; Меняем игровое время суток через Lighting; это не системное время компьютера.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Для кнопки добавьте Part с именем TimeButton и ProximityPrompt внутри.
local Lighting = game:GetService("Lighting")
while true do
Lighting.ClockTime = (Lighting.ClockTime + 0.1) % 24
task.wait(0.2)
end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Lighting = game:GetService("Lighting")Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.while true doНачинаем бесконечный цикл; внутри должна быть пауза, иначе он может перегрузить игру.Lighting.ClockTime = (Lighting.ClockTime + 0.1) % 24Меняем игровое время суток через Lighting; это не системное время компьютера.task.wait(0.2)Делаем паузу между действиями, позволяя другим задачам выполняться.endЗавершаем блок функции, условия или цикла.
Измените шаг изменения времени и сравните длительность полного игрового дня.
Как проверить
Время суток постепенно меняется.
050Менять время по кнопкеДвижение и эффекты / Свет и атмосфера · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.; Ожидаем объект с точным именем TimeButton; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Для кнопки добавьте Part с именем TimeButton и ProximityPrompt внутри.
local Lighting = game:GetService("Lighting")
local part = workspace:WaitForChild("TimeButton")
local prompt = part:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function()
Lighting.ClockTime = Lighting.ClockTime < 12 and 20 or 9
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Lighting = game:GetService("Lighting")Получаем сервис Roblox Lighting, чтобы пользоваться его возможностями.local part = workspace:WaitForChild("TimeButton")Ожидаем объект с точным именем TimeButton; если имени нет, код будет ждать и Roblox может вывести предупреждение.local prompt = part:WaitForChild("ProximityPrompt")Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.Lighting.ClockTime = Lighting.ClockTime < 12 and 20 or 9Меняем игровое время суток через Lighting; это не системное время компьютера.end)Завершаем блок функции, условия или цикла.
Измените часы дня и ночи; проверьте переключение у двух игроков.
Как проверить
Кнопка переключает день и вечер.
051Показать приветствиеGUI и мобильность / GUI и интерфейсы · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.; Меняем надпись текстового элемента GUI.
Куда вставить
LocalScript внутри TextLabel
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
В StarterGui создайте ScreenGui, внутри TextLabel, затем LocalScript внутри TextLabel. Запустите Play.
local label = script.Parent
label.Text = "Добро пожаловать!"
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local label = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.label.Text = "Добро пожаловать!"Меняем надпись текстового элемента GUI.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Надпись изменяется на экране игрока.
052Скрыть текстGUI и мобильность / GUI и интерфейсы · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.; Показываем или скрываем элемент интерфейса.
Куда вставить
LocalScript внутри TextLabel
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
В StarterGui создайте ScreenGui, внутри TextLabel, затем LocalScript внутри TextLabel. Запустите Play.
local label = script.Parent
label.Visible = false
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local label = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.label.Visible = falseПоказываем или скрываем элемент интерфейса.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Надпись изменяется на экране игрока.
053Случайный текстGUI и мобильность / GUI и интерфейсы · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.; Меняем надпись текстового элемента GUI.
Куда вставить
LocalScript внутри TextLabel
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
В StarterGui создайте ScreenGui, внутри TextLabel, затем LocalScript внутри TextLabel. Запустите Play.
local label = script.Parent
label.Text = ({"Удачи!", "Вперёд!", "Ты справишься!"})[math.random(1, 3)]
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local label = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.label.Text = ({"Удачи!", "Вперёд!", "Ты справишься!"})[math.random(1, 3)]Меняем надпись текстового элемента GUI.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Надпись изменяется на экране игрока.
054Сменить цвет текстаGUI и мобильность / GUI и интерфейсы · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.; Создаём цвет из трёх значений красного, зелёного и синего в диапазоне 0–255.
Куда вставить
LocalScript внутри TextLabel
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
В StarterGui создайте ScreenGui, внутри TextLabel, затем LocalScript внутри TextLabel. Запустите Play.
local label = script.Parent
label.TextColor3 = Color3.fromRGB(80, 200, 255)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local label = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.label.TextColor3 = Color3.fromRGB(80, 200, 255)Создаём цвет из трёх значений красного, зелёного и синего в диапазоне 0–255.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Надпись изменяется на экране игрока.
055Счётчик секундGUI и мобильность / GUI и интерфейсы · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.; Повторяем команды, изменяя счётчик на каждом шаге.; Меняем надпись текстового элемента GUI.
Куда вставить
LocalScript внутри TextLabel
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
В StarterGui создайте ScreenGui, внутри TextLabel, затем LocalScript внутри TextLabel. Запустите Play.
local label = script.Parent
for i = 0, 30 do
label.Text = "Время: " .. i
task.wait(1)
end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local label = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.for i = 0, 30 doПовторяем команды, изменяя счётчик на каждом шаге.label.Text = "Время: " .. iМеняем надпись текстового элемента GUI.task.wait(1)Делаем паузу между действиями, позволяя другим задачам выполняться.endЗавершаем блок функции, условия или цикла.
Уменьши время отсчёта до 5 секунд и замени надпись.
Как проверить
Надпись изменяется на экране игрока.
056Обратный отсчёт на экранеGUI и мобильность / GUI и интерфейсы · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.; Повторяем команды, изменяя счётчик на каждом шаге.; Меняем надпись текстового элемента GUI.
Куда вставить
LocalScript внутри TextLabel
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
В StarterGui создайте ScreenGui, внутри TextLabel, затем LocalScript внутри TextLabel. Запустите Play.
local label = script.Parent
for i = 10, 0, -1 do
label.Text = "Старт через " .. i
task.wait(1)
end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local label = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.for i = 10, 0, -1 doПовторяем команды, изменяя счётчик на каждом шаге.label.Text = "Старт через " .. iМеняем надпись текстового элемента GUI.task.wait(1)Делаем паузу между действиями, позволяя другим задачам выполняться.endЗавершаем блок функции, условия или цикла.
Сделайте обратный отсчёт от 5 до 0.
Как проверить
Надпись изменяется на экране игрока.
057Отобразить имя игрокаGUI и мобильность / GUI и интерфейсы · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.; Меняем надпись текстового элемента GUI.
Куда вставить
LocalScript внутри TextLabel
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
В StarterGui создайте ScreenGui, внутри TextLabel, затем LocalScript внутри TextLabel. Запустите Play.
local label = script.Parent
label.Text = "Игрок: " .. game.Players.LocalPlayer.DisplayName
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local label = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.label.Text = "Игрок: " .. game.Players.LocalPlayer.DisplayNameМеняем надпись текстового элемента GUI.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Надпись изменяется на экране игрока.
058Обновлять здоровьеGUI и мобильность / GUI и интерфейсы · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.
Куда вставить
LocalScript внутри TextLabel
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
В StarterGui создайте ScreenGui, внутри TextLabel, затем LocalScript внутри TextLabel. Запустите Play.
local label = script.Parent
local player = game.Players.LocalPlayer
local function bind(char)
local hum = char:WaitForChild("Humanoid")
local function update() label.Text = ("Здоровье: %d"):format(math.ceil(hum.Health)) end
hum.HealthChanged:Connect(update)
update()
end
player.CharacterAdded:Connect(bind)
if player.Character then bind(player.Character) end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local label = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.local player = game.Players.LocalPlayerСоздаём локальную переменную для дальнейших вычислений или рабоВы с объектом.local hum = char:WaitForChild("Humanoid")Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.local function update() label.Text = ("Здоровье: %d"):format(math.ceil(hum.Health)) endМеняем надпись текстового элемента GUI.hum.HealthChanged:Connect(update)Отслеживаем изменение здоровья и обновляем отображение.endЗавершаем блок функции, условия или цикла.player.CharacterAdded:Connect(bind)Повторно применяем настройки после появления или возрождения персонажа.if player.Character then bind(player.Character) endПроверяем условие. Если оно не выполнено, защищённый код не запускается.
Нанеси персонажу урон и проверьте изменение строки; затем переродись.
Как проверить
Надпись изменяется на экране игрока.
059Менять размер текстаGUI и мобильность / GUI и интерфейсы · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.
Куда вставить
LocalScript внутри TextLabel
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
В StarterGui создайте ScreenGui, внутри TextLabel, затем LocalScript внутри TextLabel. Запустите Play.
local label = script.Parent
label.TextScaled = true
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local label = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Надпись изменяется на экране игрока.
060Мигающая надписьGUI и мобильность / GUI и интерфейсы · Начальный
Что делает скрипт
Разбери действия по порядку: Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.; Начинаем бесконечный цикл; внутри должна быть пауза, иначе он может перегрузить игру.; Показываем или скрываем элемент интерфейса.
Куда вставить
LocalScript внутри TextLabel
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
В StarterGui создайте ScreenGui, внутри TextLabel, затем LocalScript внутри TextLabel. Запустите Play.
local label = script.Parent
while true do
label.Visible = not label.Visible
task.wait(0.6)
end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local label = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную label.while true doНачинаем бесконечный цикл; внутри должна быть пауза, иначе он может перегрузить игру.label.Visible = not label.VisibleПоказываем или скрываем элемент интерфейса.task.wait(0.6)Делаем паузу между действиями, позволяя другим задачам выполняться.endЗавершаем блок функции, условия или цикла.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Надпись изменяется на экране игрока.
061Плавное перемещениеДвижение и эффекты / Анимация объектов · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.; Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Куда вставить
Script внутри закреплённого Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part, поставь Anchored = true и добавьте внутрь Script. Запустите Play.
local TweenService = game:GetService("TweenService")
local part = script.Parent
local tween = TweenService:Create(part, TweenInfo.new(2, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Position = part.Position + Vector3.new(0, 8, 0) })
tween:Play()
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local tween = TweenService:Create(part, TweenInfo.new(2, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Position = part.Position + Vector3.new(0, 8, 0) })Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Поменяй высоту подъёма с 8 на 4 studs.
Как проверить
Объект плавно изменяет свойство за заданное время.
062Плавное увеличениеДвижение и эффекты / Анимация объектов · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.; Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Куда вставить
Script внутри закреплённого Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part, поставь Anchored = true и добавьте внутрь Script. Запустите Play.
local TweenService = game:GetService("TweenService")
local part = script.Parent
local tween = TweenService:Create(part, TweenInfo.new(2, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Size = Vector3.new(12, 2, 12) })
tween:Play()
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local tween = TweenService:Create(part, TweenInfo.new(2, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Size = Vector3.new(12, 2, 12) })Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Сравните начальный и конечный Size детали после анимации.
Как проверить
Объект плавно изменяет свойство за заданное время.
063Плавное исчезновениеДвижение и эффекты / Анимация объектов · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.; Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Куда вставить
Script внутри закреплённого Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part, поставь Anchored = true и добавьте внутрь Script. Запустите Play.
local TweenService = game:GetService("TweenService")
local part = script.Parent
local tween = TweenService:Create(part, TweenInfo.new(2, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Transparency = 1 })
tween:Play()
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local tween = TweenService:Create(part, TweenInfo.new(2, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Transparency = 1 })Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Проверь, мешает ли невидимая деталь проходу: CanCollide остаётся прежним.
Как проверить
Объект плавно изменяет свойство за заданное время.
064Плавное появлениеДвижение и эффекты / Анимация объектов · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.; Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Куда вставить
Script внутри закреплённого Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part, поставь Anchored = true и добавьте внутрь Script. Запустите Play.
local TweenService = game:GetService("TweenService")
local part = script.Parent
local tween = TweenService:Create(part, TweenInfo.new(2, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Transparency = 0 })
tween:Play()
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local tween = TweenService:Create(part, TweenInfo.new(2, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Transparency = 0 })Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Сделайте появление за 4 секунды вместо исходного времени.
Как проверить
Объект плавно изменяет свойство за заданное время.
065Плавное изменение цветаДвижение и эффекты / Анимация объектов · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.; Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Создаём цвет из трёх значений красного, зелёного и синего в диапазоне 0–255.
Куда вставить
Script внутри закреплённого Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part, поставь Anchored = true и добавьте внутрь Script. Запустите Play.
local TweenService = game:GetService("TweenService")
local part = script.Parent
local tween = TweenService:Create(part, TweenInfo.new(3, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Color = Color3.fromRGB(120, 70, 255) })
tween:Play()
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local tween = TweenService:Create(part, TweenInfo.new(3, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Color = Color3.fromRGB(120, 70, 255) })Создаём цвет из трёх значений красного, зелёного и синего в диапазоне 0–255.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Объект плавно изменяет свойство за заданное время.
066Плавный поворотДвижение и эффекты / Анимация объектов · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.; Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Куда вставить
Script внутри закреплённого Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part, поставь Anchored = true и добавьте внутрь Script. Запустите Play.
local TweenService = game:GetService("TweenService")
local part = script.Parent
local tween = TweenService:Create(part, TweenInfo.new(2, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { CFrame = part.CFrame * CFrame.Angles(0, math.rad(90), 0) })
tween:Play()
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local tween = TweenService:Create(part, TweenInfo.new(2, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { CFrame = part.CFrame * CFrame.Angles(0, math.rad(90), 0) })Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Объект плавно изменяет свойство за заданное время.
067Плавное уменьшениеДвижение и эффекты / Анимация объектов · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.; Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Куда вставить
Script внутри закреплённого Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part, поставь Anchored = true и добавьте внутрь Script. Запустите Play.
local TweenService = game:GetService("TweenService")
local part = script.Parent
local tween = TweenService:Create(part, TweenInfo.new(2, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Size = Vector3.new(3, 1, 3) })
tween:Play()
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local tween = TweenService:Create(part, TweenInfo.new(2, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Size = Vector3.new(3, 1, 3) })Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Объект плавно изменяет свойство за заданное время.
068Медленно поднимающаяся платформаДвижение и эффекты / Анимация объектов · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.; Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Куда вставить
Script внутри закреплённого Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part, поставь Anchored = true и добавьте внутрь Script. Запустите Play.
local TweenService = game:GetService("TweenService")
local part = script.Parent
local tween = TweenService:Create(part, TweenInfo.new(6, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Position = part.Position + Vector3.new(0, 18, 0) })
tween:Play()
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local tween = TweenService:Create(part, TweenInfo.new(6, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Position = part.Position + Vector3.new(0, 18, 0) })Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Объект плавно изменяет свойство за заданное время.
069Плавное расширение воротДвижение и эффекты / Анимация объектов · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.; Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Куда вставить
Script внутри закреплённого Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part, поставь Anchored = true и добавьте внутрь Script. Запустите Play.
local TweenService = game:GetService("TweenService")
local part = script.Parent
local tween = TweenService:Create(part, TweenInfo.new(3, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Size = Vector3.new(14, 8, 2) })
tween:Play()
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local tween = TweenService:Create(part, TweenInfo.new(3, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Size = Vector3.new(14, 8, 2) })Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Проверь, что увеличение Size у ворот может изменить их положение относительно соседних деталей.
Как проверить
Объект плавно изменяет свойство за заданное время.
070Быстрое исчезновениеДвижение и эффекты / Анимация объектов · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.; Получаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.; Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Куда вставить
Script внутри закреплённого Part
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part, поставь Anchored = true и добавьте внутрь Script. Запустите Play.
local TweenService = game:GetService("TweenService")
local part = script.Parent
local tween = TweenService:Create(part, TweenInfo.new(0.35, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Transparency = 1 })
tween:Play()
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис Roblox TweenService, чтобы пользоваться его возможностями.local part = script.ParentПолучаем объект, внутри которого находится текущий скрипт; далее обращаемся к нему через переменную part.local tween = TweenService:Create(part, TweenInfo.new(0.35, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), { Transparency = 1 })Создаём плавную анимацию изменения свойства. До вызова Play анимация не начнётся.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Объект плавно изменяет свойство за заданное время.
071Скорость персонажаПерсонаж и инструменты / Персонаж и движение · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Изменяем скорость ходьбы Humanoid. Это серверная настройка персонажа.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Запустите Play, затем проверьте свойства персонажа.
local Players = game:GetService("Players")
local function onCharacter(player, character)
local hum = character:WaitForChild("Humanoid")
hum.WalkSpeed = 24
end
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)
if player.Character then onCharacter(player, player.Character) end
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local hum = character:WaitForChild("Humanoid")Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.hum.WalkSpeed = 24Изменяем скорость ходьбы Humanoid. Это серверная настройка персонажа.endЗавершаем блок функции, условия или цикла.Players.PlayerAdded:Connect(function(player)Запускаем обработчик для нового игрока, когда тот входит на сервер.player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)Повторно применяем настройки после появления или возрождения персонажа.if player.Character then onCharacter(player, player.Character) endПроверяем условие. Если оно не выполнено, защищённый код не запускается.end)Завершаем блок функции, условия или цикла.
Поменяй WalkSpeed на 20 и сравните с обычной скоростью.
Как проверить
Скорость персонажа станет 24.
072Обычная скоростьПерсонаж и инструменты / Персонаж и движение · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Изменяем скорость ходьбы Humanoid. Это серверная настройка персонажа.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Запустите Play, затем проверьте свойства персонажа.
local Players = game:GetService("Players")
local function onCharacter(player, character)
local hum = character:WaitForChild("Humanoid")
hum.WalkSpeed = 16
end
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)
if player.Character then onCharacter(player, player.Character) end
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local hum = character:WaitForChild("Humanoid")Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.hum.WalkSpeed = 16Изменяем скорость ходьбы Humanoid. Это серверная настройка персонажа.endЗавершаем блок функции, условия или цикла.Players.PlayerAdded:Connect(function(player)Запускаем обработчик для нового игрока, когда тот входит на сервер.player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)Повторно применяем настройки после появления или возрождения персонажа.if player.Character then onCharacter(player, player.Character) endПроверяем условие. Если оно не выполнено, защищённый код не запускается.end)Завершаем блок функции, условия или цикла.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Вернётся стандартная скорость.
073Высокий прыжокПерсонаж и инструменты / Персонаж и движение · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Меняем силу прыжка Humanoid, когда включён режим UseJumpPower.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Запустите Play, затем проверьте свойства персонажа.
local Players = game:GetService("Players")
local function onCharacter(player, character)
local hum = character:WaitForChild("Humanoid")
hum.UseJumpPower = true
hum.JumpPower = 75
end
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)
if player.Character then onCharacter(player, player.Character) end
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local hum = character:WaitForChild("Humanoid")Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.hum.JumpPower = 75Меняем силу прыжка Humanoid, когда включён режим UseJumpPower.endЗавершаем блок функции, условия или цикла.Players.PlayerAdded:Connect(function(player)Запускаем обработчик для нового игрока, когда тот входит на сервер.player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)Повторно применяем настройки после появления или возрождения персонажа.if player.Character then onCharacter(player, player.Character) endПроверяем условие. Если оно не выполнено, защищённый код не запускается.end)Завершаем блок функции, условия или цикла.
Сравните JumpPower 50 и 75 на одной площадке.
Как проверить
Персонаж сможет прыгать выше.
074Обычный прыжокПерсонаж и инструменты / Персонаж и движение · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Меняем силу прыжка Humanoid, когда включён режим UseJumpPower.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Запустите Play, затем проверьте свойства персонажа.
local Players = game:GetService("Players")
local function onCharacter(player, character)
local hum = character:WaitForChild("Humanoid")
hum.UseJumpPower = true
hum.JumpPower = 50
end
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)
if player.Character then onCharacter(player, player.Character) end
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local hum = character:WaitForChild("Humanoid")Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.hum.JumpPower = 50Меняем силу прыжка Humanoid, когда включён режим UseJumpPower.endЗавершаем блок функции, условия или цикла.Players.PlayerAdded:Connect(function(player)Запускаем обработчик для нового игрока, когда тот входит на сервер.player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)Повторно применяем настройки после появления или возрождения персонажа.if player.Character then onCharacter(player, player.Character) endПроверяем условие. Если оно не выполнено, защищённый код не запускается.end)Завершаем блок функции, условия или цикла.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Вернётся обычная сила прыжка.
075Дополнительное здоровьеПерсонаж и инструменты / Персонаж и движение · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Задаём максимально допустимое здоровье персонажа.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Запустите Play, затем проверьте свойства персонажа.
local Players = game:GetService("Players")
local function onCharacter(player, character)
local hum = character:WaitForChild("Humanoid")
hum.MaxHealth = 150
hum.Health = 150
end
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)
if player.Character then onCharacter(player, player.Character) end
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local hum = character:WaitForChild("Humanoid")Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.hum.MaxHealth = 150Задаём максимально допустимое здоровье персонажа.hum.Health = 150Изменяем текущее здоровье персонажа.endЗавершаем блок функции, условия или цикла.Players.PlayerAdded:Connect(function(player)Запускаем обработчик для нового игрока, когда тот входит на сервер.player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)Повторно применяем настройки после появления или возрождения персонажа.if player.Character then onCharacter(player, player.Character) endПроверяем условие. Если оно не выполнено, защищённый код не запускается.
Измените MaxHealth и проверьте соотношение Health и MaxHealth.
Как проверить
Максимальное здоровье будет 150.
076Изменить высоту бедраПерсонаж и инструменты / Персонаж и движение · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Завершаем блок функции, условия или цикла.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Запустите Play, затем проверьте свойства персонажа.
local Players = game:GetService("Players")
local function onCharacter(player, character)
local hum = character:WaitForChild("Humanoid")
hum.HipHeight = 3
end
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)
if player.Character then onCharacter(player, player.Character) end
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local hum = character:WaitForChild("Humanoid")Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.endЗавершаем блок функции, условия или цикла.Players.PlayerAdded:Connect(function(player)Запускаем обработчик для нового игрока, когда тот входит на сервер.player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)Повторно применяем настройки после появления или возрождения персонажа.if player.Character then onCharacter(player, player.Character) endПроверяем условие. Если оно не выполнено, защищённый код не запускается.end)Завершаем блок функции, условия или цикла.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Персонаж станет выше над землёй.
077Восстановить здоровьеПерсонаж и инструменты / Персонаж и движение · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Изменяем текущее здоровье персонажа.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Запустите Play, затем проверьте свойства персонажа.
local Players = game:GetService("Players")
local function onCharacter(player, character)
local hum = character:WaitForChild("Humanoid")
hum.Health = hum.MaxHealth
end
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)
if player.Character then onCharacter(player, player.Character) end
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local hum = character:WaitForChild("Humanoid")Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.hum.Health = hum.MaxHealthИзменяем текущее здоровье персонажа.endЗавершаем блок функции, условия или цикла.Players.PlayerAdded:Connect(function(player)Запускаем обработчик для нового игрока, когда тот входит на сервер.player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)Повторно применяем настройки после появления или возрождения персонажа.if player.Character then onCharacter(player, player.Character) endПроверяем условие. Если оно не выполнено, защищённый код не запускается.end)Завершаем блок функции, условия или цикла.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Здоровье восстановится.
078Включить автоповоротПерсонаж и инструменты / Персонаж и движение · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Завершаем блок функции, условия или цикла.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Запустите Play, затем проверьте свойства персонажа.
local Players = game:GetService("Players")
local function onCharacter(player, character)
local hum = character:WaitForChild("Humanoid")
hum.AutoRotate = true
end
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)
if player.Character then onCharacter(player, player.Character) end
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local hum = character:WaitForChild("Humanoid")Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.endЗавершаем блок функции, условия или цикла.Players.PlayerAdded:Connect(function(player)Запускаем обработчик для нового игрока, когда тот входит на сервер.player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)Повторно применяем настройки после появления или возрождения персонажа.if player.Character then onCharacter(player, player.Character) endПроверяем условие. Если оно не выполнено, защищённый код не запускается.end)Завершаем блок функции, условия или цикла.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Персонаж автоматически поворачивается.
079Отключить автоповоротПерсонаж и инструменты / Персонаж и движение · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Завершаем блок функции, условия или цикла.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Запустите Play, затем проверьте свойства персонажа.
local Players = game:GetService("Players")
local function onCharacter(player, character)
local hum = character:WaitForChild("Humanoid")
hum.AutoRotate = false
end
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)
if player.Character then onCharacter(player, player.Character) end
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local hum = character:WaitForChild("Humanoid")Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.endЗавершаем блок функции, условия или цикла.Players.PlayerAdded:Connect(function(player)Запускаем обработчик для нового игрока, когда тот входит на сервер.player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)Повторно применяем настройки после появления или возрождения персонажа.if player.Character then onCharacter(player, player.Character) endПроверяем условие. Если оно не выполнено, защищённый код не запускается.end)Завершаем блок функции, условия или цикла.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Персонаж не поворачивается автоматически.
080Проверить смерть персонажаПерсонаж и инструменты / Персонаж и движение · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Выводим сообщение во вкладку Output Roblox Studio, а не на экран игрока.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Запустите Play, затем проверьте свойства персонажа.
local Players = game:GetService("Players")
local function onCharacter(player, character)
local hum = character:WaitForChild("Humanoid")
hum.Died:Connect(function() print(player.Name .. " погиб") end)
end
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)
if player.Character then onCharacter(player, player.Character) end
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local hum = character:WaitForChild("Humanoid")Ожидаем объект с точным именем Humanoid; если имени нет, код будет ждать и Roblox может вывести предупреждение.hum.Died:Connect(function() print(player.Name .. " погиб") end)Выводим сообщение во вкладку Output Roblox Studio, а не на экран игрока.endЗавершаем блок функции, условия или цикла.Players.PlayerAdded:Connect(function(player)Запускаем обработчик для нового игрока, когда тот входит на сервер.player.CharacterAdded:Connect(function(character) onCharacter(player, character) end)Повторно применяем настройки после появления или возрождения персонажа.if player.Character then onCharacter(player, player.Character) endПроверяем условие. Если оно не выполнено, защищённый код не запускается.end)Завершаем блок функции, условия или цикла.
После смерти проверьте событие Died в Output.
Как проверить
В Output появится событие смерти.
081Таблица очковИгровые системы / Игровая логика · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Проверяем условие. Если оно не выполнено, защищённый код не запускается.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Добавьте только один пример на каждое имя показателя; после Play смотри таблицу игроков.
local Players = game:GetService("Players")
local function setup(player)
local folder = player:FindFirstChild("leaderstats")
if not folder then
folder = Instance.new("Folder")
folder.Name = "leaderstats"
folder.Parent = player
end
local points = Instance.new("IntValue")
points.Name = "Points"
points.Value = 0
points.Parent = folder
end
Players.PlayerAdded:Connect(setup)
for _, player in ipairs(Players:GetPlayers()) do setup(player) end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local folder = player:FindFirstChild("leaderstats")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.if not folder thenПроверяем условие. Если оно не выполнено, защищённый код не запускается.folder = Instance.new("Folder")Создаём новый Roblox-объект типа Folder.folder.Name = "leaderstats"Присваиваем объекту имя, по которому другие скрипВы смогут его найти.folder.Parent = playerРазмещаем созданный объект внутри указанного родителя в Explorer.endЗавершаем блок функции, условия или цикла.local points = Instance.new("IntValue")Создаём новый Roblox-объект типа IntValue.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
В таблице игрока появляется Points.
082Таблица монетИгровые системы / Игровая логика · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Проверяем условие. Если оно не выполнено, защищённый код не запускается.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Добавьте только один пример на каждое имя показателя; после Play смотри таблицу игроков.
local Players = game:GetService("Players")
local function setup(player)
local folder = player:FindFirstChild("leaderstats")
if not folder then
folder = Instance.new("Folder")
folder.Name = "leaderstats"
folder.Parent = player
end
local coins = Instance.new("IntValue")
coins.Name = "Coins"
coins.Value = 10
coins.Parent = folder
end
Players.PlayerAdded:Connect(setup)
for _, player in ipairs(Players:GetPlayers()) do setup(player) end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local folder = player:FindFirstChild("leaderstats")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.if not folder thenПроверяем условие. Если оно не выполнено, защищённый код не запускается.folder = Instance.new("Folder")Создаём новый Roblox-объект типа Folder.folder.Name = "leaderstats"Присваиваем объекту имя, по которому другие скрипВы смогут его найти.folder.Parent = playerРазмещаем созданный объект внутри указанного родителя в Explorer.endЗавершаем блок функции, условия или цикла.local coins = Instance.new("IntValue")Создаём новый Roblox-объект типа IntValue.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Появляется счётчик Coins.
083Таблица победИгровые системы / Игровая логика · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Проверяем условие. Если оно не выполнено, защищённый код не запускается.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Добавьте только один пример на каждое имя показателя; после Play смотри таблицу игроков.
local Players = game:GetService("Players")
local function setup(player)
local folder = player:FindFirstChild("leaderstats")
if not folder then
folder = Instance.new("Folder")
folder.Name = "leaderstats"
folder.Parent = player
end
local wins = Instance.new("IntValue")
wins.Name = "Wins"
wins.Parent = folder
end
Players.PlayerAdded:Connect(setup)
for _, player in ipairs(Players:GetPlayers()) do setup(player) end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local folder = player:FindFirstChild("leaderstats")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.if not folder thenПроверяем условие. Если оно не выполнено, защищённый код не запускается.folder = Instance.new("Folder")Создаём новый Roblox-объект типа Folder.folder.Name = "leaderstats"Присваиваем объекту имя, по которому другие скрипВы смогут его найти.folder.Parent = playerРазмещаем созданный объект внутри указанного родителя в Explorer.endЗавершаем блок функции, условия или цикла.local wins = Instance.new("IntValue")Создаём новый Roblox-объект типа IntValue.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Появляется счётчик побед.
084Таблица звёздИгровые системы / Игровая логика · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Проверяем условие. Если оно не выполнено, защищённый код не запускается.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Добавьте только один пример на каждое имя показателя; после Play смотри таблицу игроков.
local Players = game:GetService("Players")
local function setup(player)
local folder = player:FindFirstChild("leaderstats")
if not folder then
folder = Instance.new("Folder")
folder.Name = "leaderstats"
folder.Parent = player
end
local stars = Instance.new("IntValue")
stars.Name = "Stars"
stars.Parent = folder
end
Players.PlayerAdded:Connect(setup)
for _, player in ipairs(Players:GetPlayers()) do setup(player) end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local folder = player:FindFirstChild("leaderstats")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.if not folder thenПроверяем условие. Если оно не выполнено, защищённый код не запускается.folder = Instance.new("Folder")Создаём новый Roblox-объект типа Folder.folder.Name = "leaderstats"Присваиваем объекту имя, по которому другие скрипВы смогут его найти.folder.Parent = playerРазмещаем созданный объект внутри указанного родителя в Explorer.endЗавершаем блок функции, условия или цикла.local stars = Instance.new("IntValue")Создаём новый Roblox-объект типа IntValue.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Появляется счётчик звёзд.
085Таблица уровнейИгровые системы / Игровая логика · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Проверяем условие. Если оно не выполнено, защищённый код не запускается.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Добавьте только один пример на каждое имя показателя; после Play смотри таблицу игроков.
local Players = game:GetService("Players")
local function setup(player)
local folder = player:FindFirstChild("leaderstats")
if not folder then
folder = Instance.new("Folder")
folder.Name = "leaderstats"
folder.Parent = player
end
local level = Instance.new("IntValue")
level.Name = "Level"
level.Value = 1
level.Parent = folder
end
Players.PlayerAdded:Connect(setup)
for _, player in ipairs(Players:GetPlayers()) do setup(player) end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local folder = player:FindFirstChild("leaderstats")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.if not folder thenПроверяем условие. Если оно не выполнено, защищённый код не запускается.folder = Instance.new("Folder")Создаём новый Roblox-объект типа Folder.folder.Name = "leaderstats"Присваиваем объекту имя, по которому другие скрипВы смогут его найти.folder.Parent = playerРазмещаем созданный объект внутри указанного родителя в Explorer.endЗавершаем блок функции, условия или цикла.local level = Instance.new("IntValue")Создаём новый Roblox-объект типа IntValue.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Появляется уровень 1.
086Таблица ключейИгровые системы / Игровая логика · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Проверяем условие. Если оно не выполнено, защищённый код не запускается.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Добавьте только один пример на каждое имя показателя; после Play смотри таблицу игроков.
local Players = game:GetService("Players")
local function setup(player)
local folder = player:FindFirstChild("leaderstats")
if not folder then
folder = Instance.new("Folder")
folder.Name = "leaderstats"
folder.Parent = player
end
local keys = Instance.new("IntValue")
keys.Name = "Keys"
keys.Parent = folder
end
Players.PlayerAdded:Connect(setup)
for _, player in ipairs(Players:GetPlayers()) do setup(player) end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local folder = player:FindFirstChild("leaderstats")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.if not folder thenПроверяем условие. Если оно не выполнено, защищённый код не запускается.folder = Instance.new("Folder")Создаём новый Roblox-объект типа Folder.folder.Name = "leaderstats"Присваиваем объекту имя, по которому другие скрипВы смогут его найти.folder.Parent = playerРазмещаем созданный объект внутри указанного родителя в Explorer.endЗавершаем блок функции, условия или цикла.local keys = Instance.new("IntValue")Создаём новый Roblox-объект типа IntValue.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Появляется счётчик ключей.
087Таблица опытаИгровые системы / Игровая логика · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Проверяем условие. Если оно не выполнено, защищённый код не запускается.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Добавьте только один пример на каждое имя показателя; после Play смотри таблицу игроков.
local Players = game:GetService("Players")
local function setup(player)
local folder = player:FindFirstChild("leaderstats")
if not folder then
folder = Instance.new("Folder")
folder.Name = "leaderstats"
folder.Parent = player
end
local xp = Instance.new("IntValue")
xp.Name = "XP"
xp.Parent = folder
end
Players.PlayerAdded:Connect(setup)
for _, player in ipairs(Players:GetPlayers()) do setup(player) end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local folder = player:FindFirstChild("leaderstats")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.if not folder thenПроверяем условие. Если оно не выполнено, защищённый код не запускается.folder = Instance.new("Folder")Создаём новый Roblox-объект типа Folder.folder.Name = "leaderstats"Присваиваем объекту имя, по которому другие скрипВы смогут его найти.folder.Parent = playerРазмещаем созданный объект внутри указанного родителя в Explorer.endЗавершаем блок функции, условия или цикла.local xp = Instance.new("IntValue")Создаём новый Roblox-объект типа IntValue.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Появляется опыт.
088Таблица кристалловИгровые системы / Игровая логика · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Проверяем условие. Если оно не выполнено, защищённый код не запускается.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Добавьте только один пример на каждое имя показателя; после Play смотри таблицу игроков.
local Players = game:GetService("Players")
local function setup(player)
local folder = player:FindFirstChild("leaderstats")
if not folder then
folder = Instance.new("Folder")
folder.Name = "leaderstats"
folder.Parent = player
end
local gems = Instance.new("IntValue")
gems.Name = "Gems"
gems.Parent = folder
end
Players.PlayerAdded:Connect(setup)
for _, player in ipairs(Players:GetPlayers()) do setup(player) end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local folder = player:FindFirstChild("leaderstats")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.if not folder thenПроверяем условие. Если оно не выполнено, защищённый код не запускается.folder = Instance.new("Folder")Создаём новый Roblox-объект типа Folder.folder.Name = "leaderstats"Присваиваем объекту имя, по которому другие скрипВы смогут его найти.folder.Parent = playerРазмещаем созданный объект внутри указанного родителя в Explorer.endЗавершаем блок функции, условия или цикла.local gems = Instance.new("IntValue")Создаём новый Roblox-объект типа IntValue.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Появляется счётчик кристаллов.
089Таблица контрольных точекИгровые системы / Игровая логика · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Проверяем условие. Если оно не выполнено, защищённый код не запускается.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Добавьте только один пример на каждое имя показателя; после Play смотри таблицу игроков.
local Players = game:GetService("Players")
local function setup(player)
local folder = player:FindFirstChild("leaderstats")
if not folder then
folder = Instance.new("Folder")
folder.Name = "leaderstats"
folder.Parent = player
end
local cp = Instance.new("IntValue")
cp.Name = "Checkpoint"
cp.Parent = folder
end
Players.PlayerAdded:Connect(setup)
for _, player in ipairs(Players:GetPlayers()) do setup(player) end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local folder = player:FindFirstChild("leaderstats")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.if not folder thenПроверяем условие. Если оно не выполнено, защищённый код не запускается.folder = Instance.new("Folder")Создаём новый Roblox-объект типа Folder.folder.Name = "leaderstats"Присваиваем объекту имя, по которому другие скрипВы смогут его найти.folder.Parent = playerРазмещаем созданный объект внутри указанного родителя в Explorer.endЗавершаем блок функции, условия или цикла.local cp = Instance.new("IntValue")Создаём новый Roblox-объект типа IntValue.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Появляется этап трассы.
090Таблица собранных предметовИгровые системы / Игровая логика · Средний
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Players, чтобы пользоваться его возможностями.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Проверяем условие. Если оно не выполнено, защищённый код не запускается.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Добавьте только один пример на каждое имя показателя; после Play смотри таблицу игроков.
local Players = game:GetService("Players")
local function setup(player)
local folder = player:FindFirstChild("leaderstats")
if not folder then
folder = Instance.new("Folder")
folder.Name = "leaderstats"
folder.Parent = player
end
local count = Instance.new("IntValue")
count.Name = "Collected"
count.Parent = folder
end
Players.PlayerAdded:Connect(setup)
for _, player in ipairs(Players:GetPlayers()) do setup(player) end
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Players = game:GetService("Players")Получаем сервис Roblox Players, чтобы пользоваться его возможностями.local folder = player:FindFirstChild("leaderstats")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.if not folder thenПроверяем условие. Если оно не выполнено, защищённый код не запускается.folder = Instance.new("Folder")Создаём новый Roblox-объект типа Folder.folder.Name = "leaderstats"Присваиваем объекту имя, по которому другие скрипВы смогут его найти.folder.Parent = playerРазмещаем созданный объект внутри указанного родителя в Explorer.endЗавершаем блок функции, условия или цикла.local count = Instance.new("IntValue")Создаём новый Roblox-объект типа IntValue.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Появляется счётчик предметов.
091Отправить уведомление клиентуСерверная практика / Сервер и безопасность · Продвинутый
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox ReplicatedStorage, чтобы пользоваться его возможностями.; Создаём новый Roblox-объект типа RemoteEvent.; Присваиваем объекту имя, по которому другие скрипВы смогут его найти.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService. Для показа текста понадобится отдельный LocalScript с обработчиком OnClientEvent.
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local event = Instance.new("RemoteEvent")
event.Name = "GameNotice"
event.Parent = ReplicatedStorage
game.Players.PlayerAdded:Connect(function(player)
task.wait(2)
event:FireClient(player, "Добро пожаловать!")
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local ReplicatedStorage = game:GetService("ReplicatedStorage")Получаем сервис Roblox ReplicatedStorage, чтобы пользоваться его возможностями.local event = Instance.new("RemoteEvent")Создаём новый Roblox-объект типа RemoteEvent.event.Name = "GameNotice"Присваиваем объекту имя, по которому другие скрипВы смогут его найти.event.Parent = ReplicatedStorageРазмещаем созданный объект внутри указанного родителя в Explorer.game.Players.PlayerAdded:Connect(function(player)Запускаем обработчик для нового игрока, когда тот входит на сервер.task.wait(2)Делаем паузу между действиями, позволяя другим задачам выполняться.end)Завершаем блок функции, условия или цикла.
Добавьте второе сообщение только одному игроку через FireClient.
Как проверить
Сервер отправляет сообщение клиенту.
092Принять серверное уведомлениеСерверная практика / Сервер и безопасность · Продвинутый
Что делает скрипт
Разбери действия по порядку: Ожидаем объект с точным именем GameNotice; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Получаем сообщение сервера на стороне конкретного игрока.; Выводим сообщение во вкладку Output Roblox Studio, а не на экран игрока.
Куда вставить
LocalScript в StarterPlayerScripts
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Добавьте LocalScript в StarterPlayer → StarterPlayerScripts. Используй вместе со скриптом «Отправить уведомление клиенту».
local event = game.ReplicatedStorage:WaitForChild("GameNotice")
event.OnClientEvent:Connect(function(message)
print("Уведомление:", message)
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local event = game.ReplicatedStorage:WaitForChild("GameNotice")Ожидаем объект с точным именем GameNotice; если имени нет, код будет ждать и Roblox может вывести предупреждение.event.OnClientEvent:Connect(function(message)Получаем сообщение сервера на стороне конкретного игрока.print("Уведомление:", message)Выводим сообщение во вкладку Output Roblox Studio, а не на экран игрока.end)Завершаем блок функции, условия или цикла.
Проверьте получение уведомления отдельным LocalScript в StarterPlayerScripts.
Как проверить
Сообщение от сервера видно в клиентском Output.
093Проверить дистанцию до двериСерверная практика / Сервер и безопасность · Продвинутый
Что делает скрипт
Разбери действия по порядку: Ожидаем объект с точным именем Door; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part с именем Door и ProximityPrompt в нём, затем Script в ServerScriptService.
local door = workspace:WaitForChild("Door")
local prompt = door:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
local root = player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if not root or (root.Position - door.Position).Magnitude > 10 then return end
door.CanCollide = false
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local door = workspace:WaitForChild("Door")Ожидаем объект с точным именем Door; если имени нет, код будет ждать и Roblox может вывести предупреждение.local prompt = door:WaitForChild("ProximityPrompt")Ожидаем объект с точным именем ProximityPrompt; если имени нет, код будет ждать и Roblox может вывести предупреждение.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия ProximityPrompt: код внутри функции выполняется при использовании подсказки.local root = player.Character and player.Character:FindFirstChild("HumanoidRootPart")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.if not root or (root.Position - door.Position).Magnitude > 10 then return endПроверяем условие. Если оно не выполнено, защищённый код не запускается.door.CanCollide = falseОтключаем столкновения, позволяя пройти сквозь деталь.end)Завершаем блок функции, условия или цикла.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
Дверь открывает только игрок рядом с ней.
094Ограничить частоту запросовСерверная практика / Сервер и безопасность · Продвинутый
Что делает скрипт
Разбери действия по порядку: Ожидаем объект с точным именем GameAction; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Обрабатываем запрос клиента на сервере; сервер обязан проверять право на действие и входные данные.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте RemoteEvent GameAction в ReplicatedStorage и Script в ServerScriptService; клиент может вызвать FireServer().
local event = game.ReplicatedStorage:WaitForChild("GameAction")
local last = {}
event.OnServerEvent:Connect(function(player)
local now = os.clock()
if now - (last[player] or -10) < 2 then return end
last[player] = now
print("Запрос принят:", player.Name)
end)
game.Players.PlayerRemoving:Connect(function(player) last[player] = nil end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local event = game.ReplicatedStorage:WaitForChild("GameAction")Ожидаем объект с точным именем GameAction; если имени нет, код будет ждать и Roblox может вывести предупреждение.local last = {}Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.event.OnServerEvent:Connect(function(player)Обрабатываем запрос клиента на сервере; сервер обязан проверять право на действие и входные данные.local now = os.clock()Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.if now - (last[player] or -10) < 2 then return endПроверяем условие. Если оно не выполнено, защищённый код не запускается.print("Запрос принят:", player.Name)Выводим сообщение во вкладку Output Roblox Studio, а не на экран игрока.end)Завершаем блок функции, условия или цикла.
Установите задержку 2 секунды и попробуйте отправлять запросы чаще.
Как проверить
Сервер принимает не чаще одного запроса за две секунды.
095Проверить стоимость покупкиСерверная практика / Сервер и безопасность · Продвинутый
Что делает скрипт
Разбери действия по порядку: Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Вместе с примером Stars создайте Script и вызывай buy(player) только из проверенного серверного обработчика.
local PRICE = 5
local function buy(player)
local stats = player:FindFirstChild("leaderstats")
local stars = stats and stats:FindFirstChild("Stars")
if not stars or stars.Value < PRICE then return false end
stars.Value -= PRICE
return true
end
print("Функция покупки готова")
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local PRICE = 5Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.local stats = player:FindFirstChild("leaderstats")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.local stars = stats and stats:FindFirstChild("Stars")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.if not stars or stars.Value < PRICE then return false endПроверяем условие. Если оно не выполнено, защищённый код не запускается.return trueПрерываем выполнение или возвращаем результат функции вызывающему коду.endЗавершаем блок функции, условия или цикла.print("Функция покупки готова")Выводим сообщение во вкладку Output Roblox Studio, а не на экран игрока.
Проверьте покупку при 4 и 5 звёздах. Обрати внимание: этот фрагмент объявляет функцию, но не вызывает её.
Как проверить
Сервер списывает фиксированную цену; пример — функция для интеграции.
096Сохранить число через DataStoreСерверная практика / Сервер и безопасность · Продвинутый
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox DataStoreService, чтобы пользоваться его возможностями.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Используй опубликованный тестовый плейс; включи Studio Access to API Services в настройках безопасности. Для промышленной игры потребуются повторные попытки и сохранение при закрытии сервера.
local DSS = game:GetService("DataStoreService")
local store = DSS:GetDataStore("IgrovenokDemoScoreV1")
game.Players.PlayerRemoving:Connect(function(player)
local score = player:GetAttribute("DemoScore") or 0
local ok, err = pcall(function()
store:SetAsync(tostring(player.UserId), score)
end)
if not ok then warn("Ошибка записи:", err) end
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local DSS = game:GetService("DataStoreService")Получаем сервис Roblox DataStoreService, чтобы пользоваться его возможностями.local store = DSS:GetDataStore("IgrovenokDemoScoreV1")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.local score = player:GetAttribute("DemoScore") or 0Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.local ok, err = pcall(function()Защищаем опасную операцию: получаем статус успеха и сообщение об ошибке, не останавливая весь скрипт.store:SetAsync(tostring(player.UserId), score)Записываем данные в DataStore; возможные ошибки нужно обрабатывать и предусматривать повторные попытки.end)Завершаем блок функции, условия или цикла.if not ok then warn("Ошибка записи:", err) endПоказываем диагностическое предупреждение в Output.
Сохраните DemoScore, выйди и войди в опубликованную тестовую игру; проверьте доступ к API.
Как проверить
При штатном выходе выполняется попытка записи числа в DataStore.
097Загрузить число из DataStoreСерверная практика / Сервер и безопасность · Продвинутый
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox DataStoreService, чтобы пользоваться его возможностями.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Запускаем обработчик для нового игрока, когда тот входит на сервер.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Используй тот же опубликованный тестовый плейс и имя хранилища, что в примере сохранения.
local DSS = game:GetService("DataStoreService")
local store = DSS:GetDataStore("IgrovenokDemoScoreV1")
game.Players.PlayerAdded:Connect(function(player)
local ok, value = pcall(function()
return store:GetAsync(tostring(player.UserId))
end)
if ok then player:SetAttribute("DemoScore", tonumber(value) or 0)
else warn("Ошибка загрузки:", value) end
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local DSS = game:GetService("DataStoreService")Получаем сервис Roblox DataStoreService, чтобы пользоваться его возможностями.local store = DSS:GetDataStore("IgrovenokDemoScoreV1")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.game.Players.PlayerAdded:Connect(function(player)Запускаем обработчик для нового игрока, когда тот входит на сервер.local ok, value = pcall(function()Защищаем опасную операцию: получаем статус успеха и сообщение об ошибке, не останавливая весь скрипт.return store:GetAsync(tostring(player.UserId))Считываем данные из DataStore; запрос может завершиться ошибкой.end)Завершаем блок функции, условия или цикла.if ok then player:SetAttribute("DemoScore", tonumber(value) or 0)Проверяем условие. Если оно не выполнено, защищённый код не запускается.else warn("Ошибка загрузки:", value) endПоказываем диагностическое предупреждение в Output.
Проверь, что при ошибке загрузки не стоит перезаписывать существующие данные нулём.
Как проверить
Число загружается в атрибут DemoScore.
098Случайный выбор картыСерверная практика / Сервер и безопасность · Продвинутый
Что делает скрипт
Разбери действия по порядку: Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Script в ServerScriptService и запустите Play. После выбора подключи загрузку собственной карты.
local maps = {"Лес", "Пещера", "Пустыня"}
local rng = Random.new()
local selected = maps[rng:NextInteger(1, #maps)]
print("Следующая карта:", selected)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local maps = {"Лес", "Пещера", "Пустыня"}Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.local rng = Random.new()Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.local selected = maps[rng:NextInteger(1, #maps)]Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.print("Следующая карта:", selected)Выводим сообщение во вкладку Output Roblox Studio, а не на экран игрока.
Измените одно значение или имя объекта в коде, предскажи результат и проверьте его в режиме Play. Объясни, почему результат изменился.
Как проверить
В Output появляется случайное название карты.
099Разделить игроков на командыСерверная практика / Сервер и безопасность · Продвинутый
Что делает скрипт
Разбери действия по порядку: Получаем сервис Roblox Teams, чтобы пользоваться его возможностями.; Ожидаем объект с точным именем Red; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Ожидаем объект с точным именем Blue; если имени нет, код будет ждать и Roblox может вывести предупреждение.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Добавьте сервис Teams с командами Red и Blue, затем ServerScriptService → Script.
local Teams = game:GetService("Teams")
local red = Teams:WaitForChild("Red")
local blue = Teams:WaitForChild("Blue")
game.Players.PlayerAdded:Connect(function(player)
player.Team = #red:GetPlayers() <= #blue:GetPlayers() and red or blue
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local Teams = game:GetService("Teams")Получаем сервис Roblox Teams, чтобы пользоваться его возможностями.local red = Teams:WaitForChild("Red")Ожидаем объект с точным именем Red; если имени нет, код будет ждать и Roblox может вывести предупреждение.local blue = Teams:WaitForChild("Blue")Ожидаем объект с точным именем Blue; если имени нет, код будет ждать и Roblox может вывести предупреждение.game.Players.PlayerAdded:Connect(function(player)Запускаем обработчик для нового игрока, когда тот входит на сервер.end)Завершаем блок функции, условия или цикла.
Проверьте команды у двух игроков; создайте Red и Blue в Teams.
Как проверить
Новые игроки распределяются между двумя командами.
100Проверить контрольные точкиСерверная практика / Сервер и безопасность · Продвинутый
Что делает скрипт
Разбери действия по порядку: Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.; Ожидаем объект с точным именем Finish; если имени нет, код будет ждать и Roblox может вывести предупреждение.; Подписываемся на касание детали. Одно касание может вызвать событие несколько раз.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Создайте перечисленные в инструкции объекВы с точными именами.
- Выберите верный тип скрипта и вставьте исходный код.
- Запустите Play и сравните результат с описанием ниже.
Создайте Part Finish. Отдельными скриптами последовательно устанавливай атрибут Checkpoint равным 1, 2, 3 только при реальном прохождении.
local required = 3
local finish = workspace:WaitForChild("Finish")
finish.Touched:Connect(function(hit)
local character = hit.Parent
local player = character and game.Players:GetPlayerFromCharacter(character)
local hum = character and character:FindFirstChildOfClass("Humanoid")
if not player or not hum or hum.Health <= 0 then return end
if player:GetAttribute("Checkpoint") ~= required then return end
if player:GetAttribute("Finished") then return end
player:SetAttribute("Finished", true)
print(player.Name .. " завершил маршрут!")
end)
Как работает этот код
Разбери каждую строку: где получается объект, какое событие или условие используется и что изменяется после выполнения.
Разбор строк
local required = 3Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.local finish = workspace:WaitForChild("Finish")Ожидаем объект с точным именем Finish; если имени нет, код будет ждать и Roblox может вывести предупреждение.finish.Touched:Connect(function(hit)Подписываемся на касание детали. Одно касание может вызвать событие несколько раз.local character = hit.ParentСоздаём локальную переменную для дальнейших вычислений или рабоВы с объектом.local player = character and game.Players:GetPlayerFromCharacter(character)Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.local hum = character and character:FindFirstChildOfClass("Humanoid")Создаём локальную переменную для дальнейших вычислений или рабоВы с объектом.if not player or not hum or hum.Health <= 0 then return endПроверяем условие. Если оно не выполнено, защищённый код не запускается.if player:GetAttribute("Checkpoint") ~= required then return endПроверяем условие. Если оно не выполнено, защищённый код не запускается.
Коснись финиша при Checkpoint = 2 и при Checkpoint = 3.
Как проверить
Финиш засчитывается лишь после всех трёх этапов.
101Ограничить скорость игрокаLuau и алгоритмы / Математика в играх · Средний
Что делает скрипт
math.clamp ограничивает значение между нижней и верхней границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите скрипт и сравните requested, maxAllowed и safeValue в Output.
local requested = 39
local maxAllowed = 24
local safeValue = math.clamp(requested, 0, maxAllowed)
print("Ограничить скорость игрока:", safeValue)
Как работает этот код
Числовые ограничения. math.clamp ограничивает значение между нижней и верхней границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local requested = 39Создаёт локальную переменную, которой скрипт пользуется дальше.local safeValue = math.clamp(requested, 0, maxAllowed)Ограничивает число заданными минимальным и максимальным значениями; значение не применяется к игроку автоматически.print("Ограничить скорость игрока:", safeValue)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Изменяй предел и запрашиваемое значение; проверьте результат в Output. Это вычисление, а не настройка персонажа.
Как проверить
В Output получится число, не превышающее установленную границу.
102Ограничить высоту прыжкаLuau и алгоритмы / Математика в играх · Средний
Что делает скрипт
math.clamp ограничивает значение между нижней и верхней границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите скрипт и сравните requested, maxAllowed и safeValue в Output.
local requested = 75
local maxAllowed = 60
local safeValue = math.clamp(requested, 0, maxAllowed)
print("Ограничить высоту прыжка:", safeValue)
Как работает этот код
Числовые ограничения. math.clamp ограничивает значение между нижней и верхней границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local requested = 75Создаёт локальную переменную, которой скрипт пользуется дальше.local safeValue = math.clamp(requested, 0, maxAllowed)Ограничивает число заданными минимальным и максимальным значениями; значение не применяется к игроку автоматически.print("Ограничить высоту прыжка:", safeValue)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Изменяй предел и запрашиваемое значение; проверьте результат в Output. Это вычисление, а не настройка персонажа.
Как проверить
В Output получится число, не превышающее установленную границу.
103Ограничить максимальные очкиLuau и алгоритмы / Математика в играх · Средний
Что делает скрипт
math.clamp ограничивает значение между нижней и верхней границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите скрипт и сравните requested, maxAllowed и safeValue в Output.
local requested = 115
local maxAllowed = 100
local safeValue = math.clamp(requested, 0, maxAllowed)
print("Ограничить максимальные очки:", safeValue)
Как работает этот код
Числовые ограничения. math.clamp ограничивает значение между нижней и верхней границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local requested = 115Создаёт локальную переменную, которой скрипт пользуется дальше.local safeValue = math.clamp(requested, 0, maxAllowed)Ограничивает число заданными минимальным и максимальным значениями; значение не применяется к игроку автоматически.print("Ограничить максимальные очки:", safeValue)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Изменяй предел и запрашиваемое значение; проверьте результат в Output. Это вычисление, а не настройка персонажа.
Как проверить
В Output получится число, не превышающее установленную границу.
104Задать минимальное здоровьеLuau и алгоритмы / Математика в играх · Средний
Что делает скрипт
math.clamp ограничивает значение между нижней и верхней границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите скрипт и сравните requested, maxAllowed и safeValue в Output.
local requested = 16
local maxAllowed = 1
local safeValue = math.clamp(requested, 0, maxAllowed)
print("Задать минимальное здоровье:", safeValue)
Как работает этот код
Числовые ограничения. math.clamp ограничивает значение между нижней и верхней границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local requested = 16Создаёт локальную переменную, которой скрипт пользуется дальше.local safeValue = math.clamp(requested, 0, maxAllowed)Ограничивает число заданными минимальным и максимальным значениями; значение не применяется к игроку автоматически.print("Задать минимальное здоровье:", safeValue)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Изменяй предел и запрашиваемое значение; проверьте результат в Output. Это вычисление, а не настройка персонажа.
Как проверить
В Output получится число, не превышающее установленную границу.
105Ограничить силу ускоренияLuau и алгоритмы / Математика в играх · Средний
Что делает скрипт
math.clamp ограничивает значение между нижней и верхней границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите скрипт и сравните requested, maxAllowed и safeValue в Output.
local requested = 50
local maxAllowed = 35
local safeValue = math.clamp(requested, 0, maxAllowed)
print("Ограничить силу ускорения:", safeValue)
Как работает этот код
Числовые ограничения. math.clamp ограничивает значение между нижней и верхней границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local requested = 50Создаёт локальную переменную, которой скрипт пользуется дальше.local safeValue = math.clamp(requested, 0, maxAllowed)Ограничивает число заданными минимальным и максимальным значениями; значение не применяется к игроку автоматически.print("Ограничить силу ускорения:", safeValue)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Изменяй предел и запрашиваемое значение; проверьте результат в Output. Это вычисление, а не настройка персонажа.
Как проверить
В Output получится число, не превышающее установленную границу.
106Ограничить цену улучшенияLuau и алгоритмы / Математика в играх · Средний
Что делает скрипт
math.clamp ограничивает значение между нижней и верхней границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите скрипт и сравните requested, maxAllowed и safeValue в Output.
local requested = 65
local maxAllowed = 50
local safeValue = math.clamp(requested, 0, maxAllowed)
print("Ограничить цену улучшения:", safeValue)
Как работает этот код
Числовые ограничения. math.clamp ограничивает значение между нижней и верхней границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local requested = 65Создаёт локальную переменную, которой скрипт пользуется дальше.local safeValue = math.clamp(requested, 0, maxAllowed)Ограничивает число заданными минимальным и максимальным значениями; значение не применяется к игроку автоматически.print("Ограничить цену улучшения:", safeValue)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Изменяй предел и запрашиваемое значение; проверьте результат в Output. Это вычисление, а не настройка персонажа.
Как проверить
В Output получится число, не превышающее установленную границу.
107Ограничить время раундаLuau и алгоритмы / Математика в играх · Средний
Что делает скрипт
math.clamp ограничивает значение между нижней и верхней границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите скрипт и сравните requested, maxAllowed и safeValue в Output.
local requested = 195
local maxAllowed = 180
local safeValue = math.clamp(requested, 0, maxAllowed)
print("Ограничить время раунда:", safeValue)
Как работает этот код
Числовые ограничения. math.clamp ограничивает значение между нижней и верхней границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local requested = 195Создаёт локальную переменную, которой скрипт пользуется дальше.local safeValue = math.clamp(requested, 0, maxAllowed)Ограничивает число заданными минимальным и максимальным значениями; значение не применяется к игроку автоматически.print("Ограничить время раунда:", safeValue)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Изменяй предел и запрашиваемое значение; проверьте результат в Output. Это вычисление, а не настройка персонажа.
Как проверить
В Output получится число, не превышающее установленную границу.
108Ограничить число попытокLuau и алгоритмы / Математика в играх · Средний
Что делает скрипт
math.clamp ограничивает значение между нижней и верхней границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите скрипт и сравните requested, maxAllowed и safeValue в Output.
local requested = 18
local maxAllowed = 3
local safeValue = math.clamp(requested, 0, maxAllowed)
print("Ограничить число попыток:", safeValue)
Как работает этот код
Числовые ограничения. math.clamp ограничивает значение между нижней и верхней границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local requested = 18Создаёт локальную переменную, которой скрипт пользуется дальше.local safeValue = math.clamp(requested, 0, maxAllowed)Ограничивает число заданными минимальным и максимальным значениями; значение не применяется к игроку автоматически.print("Ограничить число попыток:", safeValue)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Изменяй предел и запрашиваемое значение; проверьте результат в Output. Это вычисление, а не настройка персонажа.
Как проверить
В Output получится число, не превышающее установленную границу.
109Ограничить дальность взаимодействияLuau и алгоритмы / Математика в играх · Средний
Что делает скрипт
math.clamp ограничивает значение между нижней и верхней границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите скрипт и сравните requested, maxAllowed и safeValue в Output.
local requested = 27
local maxAllowed = 12
local safeValue = math.clamp(requested, 0, maxAllowed)
print("Ограничить дальность взаимодействия:", safeValue)
Как работает этот код
Числовые ограничения. math.clamp ограничивает значение между нижней и верхней границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local requested = 27Создаёт локальную переменную, которой скрипт пользуется дальше.local safeValue = math.clamp(requested, 0, maxAllowed)Ограничивает число заданными минимальным и максимальным значениями; значение не применяется к игроку автоматически.print("Ограничить дальность взаимодействия:", safeValue)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Изменяй предел и запрашиваемое значение; проверьте результат в Output. Это вычисление, а не настройка персонажа.
Как проверить
В Output получится число, не превышающее установленную границу.
110Ограничить запас энергииLuau и алгоритмы / Математика в играх · Средний
Что делает скрипт
math.clamp ограничивает значение между нижней и верхней границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите скрипт и сравните requested, maxAllowed и safeValue в Output.
local requested = 90
local maxAllowed = 75
local safeValue = math.clamp(requested, 0, maxAllowed)
print("Ограничить запас энергии:", safeValue)
Как работает этот код
Числовые ограничения. math.clamp ограничивает значение между нижней и верхней границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local requested = 90Создаёт локальную переменную, которой скрипт пользуется дальше.local safeValue = math.clamp(requested, 0, maxAllowed)Ограничивает число заданными минимальным и максимальным значениями; значение не применяется к игроку автоматически.print("Ограничить запас энергии:", safeValue)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Изменяй предел и запрашиваемое значение; проверьте результат в Output. Это вычисление, а не настройка персонажа.
Как проверить
В Output получится число, не превышающее установленную границу.
111Собрать сообщение о победеLuau и алгоритмы / Строки и сообщения · Начальный
Что делает скрипт
string.format вставляет значения в строку по заданному шаблону.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте Output и изменяй значение number.
local title = "Победа"
local number = 3
local message = string.format("%s: %d", title, number)
print(message)
Как работает этот код
Строки сообщений. string.format вставляет значения в строку по заданному шаблону. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local title = "Победа"Создаёт локальную переменную, которой скрипт пользуется дальше.local message = string.format("%s: %d", title, number)Формирует строку по шаблону: %s — текст, %d — целое число.print(message)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Измените подпись и число; проверьте итоговую строку в Output. Надпись пока не появляется на экране игрока.
Как проверить
Output покажет подпись и число.
112Подписать получение звездыLuau и алгоритмы / Строки и сообщения · Начальный
Что делает скрипт
string.format вставляет значения в строку по заданному шаблону.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте Output и изменяй значение number.
local title = "Звезда"
local number = 3
local message = string.format("%s: %d", title, number)
print(message)
Как работает этот код
Строки сообщений. string.format вставляет значения в строку по заданному шаблону. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local title = "Звезда"Создаёт локальную переменную, которой скрипт пользуется дальше.local message = string.format("%s: %d", title, number)Формирует строку по шаблону: %s — текст, %d — целое число.print(message)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Измените подпись и число; проверьте итоговую строку в Output. Надпись пока не появляется на экране игрока.
Как проверить
Output покажет подпись и число.
113Создать объявление о стартеLuau и алгоритмы / Строки и сообщения · Начальный
Что делает скрипт
string.format вставляет значения в строку по заданному шаблону.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте Output и изменяй значение number.
local title = "Старт"
local number = 3
local message = string.format("%s: %d", title, number)
print(message)
Как работает этот код
Строки сообщений. string.format вставляет значения в строку по заданному шаблону. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local title = "Старт"Создаёт локальную переменную, которой скрипт пользуется дальше.local message = string.format("%s: %d", title, number)Формирует строку по шаблону: %s — текст, %d — целое число.print(message)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Измените подпись и число; проверьте итоговую строку в Output. Надпись пока не появляется на экране игрока.
Как проверить
Output покажет подпись и число.
114Показать имя картыLuau и алгоритмы / Строки и сообщения · Начальный
Что делает скрипт
string.format вставляет значения в строку по заданному шаблону.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте Output и изменяй значение number.
local title = "Остров"
local number = 3
local message = string.format("%s: %d", title, number)
print(message)
Как работает этот код
Строки сообщений. string.format вставляет значения в строку по заданному шаблону. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local title = "Остров"Создаёт локальную переменную, которой скрипт пользуется дальше.local message = string.format("%s: %d", title, number)Формирует строку по шаблону: %s — текст, %d — целое число.print(message)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Измените подпись и число; проверьте итоговую строку в Output. Надпись пока не появляется на экране игрока.
Как проверить
Output покажет подпись и число.
115Подписать финальный счётLuau и алгоритмы / Строки и сообщения · Начальный
Что делает скрипт
string.format вставляет значения в строку по заданному шаблону.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте Output и изменяй значение number.
local title = "Очки"
local number = 3
local message = string.format("%s: %d", title, number)
print(message)
Как работает этот код
Строки сообщений. string.format вставляет значения в строку по заданному шаблону. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local title = "Очки"Создаёт локальную переменную, которой скрипт пользуется дальше.local message = string.format("%s: %d", title, number)Формирует строку по шаблону: %s — текст, %d — целое число.print(message)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Измените подпись и число; проверьте итоговую строку в Output. Надпись пока не появляется на экране игрока.
Как проверить
Output покажет подпись и число.
116Отобразить название командыLuau и алгоритмы / Строки и сообщения · Начальный
Что делает скрипт
string.format вставляет значения в строку по заданному шаблону.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте Output и изменяй значение number.
local title = "Синие"
local number = 3
local message = string.format("%s: %d", title, number)
print(message)
Как работает этот код
Строки сообщений. string.format вставляет значения в строку по заданному шаблону. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local title = "Синие"Создаёт локальную переменную, которой скрипт пользуется дальше.local message = string.format("%s: %d", title, number)Формирует строку по шаблону: %s — текст, %d — целое число.print(message)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Измените подпись и число; проверьте итоговую строку в Output. Надпись пока не появляется на экране игрока.
Как проверить
Output покажет подпись и число.
117Создать текст магазинаLuau и алгоритмы / Строки и сообщения · Начальный
Что делает скрипт
string.format вставляет значения в строку по заданному шаблону.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте Output и изменяй значение number.
local title = "Магазин"
local number = 3
local message = string.format("%s: %d", title, number)
print(message)
Как работает этот код
Строки сообщений. string.format вставляет значения в строку по заданному шаблону. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local title = "Магазин"Создаёт локальную переменную, которой скрипт пользуется дальше.local message = string.format("%s: %d", title, number)Формирует строку по шаблону: %s — текст, %d — целое число.print(message)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Измените подпись и число; проверьте итоговую строку в Output. Надпись пока не появляется на экране игрока.
Как проверить
Output покажет подпись и число.
118Собрать надпись для кнопкиLuau и алгоритмы / Строки и сообщения · Начальный
Что делает скрипт
string.format вставляет значения в строку по заданному шаблону.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте Output и изменяй значение number.
local title = "Играть"
local number = 3
local message = string.format("%s: %d", title, number)
print(message)
Как работает этот код
Строки сообщений. string.format вставляет значения в строку по заданному шаблону. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local title = "Играть"Создаёт локальную переменную, которой скрипт пользуется дальше.local message = string.format("%s: %d", title, number)Формирует строку по шаблону: %s — текст, %d — целое число.print(message)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Измените подпись и число; проверьте итоговую строку в Output. Надпись пока не появляется на экране игрока.
Как проверить
Output покажет подпись и число.
119Показать название предметаLuau и алгоритмы / Строки и сообщения · Начальный
Что делает скрипт
string.format вставляет значения в строку по заданному шаблону.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте Output и изменяй значение number.
local title = "Ласты"
local number = 3
local message = string.format("%s: %d", title, number)
print(message)
Как работает этот код
Строки сообщений. string.format вставляет значения в строку по заданному шаблону. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local title = "Ласты"Создаёт локальную переменную, которой скрипт пользуется дальше.local message = string.format("%s: %d", title, number)Формирует строку по шаблону: %s — текст, %d — целое число.print(message)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Измените подпись и число; проверьте итоговую строку в Output. Надпись пока не появляется на экране игрока.
Как проверить
Output покажет подпись и число.
120Сформировать сообщение об уровнеLuau и алгоритмы / Строки и сообщения · Начальный
Что делает скрипт
string.format вставляет значения в строку по заданному шаблону.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте Output и изменяй значение number.
local title = "Уровень"
local number = 3
local message = string.format("%s: %d", title, number)
print(message)
Как работает этот код
Строки сообщений. string.format вставляет значения в строку по заданному шаблону. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local title = "Уровень"Создаёт локальную переменную, которой скрипт пользуется дальше.local message = string.format("%s: %d", title, number)Формирует строку по шаблону: %s — текст, %d — целое число.print(message)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Измените подпись и число; проверьте итоговую строку в Output. Надпись пока не появляется на экране игрока.
Как проверить
Output покажет подпись и число.
121Доступ при пяти звёздахLuau и алгоритмы / Условия и проверки · Начальный
Что делает скрипт
if/else выбирает одну из двух ветвей в зависимости от сравнения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Измените current на число больше required и запустите Play.
local current = 4
local required = 5
if current >= required then
print("Условие выполнено")
else
print("Нужно ещё:", required - current)
end
Как работает этот код
Проверка условий. if/else выбирает одну из двух ветвей в зависимости от сравнения. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local current = 4Создаёт локальную переменную, которой скрипт пользуется дальше.if current >= required thenПроверяет, достигнуто ли необходимое количество.print("Условие выполнено")Выводит значение в окно Output; само по себе не меняет игровой интерфейс.elseНачинает ветку для случая, когда условие не выполнено.print("Нужно ещё:", required - current)Вычисляет, сколько единиц не хватает до порога.
Измените current сначала ниже порога, затем на пороге и выше. Сравните две ветки вывода.
Как проверить
При разных значениях появятся разные сообщения.
122Доступ после трёх победLuau и алгоритмы / Условия и проверки · Начальный
Что делает скрипт
if/else выбирает одну из двух ветвей в зависимости от сравнения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Измените current на число больше required и запустите Play.
local current = 2
local required = 3
if current >= required then
print("Условие выполнено")
else
print("Нужно ещё:", required - current)
end
Как работает этот код
Проверка условий. if/else выбирает одну из двух ветвей в зависимости от сравнения. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local current = 2Создаёт локальную переменную, которой скрипт пользуется дальше.if current >= required thenПроверяет, достигнуто ли необходимое количество.print("Условие выполнено")Выводит значение в окно Output; само по себе не меняет игровой интерфейс.elseНачинает ветку для случая, когда условие не выполнено.print("Нужно ещё:", required - current)Вычисляет, сколько единиц не хватает до порога.
Измените current сначала ниже порога, затем на пороге и выше. Сравните две ветки вывода.
Как проверить
При разных значениях появятся разные сообщения.
123Новый уровень после десяти очковLuau и алгоритмы / Условия и проверки · Начальный
Что делает скрипт
if/else выбирает одну из двух ветвей в зависимости от сравнения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Измените current на число больше required и запустите Play.
local current = 9
local required = 10
if current >= required then
print("Условие выполнено")
else
print("Нужно ещё:", required - current)
end
Как работает этот код
Проверка условий. if/else выбирает одну из двух ветвей в зависимости от сравнения. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local current = 9Создаёт локальную переменную, которой скрипт пользуется дальше.if current >= required thenПроверяет, достигнуто ли необходимое количество.print("Условие выполнено")Выводит значение в окно Output; само по себе не меняет игровой интерфейс.elseНачинает ветку для случая, когда условие не выполнено.print("Нужно ещё:", required - current)Вычисляет, сколько единиц не хватает до порога.
Измените current сначала ниже порога, затем на пороге и выше. Сравните две ветки вывода.
Как проверить
При разных значениях появятся разные сообщения.
124Бонус после двух находокLuau и алгоритмы / Условия и проверки · Начальный
Что делает скрипт
if/else выбирает одну из двух ветвей в зависимости от сравнения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Измените current на число больше required и запустите Play.
local current = 1
local required = 2
if current >= required then
print("Условие выполнено")
else
print("Нужно ещё:", required - current)
end
Как работает этот код
Проверка условий. if/else выбирает одну из двух ветвей в зависимости от сравнения. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local current = 1Создаёт локальную переменную, которой скрипт пользуется дальше.if current >= required thenПроверяет, достигнуто ли необходимое количество.print("Условие выполнено")Выводит значение в окно Output; само по себе не меняет игровой интерфейс.elseНачинает ветку для случая, когда условие не выполнено.print("Нужно ещё:", required - current)Вычисляет, сколько единиц не хватает до порога.
Измените current сначала ниже порога, затем на пороге и выше. Сравните две ветки вывода.
Как проверить
При разных значениях появятся разные сообщения.
125Доступ к арене после четырёх этаповLuau и алгоритмы / Условия и проверки · Начальный
Что делает скрипт
if/else выбирает одну из двух ветвей в зависимости от сравнения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Измените current на число больше required и запустите Play.
local current = 3
local required = 4
if current >= required then
print("Условие выполнено")
else
print("Нужно ещё:", required - current)
end
Как работает этот код
Проверка условий. if/else выбирает одну из двух ветвей в зависимости от сравнения. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local current = 3Создаёт локальную переменную, которой скрипт пользуется дальше.if current >= required thenПроверяет, достигнуто ли необходимое количество.print("Условие выполнено")Выводит значение в окно Output; само по себе не меняет игровой интерфейс.elseНачинает ветку для случая, когда условие не выполнено.print("Нужно ещё:", required - current)Вычисляет, сколько единиц не хватает до порога.
Измените current сначала ниже порога, затем на пороге и выше. Сравните две ветки вывода.
Как проверить
При разных значениях появятся разные сообщения.
126Открыть сундук после шести ключейLuau и алгоритмы / Условия и проверки · Начальный
Что делает скрипт
if/else выбирает одну из двух ветвей в зависимости от сравнения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Измените current на число больше required и запустите Play.
local current = 5
local required = 6
if current >= required then
print("Условие выполнено")
else
print("Нужно ещё:", required - current)
end
Как работает этот код
Проверка условий. if/else выбирает одну из двух ветвей в зависимости от сравнения. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local current = 5Создаёт локальную переменную, которой скрипт пользуется дальше.if current >= required thenПроверяет, достигнуто ли необходимое количество.print("Условие выполнено")Выводит значение в окно Output; само по себе не меняет игровой интерфейс.elseНачинает ветку для случая, когда условие не выполнено.print("Нужно ещё:", required - current)Вычисляет, сколько единиц не хватает до порога.
Измените current сначала ниже порога, затем на пороге и выше. Сравните две ветки вывода.
Как проверить
При разных значениях появятся разные сообщения.
127Пропуск на этаж после восьми заданийLuau и алгоритмы / Условия и проверки · Начальный
Что делает скрипт
if/else выбирает одну из двух ветвей в зависимости от сравнения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Измените current на число больше required и запустите Play.
local current = 7
local required = 8
if current >= required then
print("Условие выполнено")
else
print("Нужно ещё:", required - current)
end
Как работает этот код
Проверка условий. if/else выбирает одну из двух ветвей в зависимости от сравнения. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local current = 7Создаёт локальную переменную, которой скрипт пользуется дальше.if current >= required thenПроверяет, достигнуто ли необходимое количество.print("Условие выполнено")Выводит значение в окно Output; само по себе не меняет игровой интерфейс.elseНачинает ветку для случая, когда условие не выполнено.print("Нужно ещё:", required - current)Вычисляет, сколько единиц не хватает до порога.
Измените current сначала ниже порога, затем на пороге и выше. Сравните две ветки вывода.
Как проверить
При разных значениях появятся разные сообщения.
128Получить значок после семи игрLuau и алгоритмы / Условия и проверки · Начальный
Что делает скрипт
if/else выбирает одну из двух ветвей в зависимости от сравнения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Измените current на число больше required и запустите Play.
local current = 6
local required = 7
if current >= required then
print("Условие выполнено")
else
print("Нужно ещё:", required - current)
end
Как работает этот код
Проверка условий. if/else выбирает одну из двух ветвей в зависимости от сравнения. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local current = 6Создаёт локальную переменную, которой скрипт пользуется дальше.if current >= required thenПроверяет, достигнуто ли необходимое количество.print("Условие выполнено")Выводит значение в окно Output; само по себе не меняет игровой интерфейс.elseНачинает ветку для случая, когда условие не выполнено.print("Нужно ещё:", required - current)Вычисляет, сколько единиц не хватает до порога.
Измените current сначала ниже порога, затем на пороге и выше. Сравните две ветки вывода.
Как проверить
При разных значениях появятся разные сообщения.
129Открыть магазин после девяти монетLuau и алгоритмы / Условия и проверки · Начальный
Что делает скрипт
if/else выбирает одну из двух ветвей в зависимости от сравнения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Измените current на число больше required и запустите Play.
local current = 8
local required = 9
if current >= required then
print("Условие выполнено")
else
print("Нужно ещё:", required - current)
end
Как работает этот код
Проверка условий. if/else выбирает одну из двух ветвей в зависимости от сравнения. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local current = 8Создаёт локальную переменную, которой скрипт пользуется дальше.if current >= required thenПроверяет, достигнуто ли необходимое количество.print("Условие выполнено")Выводит значение в окно Output; само по себе не меняет игровой интерфейс.elseНачинает ветку для случая, когда условие не выполнено.print("Нужно ещё:", required - current)Вычисляет, сколько единиц не хватает до порога.
Измените current сначала ниже порога, затем на пороге и выше. Сравните две ветки вывода.
Как проверить
При разных значениях появятся разные сообщения.
130Завершить цель после двадцати очковLuau и алгоритмы / Условия и проверки · Начальный
Что делает скрипт
if/else выбирает одну из двух ветвей в зависимости от сравнения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Измените current на число больше required и запустите Play.
local current = 19
local required = 20
if current >= required then
print("Условие выполнено")
else
print("Нужно ещё:", required - current)
end
Как работает этот код
Проверка условий. if/else выбирает одну из двух ветвей в зависимости от сравнения. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local current = 19Создаёт локальную переменную, которой скрипт пользуется дальше.if current >= required thenПроверяет, достигнуто ли необходимое количество.print("Условие выполнено")Выводит значение в окно Output; само по себе не меняет игровой интерфейс.elseНачинает ветку для случая, когда условие не выполнено.print("Нужно ещё:", required - current)Вычисляет, сколько единиц не хватает до порога.
Измените current сначала ниже порога, затем на пороге и выше. Сравните две ветки вывода.
Как проверить
При разных значениях появятся разные сообщения.
131Бросок кубикаLuau и алгоритмы / Случайные игровые события · Начальный
Что делает скрипт
Random.new создаёт генератор, NextInteger выбирает целое число между границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Несколько раз нажмите Play и сравните числа в Output.
local random = Random.new()
local chosen = random:NextInteger(1, 6)
print("Выбран номер:", chosen)
Как работает этот код
Случайный выбор. Random.new создаёт генератор, NextInteger выбирает целое число между границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local random = Random.new()Создаёт генератор случайных чисел.local chosen = random:NextInteger(1, 6)Выбирает целое число включительно между указанными границами.print("Выбран номер:", chosen)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Перезапустите Play несколько раз, выпиши результаВы и проверь, попадают ли они в диапазон.
Как проверить
Выпадает целое число из заданного диапазона.
132Колесо из восьми призовLuau и алгоритмы / Случайные игровые события · Начальный
Что делает скрипт
Random.new создаёт генератор, NextInteger выбирает целое число между границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Несколько раз нажмите Play и сравните числа в Output.
local random = Random.new()
local chosen = random:NextInteger(1, 8)
print("Выбран номер:", chosen)
Как работает этот код
Случайный выбор. Random.new создаёт генератор, NextInteger выбирает целое число между границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local random = Random.new()Создаёт генератор случайных чисел.local chosen = random:NextInteger(1, 8)Выбирает целое число включительно между указанными границами.print("Выбран номер:", chosen)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Перезапустите Play несколько раз, выпиши результаВы и проверь, попадают ли они в диапазон.
Как проверить
Выпадает целое число из заданного диапазона.
133Выбор одного из четырёх порталовLuau и алгоритмы / Случайные игровые события · Начальный
Что делает скрипт
Random.new создаёт генератор, NextInteger выбирает целое число между границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Несколько раз нажмите Play и сравните числа в Output.
local random = Random.new()
local chosen = random:NextInteger(1, 4)
print("Выбран номер:", chosen)
Как работает этот код
Случайный выбор. Random.new создаёт генератор, NextInteger выбирает целое число между границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local random = Random.new()Создаёт генератор случайных чисел.local chosen = random:NextInteger(1, 4)Выбирает целое число включительно между указанными границами.print("Выбран номер:", chosen)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Перезапустите Play несколько раз, выпиши результаВы и проверь, попадают ли они в диапазон.
Как проверить
Выпадает целое число из заданного диапазона.
134Выбор одной из трёх картLuau и алгоритмы / Случайные игровые события · Начальный
Что делает скрипт
Random.new создаёт генератор, NextInteger выбирает целое число между границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Несколько раз нажмите Play и сравните числа в Output.
local random = Random.new()
local chosen = random:NextInteger(1, 3)
print("Выбран номер:", chosen)
Как работает этот код
Случайный выбор. Random.new создаёт генератор, NextInteger выбирает целое число между границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local random = Random.new()Создаёт генератор случайных чисел.local chosen = random:NextInteger(1, 3)Выбирает целое число включительно между указанными границами.print("Выбран номер:", chosen)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Перезапустите Play несколько раз, выпиши результаВы и проверь, попадают ли они в диапазон.
Как проверить
Выпадает целое число из заданного диапазона.
135Случайная погода из пяти вариантовLuau и алгоритмы / Случайные игровые события · Начальный
Что делает скрипт
Random.new создаёт генератор, NextInteger выбирает целое число между границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Несколько раз нажмите Play и сравните числа в Output.
local random = Random.new()
local chosen = random:NextInteger(1, 5)
print("Выбран номер:", chosen)
Как работает этот код
Случайный выбор. Random.new создаёт генератор, NextInteger выбирает целое число между границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local random = Random.new()Создаёт генератор случайных чисел.local chosen = random:NextInteger(1, 5)Выбирает целое число включительно между указанными границами.print("Выбран номер:", chosen)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Перезапустите Play несколько раз, выпиши результаВы и проверь, попадают ли они в диапазон.
Как проверить
Выпадает целое число из заданного диапазона.
136Случайная звезда из семи местLuau и алгоритмы / Случайные игровые события · Начальный
Что делает скрипт
Random.new создаёт генератор, NextInteger выбирает целое число между границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Несколько раз нажмите Play и сравните числа в Output.
local random = Random.new()
local chosen = random:NextInteger(1, 7)
print("Выбран номер:", chosen)
Как работает этот код
Случайный выбор. Random.new создаёт генератор, NextInteger выбирает целое число между границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local random = Random.new()Создаёт генератор случайных чисел.local chosen = random:NextInteger(1, 7)Выбирает целое число включительно между указанными границами.print("Выбран номер:", chosen)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Перезапустите Play несколько раз, выпиши результаВы и проверь, попадают ли они в диапазон.
Как проверить
Выпадает целое число из заданного диапазона.
137Случайный номер ловушкиLuau и алгоритмы / Случайные игровые события · Начальный
Что делает скрипт
Random.new создаёт генератор, NextInteger выбирает целое число между границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Несколько раз нажмите Play и сравните числа в Output.
local random = Random.new()
local chosen = random:NextInteger(1, 9)
print("Выбран номер:", chosen)
Как работает этот код
Случайный выбор. Random.new создаёт генератор, NextInteger выбирает целое число между границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local random = Random.new()Создаёт генератор случайных чисел.local chosen = random:NextInteger(1, 9)Выбирает целое число включительно между указанными границами.print("Выбран номер:", chosen)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Перезапустите Play несколько раз, выпиши результаВы и проверь, попадают ли они в диапазон.
Как проверить
Выпадает целое число из заданного диапазона.
138Выбор маршрута из двухLuau и алгоритмы / Случайные игровые события · Начальный
Что делает скрипт
Random.new создаёт генератор, NextInteger выбирает целое число между границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Несколько раз нажмите Play и сравните числа в Output.
local random = Random.new()
local chosen = random:NextInteger(1, 2)
print("Выбран номер:", chosen)
Как работает этот код
Случайный выбор. Random.new создаёт генератор, NextInteger выбирает целое число между границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local random = Random.new()Создаёт генератор случайных чисел.local chosen = random:NextInteger(1, 2)Выбирает целое число включительно между указанными границами.print("Выбран номер:", chosen)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Перезапустите Play несколько раз, выпиши результаВы и проверь, попадают ли они в диапазон.
Как проверить
Выпадает целое число из заданного диапазона.
139Случайное испытание из десятиLuau и алгоритмы / Случайные игровые события · Начальный
Что делает скрипт
Random.new создаёт генератор, NextInteger выбирает целое число между границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Несколько раз нажмите Play и сравните числа в Output.
local random = Random.new()
local chosen = random:NextInteger(1, 10)
print("Выбран номер:", chosen)
Как работает этот код
Случайный выбор. Random.new создаёт генератор, NextInteger выбирает целое число между границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local random = Random.new()Создаёт генератор случайных чисел.local chosen = random:NextInteger(1, 10)Выбирает целое число включительно между указанными границами.print("Выбран номер:", chosen)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Перезапустите Play несколько раз, выпиши результаВы и проверь, попадают ли они в диапазон.
Как проверить
Выпадает целое число из заданного диапазона.
140Случайный звук из двенадцатиLuau и алгоритмы / Случайные игровые события · Начальный
Что делает скрипт
Random.new создаёт генератор, NextInteger выбирает целое число между границами.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Несколько раз нажмите Play и сравните числа в Output.
local random = Random.new()
local chosen = random:NextInteger(1, 12)
print("Выбран номер:", chosen)
Как работает этот код
Случайный выбор. Random.new создаёт генератор, NextInteger выбирает целое число между границами. Это демонстрация вычисления в Output, а не готовое изменение скорости, здоровья или интерфейса.
Разбор строк
local random = Random.new()Создаёт генератор случайных чисел.local chosen = random:NextInteger(1, 12)Выбирает целое число включительно между указанными границами.print("Выбран номер:", chosen)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.
Перезапустите Play несколько раз, выпиши результаВы и проверь, попадают ли они в диапазон.
Как проверить
Выпадает целое число из заданного диапазона.
141Атрибут скоростиДанные и коллекции / Атрибуты и состояния · Средний
Что делает скрипт
SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите атрибут игрока в Properties и Output.
local players = game:GetService("Players")
players.PlayerAdded:Connect(function(player)
player:SetAttribute("SpeedBoost", 1)
print("SpeedBoost:", player:GetAttribute("SpeedBoost"))
end)
Как работает этот код
АтрибуВы игрока. SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local players = game:GetService("Players")Создаёт локальную переменную, которой скрипт пользуется дальше.players.PlayerAdded:Connect(function(player)Подключает обработчик входа нового игрока на сервер.player:SetAttribute("SpeedBoost", 1)Записывает именованное значение — атрибут объекта.print("SpeedBoost:", player:GetAttribute("SpeedBoost"))Читает текущее значение названного атрибута.end)Завершает блок условия, цикла или функции.
Проверьте в Play атрибут через Properties; затем измените его значение и выведи через GetAttribute.
Как проверить
При входе игрок получает заданный атрибут со значением 1.
142Атрибут ключаДанные и коллекции / Атрибуты и состояния · Средний
Что делает скрипт
SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите атрибут игрока в Properties и Output.
local players = game:GetService("Players")
players.PlayerAdded:Connect(function(player)
player:SetAttribute("HasKey", 1)
print("HasKey:", player:GetAttribute("HasKey"))
end)
Как работает этот код
АтрибуВы игрока. SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local players = game:GetService("Players")Создаёт локальную переменную, которой скрипт пользуется дальше.players.PlayerAdded:Connect(function(player)Подключает обработчик входа нового игрока на сервер.player:SetAttribute("HasKey", 1)Записывает именованное значение — атрибут объекта.print("HasKey:", player:GetAttribute("HasKey"))Читает текущее значение названного атрибута.end)Завершает блок условия, цикла или функции.
Проверьте в Play атрибут через Properties; затем измените его значение и выведи через GetAttribute.
Как проверить
При входе игрок получает заданный атрибут со значением 1.
143Атрибут контрольной точкиДанные и коллекции / Атрибуты и состояния · Средний
Что делает скрипт
SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите атрибут игрока в Properties и Output.
local players = game:GetService("Players")
players.PlayerAdded:Connect(function(player)
player:SetAttribute("Checkpoint", 1)
print("Checkpoint:", player:GetAttribute("Checkpoint"))
end)
Как работает этот код
АтрибуВы игрока. SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local players = game:GetService("Players")Создаёт локальную переменную, которой скрипт пользуется дальше.players.PlayerAdded:Connect(function(player)Подключает обработчик входа нового игрока на сервер.player:SetAttribute("Checkpoint", 1)Записывает именованное значение — атрибут объекта.print("Checkpoint:", player:GetAttribute("Checkpoint"))Читает текущее значение названного атрибута.end)Завершает блок условия, цикла или функции.
Проверьте в Play атрибут через Properties; затем измените его значение и выведи через GetAttribute.
Как проверить
При входе игрок получает заданный атрибут со значением 1.
144Атрибут готовностиДанные и коллекции / Атрибуты и состояния · Средний
Что делает скрипт
SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите атрибут игрока в Properties и Output.
local players = game:GetService("Players")
players.PlayerAdded:Connect(function(player)
player:SetAttribute("Ready", 1)
print("Ready:", player:GetAttribute("Ready"))
end)
Как работает этот код
АтрибуВы игрока. SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local players = game:GetService("Players")Создаёт локальную переменную, которой скрипт пользуется дальше.players.PlayerAdded:Connect(function(player)Подключает обработчик входа нового игрока на сервер.player:SetAttribute("Ready", 1)Записывает именованное значение — атрибут объекта.print("Ready:", player:GetAttribute("Ready"))Читает текущее значение названного атрибута.end)Завершает блок условия, цикла или функции.
Проверьте в Play атрибут через Properties; затем измените его значение и выведи через GetAttribute.
Как проверить
При входе игрок получает заданный атрибут со значением 1.
145Атрибут сложностиДанные и коллекции / Атрибуты и состояния · Средний
Что делает скрипт
SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите атрибут игрока в Properties и Output.
local players = game:GetService("Players")
players.PlayerAdded:Connect(function(player)
player:SetAttribute("Difficulty", 1)
print("Difficulty:", player:GetAttribute("Difficulty"))
end)
Как работает этот код
АтрибуВы игрока. SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local players = game:GetService("Players")Создаёт локальную переменную, которой скрипт пользуется дальше.players.PlayerAdded:Connect(function(player)Подключает обработчик входа нового игрока на сервер.player:SetAttribute("Difficulty", 1)Записывает именованное значение — атрибут объекта.print("Difficulty:", player:GetAttribute("Difficulty"))Читает текущее значение названного атрибута.end)Завершает блок условия, цикла или функции.
Проверьте в Play атрибут через Properties; затем измените его значение и выведи через GetAttribute.
Как проверить
При входе игрок получает заданный атрибут со значением 1.
146Атрибут командыДанные и коллекции / Атрибуты и состояния · Средний
Что делает скрипт
SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите атрибут игрока в Properties и Output.
local players = game:GetService("Players")
players.PlayerAdded:Connect(function(player)
player:SetAttribute("TeamChoice", 1)
print("TeamChoice:", player:GetAttribute("TeamChoice"))
end)
Как работает этот код
АтрибуВы игрока. SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local players = game:GetService("Players")Создаёт локальную переменную, которой скрипт пользуется дальше.players.PlayerAdded:Connect(function(player)Подключает обработчик входа нового игрока на сервер.player:SetAttribute("TeamChoice", 1)Записывает именованное значение — атрибут объекта.print("TeamChoice:", player:GetAttribute("TeamChoice"))Читает текущее значение названного атрибута.end)Завершает блок условия, цикла или функции.
Проверьте в Play атрибут через Properties; затем измените его значение и выведи через GetAttribute.
Как проверить
При входе игрок получает заданный атрибут со значением 1.
147Атрибут главыДанные и коллекции / Атрибуты и состояния · Средний
Что делает скрипт
SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите атрибут игрока в Properties и Output.
local players = game:GetService("Players")
players.PlayerAdded:Connect(function(player)
player:SetAttribute("Chapter", 1)
print("Chapter:", player:GetAttribute("Chapter"))
end)
Как работает этот код
АтрибуВы игрока. SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local players = game:GetService("Players")Создаёт локальную переменную, которой скрипт пользуется дальше.players.PlayerAdded:Connect(function(player)Подключает обработчик входа нового игрока на сервер.player:SetAttribute("Chapter", 1)Записывает именованное значение — атрибут объекта.print("Chapter:", player:GetAttribute("Chapter"))Читает текущее значение названного атрибута.end)Завершает блок условия, цикла или функции.
Проверьте в Play атрибут через Properties; затем измените его значение и выведи через GetAttribute.
Как проверить
При входе игрок получает заданный атрибут со значением 1.
148Атрибут попытокДанные и коллекции / Атрибуты и состояния · Средний
Что делает скрипт
SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите атрибут игрока в Properties и Output.
local players = game:GetService("Players")
players.PlayerAdded:Connect(function(player)
player:SetAttribute("Attempts", 1)
print("Attempts:", player:GetAttribute("Attempts"))
end)
Как работает этот код
АтрибуВы игрока. SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local players = game:GetService("Players")Создаёт локальную переменную, которой скрипт пользуется дальше.players.PlayerAdded:Connect(function(player)Подключает обработчик входа нового игрока на сервер.player:SetAttribute("Attempts", 1)Записывает именованное значение — атрибут объекта.print("Attempts:", player:GetAttribute("Attempts"))Читает текущее значение названного атрибута.end)Завершает блок условия, цикла или функции.
Проверьте в Play атрибут через Properties; затем измените его значение и выведи через GetAttribute.
Как проверить
При входе игрок получает заданный атрибут со значением 1.
149Атрибут победДанные и коллекции / Атрибуты и состояния · Средний
Что делает скрипт
SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите атрибут игрока в Properties и Output.
local players = game:GetService("Players")
players.PlayerAdded:Connect(function(player)
player:SetAttribute("Wins", 1)
print("Wins:", player:GetAttribute("Wins"))
end)
Как работает этот код
АтрибуВы игрока. SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local players = game:GetService("Players")Создаёт локальную переменную, которой скрипт пользуется дальше.players.PlayerAdded:Connect(function(player)Подключает обработчик входа нового игрока на сервер.player:SetAttribute("Wins", 1)Записывает именованное значение — атрибут объекта.print("Wins:", player:GetAttribute("Wins"))Читает текущее значение названного атрибута.end)Завершает блок условия, цикла или функции.
Проверьте в Play атрибут через Properties; затем измените его значение и выведи через GetAttribute.
Как проверить
При входе игрок получает заданный атрибут со значением 1.
150Атрибут энергииДанные и коллекции / Атрибуты и состояния · Средний
Что делает скрипт
SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите атрибут игрока в Properties и Output.
local players = game:GetService("Players")
players.PlayerAdded:Connect(function(player)
player:SetAttribute("Energy", 1)
print("Energy:", player:GetAttribute("Energy"))
end)
Как работает этот код
АтрибуВы игрока. SetAttribute сохраняет значение на объекте игрока; GetAttribute читает его. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local players = game:GetService("Players")Создаёт локальную переменную, которой скрипт пользуется дальше.players.PlayerAdded:Connect(function(player)Подключает обработчик входа нового игрока на сервер.player:SetAttribute("Energy", 1)Записывает именованное значение — атрибут объекта.print("Energy:", player:GetAttribute("Energy"))Читает текущее значение названного атрибута.end)Завершает блок условия, цикла или функции.
Проверьте в Play атрибут через Properties; затем измените его значение и выведи через GetAttribute.
Как проверить
При входе игрок получает заданный атрибут со значением 1.
151Отслеживать цвет деталиДанные и коллекции / События изменения объектов · Средний
Что делает скрипт
GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart и во время Play измените указанное свойство.
local part = workspace:WaitForChild("DemoPart")
part:GetPropertyChangedSignal("Color"):Connect(function()
print("Изменено свойство Color:", part.Color)
end)
Как работает этот код
Слежение за свойством. GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part:GetPropertyChangedSignal("Color"):Connect(function()Отслеживает изменение конкретного свойства объекта.print("Изменено свойство Color:", part.Color)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.end)Завершает блок условия, цикла или функции.
Создайте DemoPart и измените нужное свойство в процессе Play. Убедись, что уведомление появляется только после изменения.
Как проверить
Output сообщит об изменении свойства.
152Отслеживать прозрачностьДанные и коллекции / События изменения объектов · Средний
Что делает скрипт
GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart и во время Play измените указанное свойство.
local part = workspace:WaitForChild("DemoPart")
part:GetPropertyChangedSignal("Transparency"):Connect(function()
print("Изменено свойство Transparency:", part.Transparency)
end)
Как работает этот код
Слежение за свойством. GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part:GetPropertyChangedSignal("Transparency"):Connect(function()Отслеживает изменение конкретного свойства объекта.print("Изменено свойство Transparency:", part.Transparency)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.end)Завершает блок условия, цикла или функции.
Создайте DemoPart и измените нужное свойство в процессе Play. Убедись, что уведомление появляется только после изменения.
Как проверить
Output сообщит об изменении свойства.
153Отслеживать материалДанные и коллекции / События изменения объектов · Средний
Что делает скрипт
GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart и во время Play измените указанное свойство.
local part = workspace:WaitForChild("DemoPart")
part:GetPropertyChangedSignal("Material"):Connect(function()
print("Изменено свойство Material:", part.Material)
end)
Как работает этот код
Слежение за свойством. GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part:GetPropertyChangedSignal("Material"):Connect(function()Отслеживает изменение конкретного свойства объекта.print("Изменено свойство Material:", part.Material)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.end)Завершает блок условия, цикла или функции.
Создайте DemoPart и измените нужное свойство в процессе Play. Убедись, что уведомление появляется только после изменения.
Как проверить
Output сообщит об изменении свойства.
154Отслеживать размерДанные и коллекции / События изменения объектов · Средний
Что делает скрипт
GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart и во время Play измените указанное свойство.
local part = workspace:WaitForChild("DemoPart")
part:GetPropertyChangedSignal("Size"):Connect(function()
print("Изменено свойство Size:", part.Size)
end)
Как работает этот код
Слежение за свойством. GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part:GetPropertyChangedSignal("Size"):Connect(function()Отслеживает изменение конкретного свойства объекта.print("Изменено свойство Size:", part.Size)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.end)Завершает блок условия, цикла или функции.
Создайте DemoPart и измените нужное свойство в процессе Play. Убедись, что уведомление появляется только после изменения.
Как проверить
Output сообщит об изменении свойства.
155Отслеживать позициюДанные и коллекции / События изменения объектов · Средний
Что делает скрипт
GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart и во время Play измените указанное свойство.
local part = workspace:WaitForChild("DemoPart")
part:GetPropertyChangedSignal("Position"):Connect(function()
print("Изменено свойство Position:", part.Position)
end)
Как работает этот код
Слежение за свойством. GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part:GetPropertyChangedSignal("Position"):Connect(function()Отслеживает изменение конкретного свойства объекта.print("Изменено свойство Position:", part.Position)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.end)Завершает блок условия, цикла или функции.
Создайте DemoPart и измените нужное свойство в процессе Play. Убедись, что уведомление появляется только после изменения.
Как проверить
Output сообщит об изменении свойства.
156Отслеживать столкновенияДанные и коллекции / События изменения объектов · Средний
Что делает скрипт
GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart и во время Play измените указанное свойство.
local part = workspace:WaitForChild("DemoPart")
part:GetPropertyChangedSignal("CanCollide"):Connect(function()
print("Изменено свойство CanCollide:", part.CanCollide)
end)
Как работает этот код
Слежение за свойством. GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part:GetPropertyChangedSignal("CanCollide"):Connect(function()Отслеживает изменение конкретного свойства объекта.print("Изменено свойство CanCollide:", part.CanCollide)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.end)Завершает блок условия, цикла или функции.
Создайте DemoPart и измените нужное свойство в процессе Play. Убедись, что уведомление появляется только после изменения.
Как проверить
Output сообщит об изменении свойства.
157Отслеживать закреплениеДанные и коллекции / События изменения объектов · Средний
Что делает скрипт
GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart и во время Play измените указанное свойство.
local part = workspace:WaitForChild("DemoPart")
part:GetPropertyChangedSignal("Anchored"):Connect(function()
print("Изменено свойство Anchored:", part.Anchored)
end)
Как работает этот код
Слежение за свойством. GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part:GetPropertyChangedSignal("Anchored"):Connect(function()Отслеживает изменение конкретного свойства объекта.print("Изменено свойство Anchored:", part.Anchored)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.end)Завершает блок условия, цикла или функции.
Создайте DemoPart и измените нужное свойство в процессе Play. Убедись, что уведомление появляется только после изменения.
Как проверить
Output сообщит об изменении свойства.
158Отслеживать отражениеДанные и коллекции / События изменения объектов · Средний
Что делает скрипт
GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart и во время Play измените указанное свойство.
local part = workspace:WaitForChild("DemoPart")
part:GetPropertyChangedSignal("Reflectance"):Connect(function()
print("Изменено свойство Reflectance:", part.Reflectance)
end)
Как работает этот код
Слежение за свойством. GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part:GetPropertyChangedSignal("Reflectance"):Connect(function()Отслеживает изменение конкретного свойства объекта.print("Изменено свойство Reflectance:", part.Reflectance)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.end)Завершает блок условия, цикла или функции.
Создайте DemoPart и измените нужное свойство в процессе Play. Убедись, что уведомление появляется только после изменения.
Как проверить
Output сообщит об изменении свойства.
159Отслеживать формуДанные и коллекции / События изменения объектов · Средний
Что делает скрипт
GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart и во время Play измените указанное свойство.
local part = workspace:WaitForChild("DemoPart")
part:GetPropertyChangedSignal("Shape"):Connect(function()
print("Изменено свойство Shape:", part.Shape)
end)
Как работает этот код
Слежение за свойством. GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part:GetPropertyChangedSignal("Shape"):Connect(function()Отслеживает изменение конкретного свойства объекта.print("Изменено свойство Shape:", part.Shape)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.end)Завершает блок условия, цикла или функции.
Создайте DemoPart и измените нужное свойство в процессе Play. Убедись, что уведомление появляется только после изменения.
Как проверить
Output сообщит об изменении свойства.
160Отслеживать возможность касанияДанные и коллекции / События изменения объектов · Средний
Что делает скрипт
GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart и во время Play измените указанное свойство.
local part = workspace:WaitForChild("DemoPart")
part:GetPropertyChangedSignal("CanTouch"):Connect(function()
print("Изменено свойство CanTouch:", part.CanTouch)
end)
Как работает этот код
Слежение за свойством. GetPropertyChangedSignal запускает функцию, когда меняется выбранное свойство. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part:GetPropertyChangedSignal("CanTouch"):Connect(function()Отслеживает изменение конкретного свойства объекта.print("Изменено свойство CanTouch:", part.CanTouch)Выводит значение в окно Output; само по себе не меняет игровой интерфейс.end)Завершает блок условия, цикла или функции.
Создайте DemoPart и измените нужное свойство в процессе Play. Убедись, что уведомление появляется только после изменения.
Как проверить
Output сообщит об изменении свойства.
161Дорожка из пяти блоковСоздание миров / Генератор деталей · Средний
Что делает скрипт
Цикл создаёт экземпляры Part, а Position задаёт их расположение.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте чистую Baseplate, вставьте Script и нажмите Play.
local folder = Instance.new("Folder")
folder.Name = "GeneratedParts"
folder.Parent = workspace
for i = 1, 5 do
local p = Instance.new("Part")
p.Size = Vector3.new(4, 1, 4)
p.Anchored = true
p.Position = Vector3.new(i * 5, 3 + (i - 1) * 0, 0)
p.Parent = folder
end
Как работает этот код
Генерация деталей. Цикл создаёт экземпляры Part, а Position задаёт их расположение. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local folder = Instance.new("Folder")Создаёт новый экземпляр объекта Roblox.folder.Name = "GeneratedParts"Выполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.for i = 1, 5 doПовторяет создание объекта несколько раз, увеличивая счётчик i.p.Size = Vector3.new(4, 1, 4)Задаёт три координаВы или размера X, Y и Z.endЗавершает блок условия, цикла или функции.
Измените количество создаваемых деталей, расстояние между ними и сравните построение в Workspace.
Как проверить
В Workspace появится папка GeneratedParts с заданным количеством деталей.
162Лестница из шести ступенейСоздание миров / Генератор деталей · Средний
Что делает скрипт
Цикл создаёт экземпляры Part, а Position задаёт их расположение.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте чистую Baseplate, вставьте Script и нажмите Play.
local folder = Instance.new("Folder")
folder.Name = "GeneratedParts"
folder.Parent = workspace
for i = 1, 6 do
local p = Instance.new("Part")
p.Size = Vector3.new(4, 1, 4)
p.Anchored = true
p.Position = Vector3.new(i * 5, 3 + (i - 1) * 1, 0)
p.Parent = folder
end
Как работает этот код
Генерация деталей. Цикл создаёт экземпляры Part, а Position задаёт их расположение. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local folder = Instance.new("Folder")Создаёт новый экземпляр объекта Roblox.folder.Name = "GeneratedParts"Выполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.for i = 1, 6 doПовторяет создание объекта несколько раз, увеличивая счётчик i.p.Size = Vector3.new(4, 1, 4)Задаёт три координаВы или размера X, Y и Z.endЗавершает блок условия, цикла или функции.
Измените количество создаваемых деталей, расстояние между ними и сравните построение в Workspace.
Как проверить
В Workspace появится папка GeneratedParts с заданным количеством деталей.
163Забор из семи секцийСоздание миров / Генератор деталей · Средний
Что делает скрипт
Цикл создаёт экземпляры Part, а Position задаёт их расположение.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте чистую Baseplate, вставьте Script и нажмите Play.
local folder = Instance.new("Folder")
folder.Name = "GeneratedParts"
folder.Parent = workspace
for i = 1, 7 do
local p = Instance.new("Part")
p.Size = Vector3.new(4, 1, 4)
p.Anchored = true
p.Position = Vector3.new(i * 5, 3 + (i - 1) * 0, 0)
p.Parent = folder
end
Как работает этот код
Генерация деталей. Цикл создаёт экземпляры Part, а Position задаёт их расположение. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local folder = Instance.new("Folder")Создаёт новый экземпляр объекта Roblox.folder.Name = "GeneratedParts"Выполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.for i = 1, 7 doПовторяет создание объекта несколько раз, увеличивая счётчик i.p.Size = Vector3.new(4, 1, 4)Задаёт три координаВы или размера X, Y и Z.endЗавершает блок условия, цикла или функции.
Измените количество создаваемых деталей, расстояние между ними и сравните построение в Workspace.
Как проверить
В Workspace появится папка GeneratedParts с заданным количеством деталей.
164Ряд из восьми платформСоздание миров / Генератор деталей · Средний
Что делает скрипт
Цикл создаёт экземпляры Part, а Position задаёт их расположение.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте чистую Baseplate, вставьте Script и нажмите Play.
local folder = Instance.new("Folder")
folder.Name = "GeneratedParts"
folder.Parent = workspace
for i = 1, 8 do
local p = Instance.new("Part")
p.Size = Vector3.new(4, 1, 4)
p.Anchored = true
p.Position = Vector3.new(i * 5, 3 + (i - 1) * 0, 0)
p.Parent = folder
end
Как работает этот код
Генерация деталей. Цикл создаёт экземпляры Part, а Position задаёт их расположение. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local folder = Instance.new("Folder")Создаёт новый экземпляр объекта Roblox.folder.Name = "GeneratedParts"Выполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.for i = 1, 8 doПовторяет создание объекта несколько раз, увеличивая счётчик i.p.Size = Vector3.new(4, 1, 4)Задаёт три координаВы или размера X, Y и Z.endЗавершает блок условия, цикла или функции.
Измените количество создаваемых деталей, расстояние между ними и сравните построение в Workspace.
Как проверить
В Workspace появится папка GeneratedParts с заданным количеством деталей.
165Десять колоннСоздание миров / Генератор деталей · Средний
Что делает скрипт
Цикл создаёт экземпляры Part, а Position задаёт их расположение.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте чистую Baseplate, вставьте Script и нажмите Play.
local folder = Instance.new("Folder")
folder.Name = "GeneratedParts"
folder.Parent = workspace
for i = 1, 10 do
local p = Instance.new("Part")
p.Size = Vector3.new(4, 1, 4)
p.Anchored = true
p.Position = Vector3.new(i * 5, 3 + (i - 1) * 0, 0)
p.Parent = folder
end
Как работает этот код
Генерация деталей. Цикл создаёт экземпляры Part, а Position задаёт их расположение. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local folder = Instance.new("Folder")Создаёт новый экземпляр объекта Roblox.folder.Name = "GeneratedParts"Выполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.for i = 1, 10 doПовторяет создание объекта несколько раз, увеличивая счётчик i.p.Size = Vector3.new(4, 1, 4)Задаёт три координаВы или размера X, Y и Z.endЗавершает блок условия, цикла или функции.
Измените количество создаваемых деталей, расстояние между ними и сравните построение в Workspace.
Как проверить
В Workspace появится папка GeneratedParts с заданным количеством деталей.
166Мост из двенадцати плитСоздание миров / Генератор деталей · Средний
Что делает скрипт
Цикл создаёт экземпляры Part, а Position задаёт их расположение.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте чистую Baseplate, вставьте Script и нажмите Play.
local folder = Instance.new("Folder")
folder.Name = "GeneratedParts"
folder.Parent = workspace
for i = 1, 12 do
local p = Instance.new("Part")
p.Size = Vector3.new(4, 1, 4)
p.Anchored = true
p.Position = Vector3.new(i * 5, 3 + (i - 1) * 0, 0)
p.Parent = folder
end
Как работает этот код
Генерация деталей. Цикл создаёт экземпляры Part, а Position задаёт их расположение. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local folder = Instance.new("Folder")Создаёт новый экземпляр объекта Roblox.folder.Name = "GeneratedParts"Выполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.for i = 1, 12 doПовторяет создание объекта несколько раз, увеличивая счётчик i.p.Size = Vector3.new(4, 1, 4)Задаёт три координаВы или размера X, Y и Z.endЗавершает блок условия, цикла или функции.
Измените количество создаваемых деталей, расстояние между ними и сравните построение в Workspace.
Как проверить
В Workspace появится папка GeneratedParts с заданным количеством деталей.
167Три тренировочные точкиСоздание миров / Генератор деталей · Средний
Что делает скрипт
Цикл создаёт экземпляры Part, а Position задаёт их расположение.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте чистую Baseplate, вставьте Script и нажмите Play.
local folder = Instance.new("Folder")
folder.Name = "GeneratedParts"
folder.Parent = workspace
for i = 1, 3 do
local p = Instance.new("Part")
p.Size = Vector3.new(4, 1, 4)
p.Anchored = true
p.Position = Vector3.new(i * 5, 3 + (i - 1) * 0, 0)
p.Parent = folder
end
Как работает этот код
Генерация деталей. Цикл создаёт экземпляры Part, а Position задаёт их расположение. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local folder = Instance.new("Folder")Создаёт новый экземпляр объекта Roblox.folder.Name = "GeneratedParts"Выполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.for i = 1, 3 doПовторяет создание объекта несколько раз, увеличивая счётчик i.p.Size = Vector3.new(4, 1, 4)Задаёт три координаВы или размера X, Y и Z.endЗавершает блок условия, цикла или функции.
Измените количество создаваемых деталей, расстояние между ними и сравните построение в Workspace.
Как проверить
В Workspace появится папка GeneratedParts с заданным количеством деталей.
168Четыре декоративных кубаСоздание миров / Генератор деталей · Средний
Что делает скрипт
Цикл создаёт экземпляры Part, а Position задаёт их расположение.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте чистую Baseplate, вставьте Script и нажмите Play.
local folder = Instance.new("Folder")
folder.Name = "GeneratedParts"
folder.Parent = workspace
for i = 1, 4 do
local p = Instance.new("Part")
p.Size = Vector3.new(4, 1, 4)
p.Anchored = true
p.Position = Vector3.new(i * 5, 3 + (i - 1) * 0, 0)
p.Parent = folder
end
Как работает этот код
Генерация деталей. Цикл создаёт экземпляры Part, а Position задаёт их расположение. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local folder = Instance.new("Folder")Создаёт новый экземпляр объекта Roblox.folder.Name = "GeneratedParts"Выполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.for i = 1, 4 doПовторяет создание объекта несколько раз, увеличивая счётчик i.p.Size = Vector3.new(4, 1, 4)Задаёт три координаВы или размера X, Y и Z.endЗавершает блок условия, цикла или функции.
Измените количество создаваемых деталей, расстояние между ними и сравните построение в Workspace.
Как проверить
В Workspace появится папка GeneratedParts с заданным количеством деталей.
169Девять ступеней башниСоздание миров / Генератор деталей · Средний
Что делает скрипт
Цикл создаёт экземпляры Part, а Position задаёт их расположение.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте чистую Baseplate, вставьте Script и нажмите Play.
local folder = Instance.new("Folder")
folder.Name = "GeneratedParts"
folder.Parent = workspace
for i = 1, 9 do
local p = Instance.new("Part")
p.Size = Vector3.new(4, 1, 4)
p.Anchored = true
p.Position = Vector3.new(i * 5, 3 + (i - 1) * 1, 0)
p.Parent = folder
end
Как работает этот код
Генерация деталей. Цикл создаёт экземпляры Part, а Position задаёт их расположение. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local folder = Instance.new("Folder")Создаёт новый экземпляр объекта Roblox.folder.Name = "GeneratedParts"Выполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.for i = 1, 9 doПовторяет создание объекта несколько раз, увеличивая счётчик i.p.Size = Vector3.new(4, 1, 4)Задаёт три координаВы или размера X, Y и Z.endЗавершает блок условия, цикла или функции.
Измените количество создаваемых деталей, расстояние между ними и сравните построение в Workspace.
Как проверить
В Workspace появится папка GeneratedParts с заданным количеством деталей.
170Одиннадцать камнейСоздание миров / Генератор деталей · Средний
Что делает скрипт
Цикл создаёт экземпляры Part, а Position задаёт их расположение.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Откройте чистую Baseplate, вставьте Script и нажмите Play.
local folder = Instance.new("Folder")
folder.Name = "GeneratedParts"
folder.Parent = workspace
for i = 1, 11 do
local p = Instance.new("Part")
p.Size = Vector3.new(4, 1, 4)
p.Anchored = true
p.Position = Vector3.new(i * 5, 3 + (i - 1) * 0, 0)
p.Parent = folder
end
Как работает этот код
Генерация деталей. Цикл создаёт экземпляры Part, а Position задаёт их расположение. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local folder = Instance.new("Folder")Создаёт новый экземпляр объекта Roblox.folder.Name = "GeneratedParts"Выполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.for i = 1, 11 doПовторяет создание объекта несколько раз, увеличивая счётчик i.p.Size = Vector3.new(4, 1, 4)Задаёт три координаВы или размера X, Y и Z.endЗавершает блок условия, цикла или функции.
Измените количество создаваемых деталей, расстояние между ними и сравните построение в Workspace.
Как проверить
В Workspace появится папка GeneratedParts с заданным количеством деталей.
171Красная платформаСоздание миров / Цветовые декорации · Начальный
Что делает скрипт
Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255.
Куда вставить
Script внутри ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart. Нажмите Play.
local part = workspace:WaitForChild("DemoPart")
part.Color = Color3.fromRGB(255, 86, 98)
part.Material = Enum.Material.SmoothPlastic
Как работает этот код
Оформление детали. Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part.Color = Color3.fromRGB(255, 86, 98)Создаёт цвет по красному, зелёному и синему каналам от 0 до 255.part.Material = Enum.Material.SmoothPlasticВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.
Создайте DemoPart и поменяй RGB-компоненВы или материал; сравните цвет до и после.
Как проверить
Деталь станет указанного цвета.
172Синяя платформаСоздание миров / Цветовые декорации · Начальный
Что делает скрипт
Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255.
Куда вставить
Script внутри ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart. Нажмите Play.
local part = workspace:WaitForChild("DemoPart")
part.Color = Color3.fromRGB(60, 145, 255)
part.Material = Enum.Material.SmoothPlastic
Как работает этот код
Оформление детали. Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part.Color = Color3.fromRGB(60, 145, 255)Создаёт цвет по красному, зелёному и синему каналам от 0 до 255.part.Material = Enum.Material.SmoothPlasticВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.
Создайте DemoPart и поменяй RGB-компоненВы или материал; сравните цвет до и после.
Как проверить
Деталь станет указанного цвета.
173Зелёный островСоздание миров / Цветовые декорации · Начальный
Что делает скрипт
Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255.
Куда вставить
Script внутри ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart. Нажмите Play.
local part = workspace:WaitForChild("DemoPart")
part.Color = Color3.fromRGB(62, 202, 120)
part.Material = Enum.Material.SmoothPlastic
Как работает этот код
Оформление детали. Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part.Color = Color3.fromRGB(62, 202, 120)Создаёт цвет по красному, зелёному и синему каналам от 0 до 255.part.Material = Enum.Material.SmoothPlasticВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.
Создайте DemoPart и поменяй RGB-компоненВы или материал; сравните цвет до и после.
Как проверить
Деталь станет указанного цвета.
174Жёлтая дорожкаСоздание миров / Цветовые декорации · Начальный
Что делает скрипт
Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255.
Куда вставить
Script внутри ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart. Нажмите Play.
local part = workspace:WaitForChild("DemoPart")
part.Color = Color3.fromRGB(255, 211, 70)
part.Material = Enum.Material.SmoothPlastic
Как работает этот код
Оформление детали. Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part.Color = Color3.fromRGB(255, 211, 70)Создаёт цвет по красному, зелёному и синему каналам от 0 до 255.part.Material = Enum.Material.SmoothPlasticВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.
Создайте DemoPart и поменяй RGB-компоненВы или материал; сравните цвет до и после.
Как проверить
Деталь станет указанного цвета.
175Фиолетовый порталСоздание миров / Цветовые декорации · Начальный
Что делает скрипт
Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255.
Куда вставить
Script внутри ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart. Нажмите Play.
local part = workspace:WaitForChild("DemoPart")
part.Color = Color3.fromRGB(151, 100, 255)
part.Material = Enum.Material.SmoothPlastic
Как работает этот код
Оформление детали. Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part.Color = Color3.fromRGB(151, 100, 255)Создаёт цвет по красному, зелёному и синему каналам от 0 до 255.part.Material = Enum.Material.SmoothPlasticВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.
Создайте DemoPart и поменяй RGB-компоненВы или материал; сравните цвет до и после.
Как проверить
Деталь станет указанного цвета.
176Бирюзовая плитаСоздание миров / Цветовые декорации · Начальный
Что делает скрипт
Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255.
Куда вставить
Script внутри ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart. Нажмите Play.
local part = workspace:WaitForChild("DemoPart")
part.Color = Color3.fromRGB(60, 215, 220)
part.Material = Enum.Material.SmoothPlastic
Как работает этот код
Оформление детали. Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part.Color = Color3.fromRGB(60, 215, 220)Создаёт цвет по красному, зелёному и синему каналам от 0 до 255.part.Material = Enum.Material.SmoothPlasticВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.
Создайте DemoPart и поменяй RGB-компоненВы или материал; сравните цвет до и после.
Как проверить
Деталь станет указанного цвета.
177Оранжевый блокСоздание миров / Цветовые декорации · Начальный
Что делает скрипт
Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255.
Куда вставить
Script внутри ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart. Нажмите Play.
local part = workspace:WaitForChild("DemoPart")
part.Color = Color3.fromRGB(255, 151, 65)
part.Material = Enum.Material.SmoothPlastic
Как работает этот код
Оформление детали. Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part.Color = Color3.fromRGB(255, 151, 65)Создаёт цвет по красному, зелёному и синему каналам от 0 до 255.part.Material = Enum.Material.SmoothPlasticВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.
Создайте DemoPart и поменяй RGB-компоненВы или материал; сравните цвет до и после.
Как проверить
Деталь станет указанного цвета.
178Розовая площадкаСоздание миров / Цветовые декорации · Начальный
Что делает скрипт
Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255.
Куда вставить
Script внутри ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart. Нажмите Play.
local part = workspace:WaitForChild("DemoPart")
part.Color = Color3.fromRGB(253, 131, 195)
part.Material = Enum.Material.SmoothPlastic
Как работает этот код
Оформление детали. Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part.Color = Color3.fromRGB(253, 131, 195)Создаёт цвет по красному, зелёному и синему каналам от 0 до 255.part.Material = Enum.Material.SmoothPlasticВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.
Создайте DemoPart и поменяй RGB-компоненВы или материал; сравните цвет до и после.
Как проверить
Деталь станет указанного цвета.
179Голубой кубСоздание миров / Цветовые декорации · Начальный
Что делает скрипт
Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255.
Куда вставить
Script внутри ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart. Нажмите Play.
local part = workspace:WaitForChild("DemoPart")
part.Color = Color3.fromRGB(131, 220, 255)
part.Material = Enum.Material.SmoothPlastic
Как работает этот код
Оформление детали. Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part.Color = Color3.fromRGB(131, 220, 255)Создаёт цвет по красному, зелёному и синему каналам от 0 до 255.part.Material = Enum.Material.SmoothPlasticВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.
Создайте DemoPart и поменяй RGB-компоненВы или материал; сравните цвет до и после.
Как проверить
Деталь станет указанного цвета.
180Белый пьедесталСоздание миров / Цветовые декорации · Начальный
Что делает скрипт
Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255.
Куда вставить
Script внутри ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part с именем DemoPart. Нажмите Play.
local part = workspace:WaitForChild("DemoPart")
part.Color = Color3.fromRGB(237, 244, 255)
part.Material = Enum.Material.SmoothPlastic
Как работает этот код
Оформление детали. Color3.fromRGB задаёт красную, зелёную и синюю составляющие от 0 до 255. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.part.Color = Color3.fromRGB(237, 244, 255)Создаёт цвет по красному, зелёному и синему каналам от 0 до 255.part.Material = Enum.Material.SmoothPlasticВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.
Создайте DemoPart и поменяй RGB-компоненВы или материал; сравните цвет до и после.
Как проверить
Деталь станет указанного цвета.
181Подсказка открыть сундукИнтерактивные объекты / Подсказки ProximityPrompt · Средний
Что делает скрипт
ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part DemoPart. Подойдите к нему в Play и нажмите клавишу взаимодействия.
local part = workspace:WaitForChild("DemoPart")
local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")
prompt.Parent = part
prompt.ActionText = "Открыть сундук"
prompt.ObjectText = "сундук"
prompt.Triggered:Connect(function(player)
print(player.Name, "использовал объект")
end)
Как работает этот код
Подсказки взаимодействия. ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")Создаёт новый экземпляр объекта Roblox.prompt.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.prompt.ActionText = "Открыть сундук"Задаёт текст действия рядом с объектом.prompt.ObjectText = "сундук"Задаёт название объекта в подсказке.
Измените ActionText, проверьте клавишу взаимодействия и запиши имя игрока в Output.
Как проверить
Возле детали появится подсказка, а Output покажет имя игрока.
182Подсказка поднять ключИнтерактивные объекты / Подсказки ProximityPrompt · Средний
Что делает скрипт
ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part DemoPart. Подойдите к нему в Play и нажмите клавишу взаимодействия.
local part = workspace:WaitForChild("DemoPart")
local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")
prompt.Parent = part
prompt.ActionText = "Взять ключ"
prompt.ObjectText = "ключ"
prompt.Triggered:Connect(function(player)
print(player.Name, "использовал объект")
end)
Как работает этот код
Подсказки взаимодействия. ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")Создаёт новый экземпляр объекта Roblox.prompt.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.prompt.ActionText = "Взять ключ"Задаёт текст действия рядом с объектом.prompt.ObjectText = "ключ"Задаёт название объекта в подсказке.
Измените ActionText, проверьте клавишу взаимодействия и запиши имя игрока в Output.
Как проверить
Возле детали появится подсказка, а Output покажет имя игрока.
183Подсказка изучить картуИнтерактивные объекты / Подсказки ProximityPrompt · Средний
Что делает скрипт
ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part DemoPart. Подойдите к нему в Play и нажмите клавишу взаимодействия.
local part = workspace:WaitForChild("DemoPart")
local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")
prompt.Parent = part
prompt.ActionText = "Изучить карту"
prompt.ObjectText = "карта"
prompt.Triggered:Connect(function(player)
print(player.Name, "использовал объект")
end)
Как работает этот код
Подсказки взаимодействия. ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")Создаёт новый экземпляр объекта Roblox.prompt.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.prompt.ActionText = "Изучить карту"Задаёт текст действия рядом с объектом.prompt.ObjectText = "карта"Задаёт название объекта в подсказке.
Измените ActionText, проверьте клавишу взаимодействия и запиши имя игрока в Output.
Как проверить
Возле детали появится подсказка, а Output покажет имя игрока.
184Подсказка позвать NPCИнтерактивные объекты / Подсказки ProximityPrompt · Средний
Что делает скрипт
ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part DemoPart. Подойдите к нему в Play и нажмите клавишу взаимодействия.
local part = workspace:WaitForChild("DemoPart")
local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")
prompt.Parent = part
prompt.ActionText = "Поговорить"
prompt.ObjectText = "NPC"
prompt.Triggered:Connect(function(player)
print(player.Name, "использовал объект")
end)
Как работает этот код
Подсказки взаимодействия. ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")Создаёт новый экземпляр объекта Roblox.prompt.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.prompt.ActionText = "Поговорить"Задаёт текст действия рядом с объектом.prompt.ObjectText = "NPC"Задаёт название объекта в подсказке.
Измените ActionText, проверьте клавишу взаимодействия и запиши имя игрока в Output.
Как проверить
Возле детали появится подсказка, а Output покажет имя игрока.
185Подсказка включить мостИнтерактивные объекты / Подсказки ProximityPrompt · Средний
Что делает скрипт
ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part DemoPart. Подойдите к нему в Play и нажмите клавишу взаимодействия.
local part = workspace:WaitForChild("DemoPart")
local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")
prompt.Parent = part
prompt.ActionText = "Включить мост"
prompt.ObjectText = "мост"
prompt.Triggered:Connect(function(player)
print(player.Name, "использовал объект")
end)
Как работает этот код
Подсказки взаимодействия. ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")Создаёт новый экземпляр объекта Roblox.prompt.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.prompt.ActionText = "Включить мост"Задаёт текст действия рядом с объектом.prompt.ObjectText = "мост"Задаёт название объекта в подсказке.
Измените ActionText, проверьте клавишу взаимодействия и запиши имя игрока в Output.
Как проверить
Возле детали появится подсказка, а Output покажет имя игрока.
186Подсказка войти в домИнтерактивные объекты / Подсказки ProximityPrompt · Средний
Что делает скрипт
ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part DemoPart. Подойдите к нему в Play и нажмите клавишу взаимодействия.
local part = workspace:WaitForChild("DemoPart")
local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")
prompt.Parent = part
prompt.ActionText = "Войти"
prompt.ObjectText = "дом"
prompt.Triggered:Connect(function(player)
print(player.Name, "использовал объект")
end)
Как работает этот код
Подсказки взаимодействия. ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")Создаёт новый экземпляр объекта Roblox.prompt.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.prompt.ActionText = "Войти"Задаёт текст действия рядом с объектом.prompt.ObjectText = "дом"Задаёт название объекта в подсказке.
Измените ActionText, проверьте клавишу взаимодействия и запиши имя игрока в Output.
Как проверить
Возле детали появится подсказка, а Output покажет имя игрока.
187Подсказка посмотреть табличкуИнтерактивные объекты / Подсказки ProximityPrompt · Средний
Что делает скрипт
ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part DemoPart. Подойдите к нему в Play и нажмите клавишу взаимодействия.
local part = workspace:WaitForChild("DemoPart")
local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")
prompt.Parent = part
prompt.ActionText = "Прочитать"
prompt.ObjectText = "табличка"
prompt.Triggered:Connect(function(player)
print(player.Name, "использовал объект")
end)
Как работает этот код
Подсказки взаимодействия. ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")Создаёт новый экземпляр объекта Roblox.prompt.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.prompt.ActionText = "Прочитать"Задаёт текст действия рядом с объектом.prompt.ObjectText = "табличка"Задаёт название объекта в подсказке.
Измените ActionText, проверьте клавишу взаимодействия и запиши имя игрока в Output.
Как проверить
Возле детали появится подсказка, а Output покажет имя игрока.
188Подсказка открыть шкафИнтерактивные объекты / Подсказки ProximityPrompt · Средний
Что делает скрипт
ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part DemoPart. Подойдите к нему в Play и нажмите клавишу взаимодействия.
local part = workspace:WaitForChild("DemoPart")
local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")
prompt.Parent = part
prompt.ActionText = "Открыть шкаф"
prompt.ObjectText = "шкаф"
prompt.Triggered:Connect(function(player)
print(player.Name, "использовал объект")
end)
Как работает этот код
Подсказки взаимодействия. ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")Создаёт новый экземпляр объекта Roblox.prompt.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.prompt.ActionText = "Открыть шкаф"Задаёт текст действия рядом с объектом.prompt.ObjectText = "шкаф"Задаёт название объекта в подсказке.
Измените ActionText, проверьте клавишу взаимодействия и запиши имя игрока в Output.
Как проверить
Возле детали появится подсказка, а Output покажет имя игрока.
189Подсказка начать раундИнтерактивные объекты / Подсказки ProximityPrompt · Средний
Что делает скрипт
ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part DemoPart. Подойдите к нему в Play и нажмите клавишу взаимодействия.
local part = workspace:WaitForChild("DemoPart")
local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")
prompt.Parent = part
prompt.ActionText = "Начать раунд"
prompt.ObjectText = "старт"
prompt.Triggered:Connect(function(player)
print(player.Name, "использовал объект")
end)
Как работает этот код
Подсказки взаимодействия. ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")Создаёт новый экземпляр объекта Roblox.prompt.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.prompt.ActionText = "Начать раунд"Задаёт текст действия рядом с объектом.prompt.ObjectText = "старт"Задаёт название объекта в подсказке.
Измените ActionText, проверьте клавишу взаимодействия и запиши имя игрока в Output.
Как проверить
Возле детали появится подсказка, а Output покажет имя игрока.
190Подсказка выбрать режимИнтерактивные объекты / Подсказки ProximityPrompt · Средний
Что делает скрипт
ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте Part DemoPart. Подойдите к нему в Play и нажмите клавишу взаимодействия.
local part = workspace:WaitForChild("DemoPart")
local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")
prompt.Parent = part
prompt.ActionText = "Выбрать режим"
prompt.ObjectText = "режим"
prompt.Triggered:Connect(function(player)
print(player.Name, "использовал объект")
end)
Как работает этот код
Подсказки взаимодействия. ProximityPrompt отображает взаимодействие, а событие Triggered вызывается сервером. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local prompt = part:FindFirstChildOfClass("ProximityPrompt") or Instance.new("ProximityPrompt")Создаёт новый экземпляр объекта Roblox.prompt.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.prompt.ActionText = "Выбрать режим"Задаёт текст действия рядом с объектом.prompt.ObjectText = "режим"Задаёт название объекта в подсказке.
Измените ActionText, проверьте клавишу взаимодействия и запиши имя игрока в Output.
Как проверить
Возле детали появится подсказка, а Output покажет имя игрока.
191Клик по красной кнопкеИнтерактивные объекты / События ClickDetector · Средний
Что делает скрипт
ClickDetector регистрирует клик по детали и сообщает серверу об игроке.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и в Play щёлкни по нему мышью.
local part = workspace:WaitForChild("DemoPart")
local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")
detector.MaxActivationDistance = 12
detector.Parent = part
detector.MouseClick:Connect(function(player)
print(player.Name, "нажал: Красная")
end)
Как работает этот код
Клики по объекту. ClickDetector регистрирует клик по детали и сообщает серверу об игроке. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")Создаёт новый экземпляр объекта Roblox.detector.MaxActivationDistance = 12Определяет максимальную дистанцию для щелчка по объекту.detector.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.detector.MouseClick:Connect(function(player)Подключает функцию, вызываемую при щелчке игрока.
Измените MaxActivationDistance, проверьте клик вблизи и вдали и сообщение в Output.
Как проверить
При клике Output покажет сообщение; расстояние ограничено.
192Клик по сундукуИнтерактивные объекты / События ClickDetector · Средний
Что делает скрипт
ClickDetector регистрирует клик по детали и сообщает серверу об игроке.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и в Play щёлкни по нему мышью.
local part = workspace:WaitForChild("DemoPart")
local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")
detector.MaxActivationDistance = 12
detector.Parent = part
detector.MouseClick:Connect(function(player)
print(player.Name, "нажал: Сундук")
end)
Как работает этот код
Клики по объекту. ClickDetector регистрирует клик по детали и сообщает серверу об игроке. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")Создаёт новый экземпляр объекта Roblox.detector.MaxActivationDistance = 12Определяет максимальную дистанцию для щелчка по объекту.detector.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.detector.MouseClick:Connect(function(player)Подключает функцию, вызываемую при щелчке игрока.
Измените MaxActivationDistance, проверьте клик вблизи и вдали и сообщение в Output.
Как проверить
При клике Output покажет сообщение; расстояние ограничено.
193Клик по табличкеИнтерактивные объекты / События ClickDetector · Средний
Что делает скрипт
ClickDetector регистрирует клик по детали и сообщает серверу об игроке.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и в Play щёлкни по нему мышью.
local part = workspace:WaitForChild("DemoPart")
local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")
detector.MaxActivationDistance = 12
detector.Parent = part
detector.MouseClick:Connect(function(player)
print(player.Name, "нажал: Знак")
end)
Как работает этот код
Клики по объекту. ClickDetector регистрирует клик по детали и сообщает серверу об игроке. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")Создаёт новый экземпляр объекта Roblox.detector.MaxActivationDistance = 12Определяет максимальную дистанцию для щелчка по объекту.detector.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.detector.MouseClick:Connect(function(player)Подключает функцию, вызываемую при щелчке игрока.
Измените MaxActivationDistance, проверьте клик вблизи и вдали и сообщение в Output.
Как проверить
При клике Output покажет сообщение; расстояние ограничено.
194Клик по кристаллуИнтерактивные объекты / События ClickDetector · Средний
Что делает скрипт
ClickDetector регистрирует клик по детали и сообщает серверу об игроке.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и в Play щёлкни по нему мышью.
local part = workspace:WaitForChild("DemoPart")
local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")
detector.MaxActivationDistance = 12
detector.Parent = part
detector.MouseClick:Connect(function(player)
print(player.Name, "нажал: Кристалл")
end)
Как работает этот код
Клики по объекту. ClickDetector регистрирует клик по детали и сообщает серверу об игроке. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")Создаёт новый экземпляр объекта Roblox.detector.MaxActivationDistance = 12Определяет максимальную дистанцию для щелчка по объекту.detector.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.detector.MouseClick:Connect(function(player)Подключает функцию, вызываемую при щелчке игрока.
Измените MaxActivationDistance, проверьте клик вблизи и вдали и сообщение в Output.
Как проверить
При клике Output покажет сообщение; расстояние ограничено.
195Клик по фонарюИнтерактивные объекты / События ClickDetector · Средний
Что делает скрипт
ClickDetector регистрирует клик по детали и сообщает серверу об игроке.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и в Play щёлкни по нему мышью.
local part = workspace:WaitForChild("DemoPart")
local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")
detector.MaxActivationDistance = 12
detector.Parent = part
detector.MouseClick:Connect(function(player)
print(player.Name, "нажал: Фонарь")
end)
Как работает этот код
Клики по объекту. ClickDetector регистрирует клик по детали и сообщает серверу об игроке. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")Создаёт новый экземпляр объекта Roblox.detector.MaxActivationDistance = 12Определяет максимальную дистанцию для щелчка по объекту.detector.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.detector.MouseClick:Connect(function(player)Подключает функцию, вызываемую при щелчке игрока.
Измените MaxActivationDistance, проверьте клик вблизи и вдали и сообщение в Output.
Как проверить
При клике Output покажет сообщение; расстояние ограничено.
196Клик по статуеИнтерактивные объекты / События ClickDetector · Средний
Что делает скрипт
ClickDetector регистрирует клик по детали и сообщает серверу об игроке.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и в Play щёлкни по нему мышью.
local part = workspace:WaitForChild("DemoPart")
local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")
detector.MaxActivationDistance = 12
detector.Parent = part
detector.MouseClick:Connect(function(player)
print(player.Name, "нажал: Статуя")
end)
Как работает этот код
Клики по объекту. ClickDetector регистрирует клик по детали и сообщает серверу об игроке. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")Создаёт новый экземпляр объекта Roblox.detector.MaxActivationDistance = 12Определяет максимальную дистанцию для щелчка по объекту.detector.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.detector.MouseClick:Connect(function(player)Подключает функцию, вызываемую при щелчке игрока.
Измените MaxActivationDistance, проверьте клик вблизи и вдали и сообщение в Output.
Как проверить
При клике Output покажет сообщение; расстояние ограничено.
197Клик по деревуИнтерактивные объекты / События ClickDetector · Средний
Что делает скрипт
ClickDetector регистрирует клик по детали и сообщает серверу об игроке.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и в Play щёлкни по нему мышью.
local part = workspace:WaitForChild("DemoPart")
local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")
detector.MaxActivationDistance = 12
detector.Parent = part
detector.MouseClick:Connect(function(player)
print(player.Name, "нажал: Дерево")
end)
Как работает этот код
Клики по объекту. ClickDetector регистрирует клик по детали и сообщает серверу об игроке. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")Создаёт новый экземпляр объекта Roblox.detector.MaxActivationDistance = 12Определяет максимальную дистанцию для щелчка по объекту.detector.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.detector.MouseClick:Connect(function(player)Подключает функцию, вызываемую при щелчке игрока.
Измените MaxActivationDistance, проверьте клик вблизи и вдали и сообщение в Output.
Как проверить
При клике Output покажет сообщение; расстояние ограничено.
198Клик по порталуИнтерактивные объекты / События ClickDetector · Средний
Что делает скрипт
ClickDetector регистрирует клик по детали и сообщает серверу об игроке.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и в Play щёлкни по нему мышью.
local part = workspace:WaitForChild("DemoPart")
local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")
detector.MaxActivationDistance = 12
detector.Parent = part
detector.MouseClick:Connect(function(player)
print(player.Name, "нажал: Портал")
end)
Как работает этот код
Клики по объекту. ClickDetector регистрирует клик по детали и сообщает серверу об игроке. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")Создаёт новый экземпляр объекта Roblox.detector.MaxActivationDistance = 12Определяет максимальную дистанцию для щелчка по объекту.detector.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.detector.MouseClick:Connect(function(player)Подключает функцию, вызываемую при щелчке игрока.
Измените MaxActivationDistance, проверьте клик вблизи и вдали и сообщение в Output.
Как проверить
При клике Output покажет сообщение; расстояние ограничено.
199Клик по рычагуИнтерактивные объекты / События ClickDetector · Средний
Что делает скрипт
ClickDetector регистрирует клик по детали и сообщает серверу об игроке.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и в Play щёлкни по нему мышью.
local part = workspace:WaitForChild("DemoPart")
local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")
detector.MaxActivationDistance = 12
detector.Parent = part
detector.MouseClick:Connect(function(player)
print(player.Name, "нажал: Рычаг")
end)
Как работает этот код
Клики по объекту. ClickDetector регистрирует клик по детали и сообщает серверу об игроке. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")Создаёт новый экземпляр объекта Roblox.detector.MaxActivationDistance = 12Определяет максимальную дистанцию для щелчка по объекту.detector.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.detector.MouseClick:Connect(function(player)Подключает функцию, вызываемую при щелчке игрока.
Измените MaxActivationDistance, проверьте клик вблизи и вдали и сообщение в Output.
Как проверить
При клике Output покажет сообщение; расстояние ограничено.
200Клик по барабануИнтерактивные объекты / События ClickDetector · Средний
Что делает скрипт
ClickDetector регистрирует клик по детали и сообщает серверу об игроке.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и в Play щёлкни по нему мышью.
local part = workspace:WaitForChild("DemoPart")
local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")
detector.MaxActivationDistance = 12
detector.Parent = part
detector.MouseClick:Connect(function(player)
print(player.Name, "нажал: Барабан")
end)
Как работает этот код
Клики по объекту. ClickDetector регистрирует клик по детали и сообщает серверу об игроке. Проверьте описанные действия в Play и посмотрите результат в Output или Explorer.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Ожидает появления объекта с указанным именем и возвращает его.local detector = part:FindFirstChildOfClass("ClickDetector") or Instance.new("ClickDetector")Создаёт новый экземпляр объекта Roblox.detector.MaxActivationDistance = 12Определяет максимальную дистанцию для щелчка по объекту.detector.Parent = partВыполняет действие или присваивание, указанное в этой строке; сравните результат с данными в коде.detector.MouseClick:Connect(function(player)Подключает функцию, вызываемую при щелчке игрока.
Измените MaxActivationDistance, проверьте клик вблизи и вдали и сообщение в Output.
Как проверить
При клике Output покажет сообщение; расстояние ограничено.
201Подпись счётаGUI и мобильность / Текст в игровом интерфейсе · Начальный
Что делает скрипт
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента.
Куда вставить
LocalScript внутри TextLabel в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте ScreenGui, вложи TextLabel и LocalScript. Запустите Play.
local label = script.Parent
assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")
label.Text = "Очки: 0"
label.TextScaled = true
Как работает этот код
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local label = script.ParentПолучаем TextLabel, в который вложен LocalScript.assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")Проверяем тип объекта; при ошибке получим понятное сообщение.label.Text = "Очки: 0"Задаём статичную надпись. Счёт игрока не считывается автоматически.label.TextScaled = trueТекст автоматически подгоняется по размерам поля.
Замени надпись на собственную и попробуйте изменить размер TextLabel. Для настоящего динамического счётчика потребуется отдельно получать значение очков игрока. Применение: «Подпись счёта».
Как проверить
На экране появится подпись; размер текста подстроится под рамку.
202Подпись звёздGUI и мобильность / Текст в игровом интерфейсе · Начальный
Что делает скрипт
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента.
Куда вставить
LocalScript внутри TextLabel в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте ScreenGui, вложи TextLabel и LocalScript. Запустите Play.
local label = script.Parent
assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")
label.Text = "Звёзды: 0"
label.TextScaled = true
Как работает этот код
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local label = script.ParentПолучаем TextLabel, в который вложен LocalScript.assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")Проверяем тип объекта; при ошибке получим понятное сообщение.label.Text = "Звёзды: 0"Задаём статичную надпись. Счёт игрока не считывается автоматически.label.TextScaled = trueТекст автоматически подгоняется по размерам поля.
Замени надпись на собственную и попробуйте изменить размер TextLabel. Для настоящего динамического счётчика потребуется отдельно получать значение очков игрока. Применение: «Подпись звёзд».
Как проверить
На экране появится подпись; размер текста подстроится под рамку.
203Подпись раундаGUI и мобильность / Текст в игровом интерфейсе · Начальный
Что делает скрипт
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента.
Куда вставить
LocalScript внутри TextLabel в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте ScreenGui, вложи TextLabel и LocalScript. Запустите Play.
local label = script.Parent
assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")
label.Text = "Раунд: 1"
label.TextScaled = true
Как работает этот код
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local label = script.ParentПолучаем TextLabel, в который вложен LocalScript.assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")Проверяем тип объекта; при ошибке получим понятное сообщение.label.Text = "Раунд: 1"Задаём статичную надпись. Счёт игрока не считывается автоматически.label.TextScaled = trueТекст автоматически подгоняется по размерам поля.
Замени надпись на собственную и попробуйте изменить размер TextLabel. Для настоящего динамического счётчика потребуется отдельно получать значение очков игрока. Применение: «Подпись раунда».
Как проверить
На экране появится подпись; размер текста подстроится под рамку.
204Подпись картыGUI и мобильность / Текст в игровом интерфейсе · Начальный
Что делает скрипт
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента.
Куда вставить
LocalScript внутри TextLabel в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте ScreenGui, вложи TextLabel и LocalScript. Запустите Play.
local label = script.Parent
assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")
label.Text = "Карта: остров"
label.TextScaled = true
Как работает этот код
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local label = script.ParentПолучаем TextLabel, в который вложен LocalScript.assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")Проверяем тип объекта; при ошибке получим понятное сообщение.label.Text = "Карта: остров"Задаём статичную надпись. Счёт игрока не считывается автоматически.label.TextScaled = trueТекст автоматически подгоняется по размерам поля.
Замени надпись на собственную и попробуйте изменить размер TextLabel. Для настоящего динамического счётчика потребуется отдельно получать значение очков игрока. Применение: «Подпись карты».
Как проверить
На экране появится подпись; размер текста подстроится под рамку.
205Подпись здоровьяGUI и мобильность / Текст в игровом интерфейсе · Начальный
Что делает скрипт
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента.
Куда вставить
LocalScript внутри TextLabel в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте ScreenGui, вложи TextLabel и LocalScript. Запустите Play.
local label = script.Parent
assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")
label.Text = "Здоровье"
label.TextScaled = true
Как работает этот код
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local label = script.ParentПолучаем TextLabel, в который вложен LocalScript.assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")Проверяем тип объекта; при ошибке получим понятное сообщение.label.Text = "Здоровье"Задаём статичную надпись. Счёт игрока не считывается автоматически.label.TextScaled = trueТекст автоматически подгоняется по размерам поля.
Замени надпись на собственную и попробуйте изменить размер TextLabel. Для настоящего динамического счётчика потребуется отдельно получать значение очков игрока. Применение: «Подпись здоровья».
Как проверить
На экране появится подпись; размер текста подстроится под рамку.
206Подпись рекордаGUI и мобильность / Текст в игровом интерфейсе · Начальный
Что делает скрипт
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента.
Куда вставить
LocalScript внутри TextLabel в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте ScreenGui, вложи TextLabel и LocalScript. Запустите Play.
local label = script.Parent
assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")
label.Text = "Рекорд: —"
label.TextScaled = true
Как работает этот код
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local label = script.ParentПолучаем TextLabel, в который вложен LocalScript.assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")Проверяем тип объекта; при ошибке получим понятное сообщение.label.Text = "Рекорд: —"Задаём статичную надпись. Счёт игрока не считывается автоматически.label.TextScaled = trueТекст автоматически подгоняется по размерам поля.
Замени надпись на собственную и попробуйте изменить размер TextLabel. Для настоящего динамического счётчика потребуется отдельно получать значение очков игрока. Применение: «Подпись рекорда».
Как проверить
На экране появится подпись; размер текста подстроится под рамку.
207Подпись командыGUI и мобильность / Текст в игровом интерфейсе · Начальный
Что делает скрипт
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента.
Куда вставить
LocalScript внутри TextLabel в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте ScreenGui, вложи TextLabel и LocalScript. Запустите Play.
local label = script.Parent
assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")
label.Text = "Команда: нет"
label.TextScaled = true
Как работает этот код
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local label = script.ParentПолучаем TextLabel, в который вложен LocalScript.assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")Проверяем тип объекта; при ошибке получим понятное сообщение.label.Text = "Команда: нет"Задаём статичную надпись. Счёт игрока не считывается автоматически.label.TextScaled = trueТекст автоматически подгоняется по размерам поля.
Замени надпись на собственную и попробуйте изменить размер TextLabel. Для настоящего динамического счётчика потребуется отдельно получать значение очков игрока. Применение: «Подпись команды».
Как проверить
На экране появится подпись; размер текста подстроится под рамку.
208Подпись заданияGUI и мобильность / Текст в игровом интерфейсе · Начальный
Что делает скрипт
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента.
Куда вставить
LocalScript внутри TextLabel в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте ScreenGui, вложи TextLabel и LocalScript. Запустите Play.
local label = script.Parent
assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")
label.Text = "Найди ключ"
label.TextScaled = true
Как работает этот код
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local label = script.ParentПолучаем TextLabel, в который вложен LocalScript.assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")Проверяем тип объекта; при ошибке получим понятное сообщение.label.Text = "Найди ключ"Задаём статичную надпись. Счёт игрока не считывается автоматически.label.TextScaled = trueТекст автоматически подгоняется по размерам поля.
Замени надпись на собственную и попробуйте изменить размер TextLabel. Для настоящего динамического счётчика потребуется отдельно получать значение очков игрока. Применение: «Подпись задания».
Как проверить
На экране появится подпись; размер текста подстроится под рамку.
209Подпись уровняGUI и мобильность / Текст в игровом интерфейсе · Начальный
Что делает скрипт
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента.
Куда вставить
LocalScript внутри TextLabel в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте ScreenGui, вложи TextLabel и LocalScript. Запустите Play.
local label = script.Parent
assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")
label.Text = "Уровень: 1"
label.TextScaled = true
Как работает этот код
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local label = script.ParentПолучаем TextLabel, в который вложен LocalScript.assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")Проверяем тип объекта; при ошибке получим понятное сообщение.label.Text = "Уровень: 1"Задаём статичную надпись. Счёт игрока не считывается автоматически.label.TextScaled = trueТекст автоматически подгоняется по размерам поля.
Замени надпись на собственную и попробуйте изменить размер TextLabel. Для настоящего динамического счётчика потребуется отдельно получать значение очков игрока. Применение: «Подпись уровня».
Как проверить
На экране появится подпись; размер текста подстроится под рамку.
210Подпись победыGUI и мобильность / Текст в игровом интерфейсе · Начальный
Что делает скрипт
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента.
Куда вставить
LocalScript внутри TextLabel в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте ScreenGui, вложи TextLabel и LocalScript. Запустите Play.
local label = script.Parent
assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")
label.Text = "Победа!"
label.TextScaled = true
Как работает этот код
TextLabel.Text хранит видимый текст; TextScaled масштабирует его по размерам элемента. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local label = script.ParentПолучаем TextLabel, в который вложен LocalScript.assert(label:IsA("TextLabel"), "Помести LocalScript в TextLabel")Проверяем тип объекта; при ошибке получим понятное сообщение.label.Text = "Победа!"Задаём статичную надпись. Счёт игрока не считывается автоматически.label.TextScaled = trueТекст автоматически подгоняется по размерам поля.
Замени надпись на собственную и попробуйте изменить размер TextLabel. Для настоящего динамического счётчика потребуется отдельно получать значение очков игрока. Применение: «Подпись победы».
Как проверить
На экране появится подпись; размер текста подстроится под рамку.
211Кнопка игрового стартаGUI и мобильность / Изменение кнопок GUI · Начальный
Что делает скрипт
Activated работает с мышью, тач-устройствами и игровым вводом.
Куда вставить
LocalScript внутри TextButton в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте TextButton и LocalScript, затем нажмите на кнопку мышью или касанием.
local button = script.Parent
assert(button:IsA("TextButton"), "Нужен TextButton")
button.Text = "Начать"
button.Activated:Connect(function()
print("Нажата кнопка: Начать")
end)
Как работает этот код
Activated работает с мышью, тач-устройствами и игровым вводом. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local button = script.ParentПолучаем кнопку TextButton, в которой расположен LocalScript.button.Text = "Начать"Устанавливаем текст на кнопке.button.Activated:Connect(function()Подписываемся на нажатие мышью или касание экрана.print("Нажата кнопка: Начать")Показываем событие в Output; меню или игровая механика ещё не запускаются.
Измените надпись кнопки и добавьте изменение её цвета при нажатии. Проверьте мышью и в эмуляторе телефона; одно сообщение в Output не запускает игру. Применение: «Кнопка игрового старта».
Как проверить
Кнопка получит свою надпись; Output покажет сообщение.
212Кнопка продолжитьGUI и мобильность / Изменение кнопок GUI · Начальный
Что делает скрипт
Activated работает с мышью, тач-устройствами и игровым вводом.
Куда вставить
LocalScript внутри TextButton в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте TextButton и LocalScript, затем нажмите на кнопку мышью или касанием.
local button = script.Parent
assert(button:IsA("TextButton"), "Нужен TextButton")
button.Text = "Продолжить"
button.Activated:Connect(function()
print("Нажата кнопка: Продолжить")
end)
Как работает этот код
Activated работает с мышью, тач-устройствами и игровым вводом. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local button = script.ParentПолучаем кнопку TextButton, в которой расположен LocalScript.button.Text = "Продолжить"Устанавливаем текст на кнопке.button.Activated:Connect(function()Подписываемся на нажатие мышью или касание экрана.print("Нажата кнопка: Продолжить")Показываем событие в Output; меню или игровая механика ещё не запускаются.
Измените надпись кнопки и добавьте изменение её цвета при нажатии. Проверьте мышью и в эмуляторе телефона; одно сообщение в Output не запускает игру. Применение: «Кнопка продолжить».
Как проверить
Кнопка получит свою надпись; Output покажет сообщение.
213Кнопка магазинаGUI и мобильность / Изменение кнопок GUI · Начальный
Что делает скрипт
Activated работает с мышью, тач-устройствами и игровым вводом.
Куда вставить
LocalScript внутри TextButton в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте TextButton и LocalScript, затем нажмите на кнопку мышью или касанием.
local button = script.Parent
assert(button:IsA("TextButton"), "Нужен TextButton")
button.Text = "Магазин"
button.Activated:Connect(function()
print("Нажата кнопка: Магазин")
end)
Как работает этот код
Activated работает с мышью, тач-устройствами и игровым вводом. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local button = script.ParentПолучаем кнопку TextButton, в которой расположен LocalScript.button.Text = "Магазин"Устанавливаем текст на кнопке.button.Activated:Connect(function()Подписываемся на нажатие мышью или касание экрана.print("Нажата кнопка: Магазин")Показываем событие в Output; меню или игровая механика ещё не запускаются.
Измените надпись кнопки и добавьте изменение её цвета при нажатии. Проверьте мышью и в эмуляторе телефона; одно сообщение в Output не запускает игру. Применение: «Кнопка магазина».
Как проверить
Кнопка получит свою надпись; Output покажет сообщение.
214Кнопка закрытьGUI и мобильность / Изменение кнопок GUI · Начальный
Что делает скрипт
Activated работает с мышью, тач-устройствами и игровым вводом.
Куда вставить
LocalScript внутри TextButton в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте TextButton и LocalScript, затем нажмите на кнопку мышью или касанием.
local button = script.Parent
assert(button:IsA("TextButton"), "Нужен TextButton")
button.Text = "Закрыть"
button.Activated:Connect(function()
print("Нажата кнопка: Закрыть")
end)
Как работает этот код
Activated работает с мышью, тач-устройствами и игровым вводом. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local button = script.ParentПолучаем кнопку TextButton, в которой расположен LocalScript.button.Text = "Закрыть"Устанавливаем текст на кнопке.button.Activated:Connect(function()Подписываемся на нажатие мышью или касание экрана.print("Нажата кнопка: Закрыть")Показываем событие в Output; меню или игровая механика ещё не запускаются.
Измените надпись кнопки и добавьте изменение её цвета при нажатии. Проверьте мышью и в эмуляторе телефона; одно сообщение в Output не запускает игру. Применение: «Кнопка закрыть».
Как проверить
Кнопка получит свою надпись; Output покажет сообщение.
215Кнопка помощиGUI и мобильность / Изменение кнопок GUI · Начальный
Что делает скрипт
Activated работает с мышью, тач-устройствами и игровым вводом.
Куда вставить
LocalScript внутри TextButton в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте TextButton и LocalScript, затем нажмите на кнопку мышью или касанием.
local button = script.Parent
assert(button:IsA("TextButton"), "Нужен TextButton")
button.Text = "Помощь"
button.Activated:Connect(function()
print("Нажата кнопка: Помощь")
end)
Как работает этот код
Activated работает с мышью, тач-устройствами и игровым вводом. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local button = script.ParentПолучаем кнопку TextButton, в которой расположен LocalScript.button.Text = "Помощь"Устанавливаем текст на кнопке.button.Activated:Connect(function()Подписываемся на нажатие мышью или касание экрана.print("Нажата кнопка: Помощь")Показываем событие в Output; меню или игровая механика ещё не запускаются.
Измените надпись кнопки и добавьте изменение её цвета при нажатии. Проверьте мышью и в эмуляторе телефона; одно сообщение в Output не запускает игру. Применение: «Кнопка помощи».
Как проверить
Кнопка получит свою надпись; Output покажет сообщение.
216Кнопка настроекGUI и мобильность / Изменение кнопок GUI · Начальный
Что делает скрипт
Activated работает с мышью, тач-устройствами и игровым вводом.
Куда вставить
LocalScript внутри TextButton в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте TextButton и LocalScript, затем нажмите на кнопку мышью или касанием.
local button = script.Parent
assert(button:IsA("TextButton"), "Нужен TextButton")
button.Text = "Настройки"
button.Activated:Connect(function()
print("Нажата кнопка: Настройки")
end)
Как работает этот код
Activated работает с мышью, тач-устройствами и игровым вводом. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local button = script.ParentПолучаем кнопку TextButton, в которой расположен LocalScript.button.Text = "Настройки"Устанавливаем текст на кнопке.button.Activated:Connect(function()Подписываемся на нажатие мышью или касание экрана.print("Нажата кнопка: Настройки")Показываем событие в Output; меню или игровая механика ещё не запускаются.
Измените надпись кнопки и добавьте изменение её цвета при нажатии. Проверьте мышью и в эмуляторе телефона; одно сообщение в Output не запускает игру. Применение: «Кнопка настроек».
Как проверить
Кнопка получит свою надпись; Output покажет сообщение.
217Кнопка картыGUI и мобильность / Изменение кнопок GUI · Начальный
Что делает скрипт
Activated работает с мышью, тач-устройствами и игровым вводом.
Куда вставить
LocalScript внутри TextButton в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте TextButton и LocalScript, затем нажмите на кнопку мышью или касанием.
local button = script.Parent
assert(button:IsA("TextButton"), "Нужен TextButton")
button.Text = "Карта"
button.Activated:Connect(function()
print("Нажата кнопка: Карта")
end)
Как работает этот код
Activated работает с мышью, тач-устройствами и игровым вводом. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local button = script.ParentПолучаем кнопку TextButton, в которой расположен LocalScript.button.Text = "Карта"Устанавливаем текст на кнопке.button.Activated:Connect(function()Подписываемся на нажатие мышью или касание экрана.print("Нажата кнопка: Карта")Показываем событие в Output; меню или игровая механика ещё не запускаются.
Измените надпись кнопки и добавьте изменение её цвета при нажатии. Проверьте мышью и в эмуляторе телефона; одно сообщение в Output не запускает игру. Применение: «Кнопка карты».
Как проверить
Кнопка получит свою надпись; Output покажет сообщение.
218Кнопка инвентаряGUI и мобильность / Изменение кнопок GUI · Начальный
Что делает скрипт
Activated работает с мышью, тач-устройствами и игровым вводом.
Куда вставить
LocalScript внутри TextButton в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте TextButton и LocalScript, затем нажмите на кнопку мышью или касанием.
local button = script.Parent
assert(button:IsA("TextButton"), "Нужен TextButton")
button.Text = "Инвентарь"
button.Activated:Connect(function()
print("Нажата кнопка: Инвентарь")
end)
Как работает этот код
Activated работает с мышью, тач-устройствами и игровым вводом. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local button = script.ParentПолучаем кнопку TextButton, в которой расположен LocalScript.button.Text = "Инвентарь"Устанавливаем текст на кнопке.button.Activated:Connect(function()Подписываемся на нажатие мышью или касание экрана.print("Нажата кнопка: Инвентарь")Показываем событие в Output; меню или игровая механика ещё не запускаются.
Измените надпись кнопки и добавьте изменение её цвета при нажатии. Проверьте мышью и в эмуляторе телефона; одно сообщение в Output не запускает игру. Применение: «Кнопка инвентаря».
Как проверить
Кнопка получит свою надпись; Output покажет сообщение.
219Кнопка повтораGUI и мобильность / Изменение кнопок GUI · Начальный
Что делает скрипт
Activated работает с мышью, тач-устройствами и игровым вводом.
Куда вставить
LocalScript внутри TextButton в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте TextButton и LocalScript, затем нажмите на кнопку мышью или касанием.
local button = script.Parent
assert(button:IsA("TextButton"), "Нужен TextButton")
button.Text = "Повторить"
button.Activated:Connect(function()
print("Нажата кнопка: Повторить")
end)
Как работает этот код
Activated работает с мышью, тач-устройствами и игровым вводом. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local button = script.ParentПолучаем кнопку TextButton, в которой расположен LocalScript.button.Text = "Повторить"Устанавливаем текст на кнопке.button.Activated:Connect(function()Подписываемся на нажатие мышью или касание экрана.print("Нажата кнопка: Повторить")Показываем событие в Output; меню или игровая механика ещё не запускаются.
Измените надпись кнопки и добавьте изменение её цвета при нажатии. Проверьте мышью и в эмуляторе телефона; одно сообщение в Output не запускает игру. Применение: «Кнопка повтора».
Как проверить
Кнопка получит свою надпись; Output покажет сообщение.
220Кнопка достиженийGUI и мобильность / Изменение кнопок GUI · Начальный
Что делает скрипт
Activated работает с мышью, тач-устройствами и игровым вводом.
Куда вставить
LocalScript внутри TextButton в ScreenGui → StarterGui
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте TextButton и LocalScript, затем нажмите на кнопку мышью или касанием.
local button = script.Parent
assert(button:IsA("TextButton"), "Нужен TextButton")
button.Text = "Награды"
button.Activated:Connect(function()
print("Нажата кнопка: Награды")
end)
Как работает этот код
Activated работает с мышью, тач-устройствами и игровым вводом. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local button = script.ParentПолучаем кнопку TextButton, в которой расположен LocalScript.button.Text = "Награды"Устанавливаем текст на кнопке.button.Activated:Connect(function()Подписываемся на нажатие мышью или касание экрана.print("Нажата кнопка: Награды")Показываем событие в Output; меню или игровая механика ещё не запускаются.
Измените надпись кнопки и добавьте изменение её цвета при нажатии. Проверьте мышью и в эмуляторе телефона; одно сообщение в Output не запускает игру. Применение: «Кнопка достижений».
Как проверить
Кнопка получит свою надпись; Output покажет сообщение.
221Плавное появление деталиДвижение и эффекты / Плавные анимации TweenService · Средний
Что делает скрипт
TweenService плавно переводит указанное свойство к целевому значению.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и установите Transparency=0.4 перед запуском.
local TweenService = game:GetService("TweenService")
local part = workspace:WaitForChild("DemoPart")
local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.0})
tween:Play()
Как работает этот код
В примере «Плавное появление детали» используется механизм: TweenService плавно переводит указанное свойство к целевому значению.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис анимаций свойств.local part = workspace:WaitForChild("DemoPart")Ожидаем деталь DemoPart в Workspace.local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.0})Настраиваем продолжительность плавного перехода.tween:Play()Запускаем анимацию один раз.
Измените время TweenInfo с 2 до 4 секунд и конечную прозрачность. Перед запуском задавай DemoPart исходное значение Transparency, чтобы увидеть переход. Применение: «Плавное появление детали».
Как проверить
Прозрачность детали плавно изменится за две секунды.
222Полупрозрачный призракДвижение и эффекты / Плавные анимации TweenService · Средний
Что делает скрипт
TweenService плавно переводит указанное свойство к целевому значению.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и установите Transparency=0.4 перед запуском.
local TweenService = game:GetService("TweenService")
local part = workspace:WaitForChild("DemoPart")
local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.5})
tween:Play()
Как работает этот код
В примере «Полупрозрачный призрак» используется механизм: TweenService плавно переводит указанное свойство к целевому значению.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис анимаций свойств.local part = workspace:WaitForChild("DemoPart")Ожидаем деталь DemoPart в Workspace.local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.5})Настраиваем продолжительность плавного перехода.tween:Play()Запускаем анимацию один раз.
Измените время TweenInfo с 2 до 4 секунд и конечную прозрачность. Перед запуском задавай DemoPart исходное значение Transparency, чтобы увидеть переход. Применение: «Полупрозрачный призрак».
Как проверить
Прозрачность детали плавно изменится за две секунды.
223Почти невидимая дверьДвижение и эффекты / Плавные анимации TweenService · Средний
Что делает скрипт
TweenService плавно переводит указанное свойство к целевому значению.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и установите Transparency=0.4 перед запуском.
local TweenService = game:GetService("TweenService")
local part = workspace:WaitForChild("DemoPart")
local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.85})
tween:Play()
Как работает этот код
В примере «Почти невидимая дверь» используется механизм: TweenService плавно переводит указанное свойство к целевому значению.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис анимаций свойств.local part = workspace:WaitForChild("DemoPart")Ожидаем деталь DemoPart в Workspace.local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.85})Настраиваем продолжительность плавного перехода.tween:Play()Запускаем анимацию один раз.
Измените время TweenInfo с 2 до 4 секунд и конечную прозрачность. Перед запуском задавай DemoPart исходное значение Transparency, чтобы увидеть переход. Применение: «Почти невидимая дверь».
Как проверить
Прозрачность детали плавно изменится за две секунды.
224Плавная прозрачная стенаДвижение и эффекты / Плавные анимации TweenService · Средний
Что делает скрипт
TweenService плавно переводит указанное свойство к целевому значению.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и установите Transparency=0.4 перед запуском.
local TweenService = game:GetService("TweenService")
local part = workspace:WaitForChild("DemoPart")
local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.7})
tween:Play()
Как работает этот код
В примере «Плавная прозрачная стена» используется механизм: TweenService плавно переводит указанное свойство к целевому значению.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис анимаций свойств.local part = workspace:WaitForChild("DemoPart")Ожидаем деталь DemoPart в Workspace.local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.7})Настраиваем продолжительность плавного перехода.tween:Play()Запускаем анимацию один раз.
Измените время TweenInfo с 2 до 4 секунд и конечную прозрачность. Перед запуском задавай DemoPart исходное значение Transparency, чтобы увидеть переход. Применение: «Плавная прозрачная стена».
Как проверить
Прозрачность детали плавно изменится за две секунды.
225Появление платформыДвижение и эффекты / Плавные анимации TweenService · Средний
Что делает скрипт
TweenService плавно переводит указанное свойство к целевому значению.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и установите Transparency=0.4 перед запуском.
local TweenService = game:GetService("TweenService")
local part = workspace:WaitForChild("DemoPart")
local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.1})
tween:Play()
Как работает этот код
В примере «Появление платформы» используется механизм: TweenService плавно переводит указанное свойство к целевому значению.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис анимаций свойств.local part = workspace:WaitForChild("DemoPart")Ожидаем деталь DemoPart в Workspace.local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.1})Настраиваем продолжительность плавного перехода.tween:Play()Запускаем анимацию один раз.
Измените время TweenInfo с 2 до 4 секунд и конечную прозрачность. Перед запуском задавай DemoPart исходное значение Transparency, чтобы увидеть переход. Применение: «Появление платформы».
Как проверить
Прозрачность детали плавно изменится за две секунды.
226Призрачный порталДвижение и эффекты / Плавные анимации TweenService · Средний
Что делает скрипт
TweenService плавно переводит указанное свойство к целевому значению.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и установите Transparency=0.4 перед запуском.
local TweenService = game:GetService("TweenService")
local part = workspace:WaitForChild("DemoPart")
local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.6})
tween:Play()
Как работает этот код
В примере «Призрачный портал» используется механизм: TweenService плавно переводит указанное свойство к целевому значению.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис анимаций свойств.local part = workspace:WaitForChild("DemoPart")Ожидаем деталь DemoPart в Workspace.local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.6})Настраиваем продолжительность плавного перехода.tween:Play()Запускаем анимацию один раз.
Измените время TweenInfo с 2 до 4 секунд и конечную прозрачность. Перед запуском задавай DemoPart исходное значение Transparency, чтобы увидеть переход. Применение: «Призрачный портал».
Как проверить
Прозрачность детали плавно изменится за две секунды.
227Светящийся указательДвижение и эффекты / Плавные анимации TweenService · Средний
Что делает скрипт
TweenService плавно переводит указанное свойство к целевому значению.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и установите Transparency=0.4 перед запуском.
local TweenService = game:GetService("TweenService")
local part = workspace:WaitForChild("DemoPart")
local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.3})
tween:Play()
Как работает этот код
В примере «Светящийся указатель» используется механизм: TweenService плавно переводит указанное свойство к целевому значению.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис анимаций свойств.local part = workspace:WaitForChild("DemoPart")Ожидаем деталь DemoPart в Workspace.local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.3})Настраиваем продолжительность плавного перехода.tween:Play()Запускаем анимацию один раз.
Измените время TweenInfo с 2 до 4 секунд и конечную прозрачность. Перед запуском задавай DemoPart исходное значение Transparency, чтобы увидеть переход. Применение: «Светящийся указатель».
Как проверить
Прозрачность детали плавно изменится за две секунды.
228Скрытая панельДвижение и эффекты / Плавные анимации TweenService · Средний
Что делает скрипт
TweenService плавно переводит указанное свойство к целевому значению.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и установите Transparency=0.4 перед запуском.
local TweenService = game:GetService("TweenService")
local part = workspace:WaitForChild("DemoPart")
local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.95})
tween:Play()
Как работает этот код
В примере «Скрытая панель» используется механизм: TweenService плавно переводит указанное свойство к целевому значению.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис анимаций свойств.local part = workspace:WaitForChild("DemoPart")Ожидаем деталь DemoPart в Workspace.local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.95})Настраиваем продолжительность плавного перехода.tween:Play()Запускаем анимацию один раз.
Измените время TweenInfo с 2 до 4 секунд и конечную прозрачность. Перед запуском задавай DemoPart исходное значение Transparency, чтобы увидеть переход. Применение: «Скрытая панель».
Как проверить
Прозрачность детали плавно изменится за две секунды.
229Мягкое исчезновениеДвижение и эффекты / Плавные анимации TweenService · Средний
Что делает скрипт
TweenService плавно переводит указанное свойство к целевому значению.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и установите Transparency=0.4 перед запуском.
local TweenService = game:GetService("TweenService")
local part = workspace:WaitForChild("DemoPart")
local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 1.0})
tween:Play()
Как работает этот код
В примере «Мягкое исчезновение» используется механизм: TweenService плавно переводит указанное свойство к целевому значению.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис анимаций свойств.local part = workspace:WaitForChild("DemoPart")Ожидаем деталь DemoPart в Workspace.local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 1.0})Настраиваем продолжительность плавного перехода.tween:Play()Запускаем анимацию один раз.
Измените время TweenInfo с 2 до 4 секунд и конечную прозрачность. Перед запуском задавай DemoPart исходное значение Transparency, чтобы увидеть переход. Применение: «Мягкое исчезновение».
Как проверить
Прозрачность детали плавно изменится за две секунды.
230Плавное затемнениеДвижение и эффекты / Плавные анимации TweenService · Средний
Что делает скрипт
TweenService плавно переводит указанное свойство к целевому значению.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и установите Transparency=0.4 перед запуском.
local TweenService = game:GetService("TweenService")
local part = workspace:WaitForChild("DemoPart")
local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.8})
tween:Play()
Как работает этот код
В примере «Плавное затемнение» используется механизм: TweenService плавно переводит указанное свойство к целевому значению.
Разбор строк
local TweenService = game:GetService("TweenService")Получаем сервис анимаций свойств.local part = workspace:WaitForChild("DemoPart")Ожидаем деталь DemoPart в Workspace.local tween = TweenService:Create(part, TweenInfo.new(2), {Transparency = 0.8})Настраиваем продолжительность плавного перехода.tween:Play()Запускаем анимацию один раз.
Измените время TweenInfo с 2 до 4 секунд и конечную прозрачность. Перед запуском задавай DemoPart исходное значение Transparency, чтобы увидеть переход. Применение: «Плавное затемнение».
Как проверить
Прозрачность детали плавно изменится за две секунды.
231Красный фонарьДвижение и эффекты / Динамический свет · Средний
Что делает скрипт
PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и запустите Play, лучше в тёмной сцене.
local part = workspace:WaitForChild("DemoPart")
local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")
light.Parent = part
light.Color = Color3.fromRGB(255,80,80)
light.Brightness = 2
light.Range = 16
Как работает этот код
В примере «Красный фонарь» используется механизм: PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, из которой будет исходить свет.local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")Повторно используем существующий светильник либо создаём новый.light.Parent = partПомещаем источник света внутрь детали.light.Color = Color3.fromRGB(255,80,80)Задаём цвет света числами от 0 до 255.light.Brightness = 2Устанавливаем яркость.light.Range = 16Определяем дальность действия источника света.
Измените яркость и дальность PointLight и сравните эффект в тёмном помещении. Проверь, что в DemoPart остался только один источник света. Применение: «Красный фонарь».
Как проверить
Вокруг детали появится свет нужного оттенка.
232Синяя лампаДвижение и эффекты / Динамический свет · Средний
Что делает скрипт
PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и запустите Play, лучше в тёмной сцене.
local part = workspace:WaitForChild("DemoPart")
local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")
light.Parent = part
light.Color = Color3.fromRGB(70,130,255)
light.Brightness = 2
light.Range = 16
Как работает этот код
В примере «Синяя лампа» используется механизм: PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, из которой будет исходить свет.local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")Повторно используем существующий светильник либо создаём новый.light.Parent = partПомещаем источник света внутрь детали.light.Color = Color3.fromRGB(70,130,255)Задаём цвет света числами от 0 до 255.light.Brightness = 2Устанавливаем яркость.light.Range = 16Определяем дальность действия источника света.
Измените яркость и дальность PointLight и сравните эффект в тёмном помещении. Проверь, что в DemoPart остался только один источник света. Применение: «Синяя лампа».
Как проверить
Вокруг детали появится свет нужного оттенка.
233Зелёный маякДвижение и эффекты / Динамический свет · Средний
Что делает скрипт
PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и запустите Play, лучше в тёмной сцене.
local part = workspace:WaitForChild("DemoPart")
local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")
light.Parent = part
light.Color = Color3.fromRGB(80,235,115)
light.Brightness = 2
light.Range = 16
Как работает этот код
В примере «Зелёный маяк» используется механизм: PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, из которой будет исходить свет.local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")Повторно используем существующий светильник либо создаём новый.light.Parent = partПомещаем источник света внутрь детали.light.Color = Color3.fromRGB(80,235,115)Задаём цвет света числами от 0 до 255.light.Brightness = 2Устанавливаем яркость.light.Range = 16Определяем дальность действия источника света.
Измените яркость и дальность PointLight и сравните эффект в тёмном помещении. Проверь, что в DemoPart остался только один источник света. Применение: «Зелёный маяк».
Как проверить
Вокруг детали появится свет нужного оттенка.
234Фиолетовый кристаллДвижение и эффекты / Динамический свет · Средний
Что делает скрипт
PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и запустите Play, лучше в тёмной сцене.
local part = workspace:WaitForChild("DemoPart")
local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")
light.Parent = part
light.Color = Color3.fromRGB(177,90,255)
light.Brightness = 2
light.Range = 16
Как работает этот код
В примере «Фиолетовый кристалл» используется механизм: PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, из которой будет исходить свет.local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")Повторно используем существующий светильник либо создаём новый.light.Parent = partПомещаем источник света внутрь детали.light.Color = Color3.fromRGB(177,90,255)Задаём цвет света числами от 0 до 255.light.Brightness = 2Устанавливаем яркость.light.Range = 16Определяем дальность действия источника света.
Измените яркость и дальность PointLight и сравните эффект в тёмном помещении. Проверь, что в DemoPart остался только один источник света. Применение: «Фиолетовый кристалл».
Как проверить
Вокруг детали появится свет нужного оттенка.
235Жёлтый факелДвижение и эффекты / Динамический свет · Средний
Что делает скрипт
PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и запустите Play, лучше в тёмной сцене.
local part = workspace:WaitForChild("DemoPart")
local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")
light.Parent = part
light.Color = Color3.fromRGB(255,220,120)
light.Brightness = 2
light.Range = 16
Как работает этот код
В примере «Жёлтый факел» используется механизм: PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, из которой будет исходить свет.local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")Повторно используем существующий светильник либо создаём новый.light.Parent = partПомещаем источник света внутрь детали.light.Color = Color3.fromRGB(255,220,120)Задаём цвет света числами от 0 до 255.light.Brightness = 2Устанавливаем яркость.light.Range = 16Определяем дальность действия источника света.
Измените яркость и дальность PointLight и сравните эффект в тёмном помещении. Проверь, что в DemoPart остался только один источник света. Применение: «Жёлтый факел».
Как проверить
Вокруг детали появится свет нужного оттенка.
236Белый фонарикДвижение и эффекты / Динамический свет · Средний
Что делает скрипт
PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и запустите Play, лучше в тёмной сцене.
local part = workspace:WaitForChild("DemoPart")
local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")
light.Parent = part
light.Color = Color3.fromRGB(255,255,250)
light.Brightness = 2
light.Range = 16
Как работает этот код
В примере «Белый фонарик» используется механизм: PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, из которой будет исходить свет.local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")Повторно используем существующий светильник либо создаём новый.light.Parent = partПомещаем источник света внутрь детали.light.Color = Color3.fromRGB(255,255,250)Задаём цвет света числами от 0 до 255.light.Brightness = 2Устанавливаем яркость.light.Range = 16Определяем дальность действия источника света.
Измените яркость и дальность PointLight и сравните эффект в тёмном помещении. Проверь, что в DemoPart остался только один источник света. Применение: «Белый фонарик».
Как проверить
Вокруг детали появится свет нужного оттенка.
237Розовый неонДвижение и эффекты / Динамический свет · Средний
Что делает скрипт
PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и запустите Play, лучше в тёмной сцене.
local part = workspace:WaitForChild("DemoPart")
local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")
light.Parent = part
light.Color = Color3.fromRGB(255,115,200)
light.Brightness = 2
light.Range = 16
Как работает этот код
В примере «Розовый неон» используется механизм: PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, из которой будет исходить свет.local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")Повторно используем существующий светильник либо создаём новый.light.Parent = partПомещаем источник света внутрь детали.light.Color = Color3.fromRGB(255,115,200)Задаём цвет света числами от 0 до 255.light.Brightness = 2Устанавливаем яркость.light.Range = 16Определяем дальность действия источника света.
Измените яркость и дальность PointLight и сравните эффект в тёмном помещении. Проверь, что в DemoPart остался только один источник света. Применение: «Розовый неон».
Как проверить
Вокруг детали появится свет нужного оттенка.
238Бирюзовый светДвижение и эффекты / Динамический свет · Средний
Что делает скрипт
PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и запустите Play, лучше в тёмной сцене.
local part = workspace:WaitForChild("DemoPart")
local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")
light.Parent = part
light.Color = Color3.fromRGB(60,230,216)
light.Brightness = 2
light.Range = 16
Как работает этот код
В примере «Бирюзовый свет» используется механизм: PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, из которой будет исходить свет.local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")Повторно используем существующий светильник либо создаём новый.light.Parent = partПомещаем источник света внутрь детали.light.Color = Color3.fromRGB(60,230,216)Задаём цвет света числами от 0 до 255.light.Brightness = 2Устанавливаем яркость.light.Range = 16Определяем дальность действия источника света.
Измените яркость и дальность PointLight и сравните эффект в тёмном помещении. Проверь, что в DemoPart остался только один источник света. Применение: «Бирюзовый свет».
Как проверить
Вокруг детали появится свет нужного оттенка.
239Оранжевый прожекторДвижение и эффекты / Динамический свет · Средний
Что делает скрипт
PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и запустите Play, лучше в тёмной сцене.
local part = workspace:WaitForChild("DemoPart")
local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")
light.Parent = part
light.Color = Color3.fromRGB(255,165,65)
light.Brightness = 2
light.Range = 16
Как работает этот код
В примере «Оранжевый прожектор» используется механизм: PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, из которой будет исходить свет.local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")Повторно используем существующий светильник либо создаём новый.light.Parent = partПомещаем источник света внутрь детали.light.Color = Color3.fromRGB(255,165,65)Задаём цвет света числами от 0 до 255.light.Brightness = 2Устанавливаем яркость.light.Range = 16Определяем дальность действия источника света.
Измените яркость и дальность PointLight и сравните эффект в тёмном помещении. Проверь, что в DemoPart остался только один источник света. Применение: «Оранжевый прожектор».
Как проверить
Вокруг детали появится свет нужного оттенка.
240Голубой ледяной светДвижение и эффекты / Динамический свет · Средний
Что делает скрипт
PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart и запустите Play, лучше в тёмной сцене.
local part = workspace:WaitForChild("DemoPart")
local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")
light.Parent = part
light.Color = Color3.fromRGB(140,225,255)
light.Brightness = 2
light.Range = 16
Как работает этот код
В примере «Голубой ледяной свет» используется механизм: PointLight освещает область вокруг детали; Range и Brightness управляют радиусом и яркостью.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, из которой будет исходить свет.local light = part:FindFirstChildOfClass("PointLight") or Instance.new("PointLight")Повторно используем существующий светильник либо создаём новый.light.Parent = partПомещаем источник света внутрь детали.light.Color = Color3.fromRGB(140,225,255)Задаём цвет света числами от 0 до 255.light.Brightness = 2Устанавливаем яркость.light.Range = 16Определяем дальность действия источника света.
Измените яркость и дальность PointLight и сравните эффект в тёмном помещении. Проверь, что в DemoPart остался только один источник света. Применение: «Голубой ледяной свет».
Как проверить
Вокруг детали появится свет нужного оттенка.
241Редкие искрыДвижение и эффекты / Частицы и визуальные сигналы · Средний
Что делает скрипт
ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart. Добавьте ParticleEmitter или разреши скрипту создать его автоматически.
local part = workspace:WaitForChild("DemoPart")
local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")
emitter.Parent = part
emitter.Rate = 3
emitter.Lifetime = NumberRange.new(1, 2)
emitter.Speed = NumberRange.new(1, 3)
Как работает этот код
В примере «Редкие искры» используется механизм: ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, к которой прикрепляем частицы.local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")Пытаемся найти существующий эмиттер, чтобы не размножать его.emitter.Parent = partЧастицы будут испускаться этой деталью.emitter.Rate = 3Определяет среднее число создаваемых частиц в секунду.emitter.Lifetime = NumberRange.new(1, 2)Устанавливает диапазон времени жизни каждой частицы.emitter.Speed = NumberRange.new(1, 3)Устанавливает диапазон начальной скорости частиц.
Уменьши Rate вдвое и сравните количество частиц. Затем поменяй Lifetime и проверьте эффект; обрати внимание на производительность телефона. Применение: «Редкие искры».
Как проверить
Появятся частицы со скоростью выпуска примерно заданной в Rate.
242Мягкий снегДвижение и эффекты / Частицы и визуальные сигналы · Средний
Что делает скрипт
ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart. Добавьте ParticleEmitter или разреши скрипту создать его автоматически.
local part = workspace:WaitForChild("DemoPart")
local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")
emitter.Parent = part
emitter.Rate = 8
emitter.Lifetime = NumberRange.new(1, 2)
emitter.Speed = NumberRange.new(1, 3)
Как работает этот код
В примере «Мягкий снег» используется механизм: ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, к которой прикрепляем частицы.local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")Пытаемся найти существующий эмиттер, чтобы не размножать его.emitter.Parent = partЧастицы будут испускаться этой деталью.emitter.Rate = 8Определяет среднее число создаваемых частиц в секунду.emitter.Lifetime = NumberRange.new(1, 2)Устанавливает диапазон времени жизни каждой частицы.emitter.Speed = NumberRange.new(1, 3)Устанавливает диапазон начальной скорости частиц.
Уменьши Rate вдвое и сравните количество частиц. Затем поменяй Lifetime и проверьте эффект; обрати внимание на производительность телефона. Применение: «Мягкий снег».
Как проверить
Появятся частицы со скоростью выпуска примерно заданной в Rate.
243Дождевые каплиДвижение и эффекты / Частицы и визуальные сигналы · Средний
Что делает скрипт
ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart. Добавьте ParticleEmitter или разреши скрипту создать его автоматически.
local part = workspace:WaitForChild("DemoPart")
local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")
emitter.Parent = part
emitter.Rate = 15
emitter.Lifetime = NumberRange.new(1, 2)
emitter.Speed = NumberRange.new(1, 3)
Как работает этот код
В примере «Дождевые капли» используется механизм: ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, к которой прикрепляем частицы.local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")Пытаемся найти существующий эмиттер, чтобы не размножать его.emitter.Parent = partЧастицы будут испускаться этой деталью.emitter.Rate = 15Определяет среднее число создаваемых частиц в секунду.emitter.Lifetime = NumberRange.new(1, 2)Устанавливает диапазон времени жизни каждой частицы.emitter.Speed = NumberRange.new(1, 3)Устанавливает диапазон начальной скорости частиц.
Уменьши Rate вдвое и сравните количество частиц. Затем поменяй Lifetime и проверьте эффект; обрати внимание на производительность телефона. Применение: «Дождевые капли».
Как проверить
Появятся частицы со скоростью выпуска примерно заданной в Rate.
244Праздничные конфеттиДвижение и эффекты / Частицы и визуальные сигналы · Средний
Что делает скрипт
ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart. Добавьте ParticleEmitter или разреши скрипту создать его автоматически.
local part = workspace:WaitForChild("DemoPart")
local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")
emitter.Parent = part
emitter.Rate = 20
emitter.Lifetime = NumberRange.new(1, 2)
emitter.Speed = NumberRange.new(1, 3)
Как работает этот код
В примере «Праздничные конфетти» используется механизм: ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, к которой прикрепляем частицы.local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")Пытаемся найти существующий эмиттер, чтобы не размножать его.emitter.Parent = partЧастицы будут испускаться этой деталью.emitter.Rate = 20Определяет среднее число создаваемых частиц в секунду.emitter.Lifetime = NumberRange.new(1, 2)Устанавливает диапазон времени жизни каждой частицы.emitter.Speed = NumberRange.new(1, 3)Устанавливает диапазон начальной скорости частиц.
Уменьши Rate вдвое и сравните количество частиц. Затем поменяй Lifetime и проверьте эффект; обрати внимание на производительность телефона. Применение: «Праздничные конфетти».
Как проверить
Появятся частицы со скоростью выпуска примерно заданной в Rate.
245Пыль в пещереДвижение и эффекты / Частицы и визуальные сигналы · Средний
Что делает скрипт
ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart. Добавьте ParticleEmitter или разреши скрипту создать его автоматически.
local part = workspace:WaitForChild("DemoPart")
local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")
emitter.Parent = part
emitter.Rate = 2
emitter.Lifetime = NumberRange.new(1, 2)
emitter.Speed = NumberRange.new(1, 3)
Как работает этот код
В примере «Пыль в пещере» используется механизм: ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, к которой прикрепляем частицы.local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")Пытаемся найти существующий эмиттер, чтобы не размножать его.emitter.Parent = partЧастицы будут испускаться этой деталью.emitter.Rate = 2Определяет среднее число создаваемых частиц в секунду.emitter.Lifetime = NumberRange.new(1, 2)Устанавливает диапазон времени жизни каждой частицы.emitter.Speed = NumberRange.new(1, 3)Устанавливает диапазон начальной скорости частиц.
Уменьши Rate вдвое и сравните количество частиц. Затем поменяй Lifetime и проверьте эффект; обрати внимание на производительность телефона. Применение: «Пыль в пещере».
Как проверить
Появятся частицы со скоростью выпуска примерно заданной в Rate.
246Волшебные звёздочкиДвижение и эффекты / Частицы и визуальные сигналы · Средний
Что делает скрипт
ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart. Добавьте ParticleEmitter или разреши скрипту создать его автоматически.
local part = workspace:WaitForChild("DemoPart")
local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")
emitter.Parent = part
emitter.Rate = 6
emitter.Lifetime = NumberRange.new(1, 2)
emitter.Speed = NumberRange.new(1, 3)
Как работает этот код
В примере «Волшебные звёздочки» используется механизм: ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, к которой прикрепляем частицы.local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")Пытаемся найти существующий эмиттер, чтобы не размножать его.emitter.Parent = partЧастицы будут испускаться этой деталью.emitter.Rate = 6Определяет среднее число создаваемых частиц в секунду.emitter.Lifetime = NumberRange.new(1, 2)Устанавливает диапазон времени жизни каждой частицы.emitter.Speed = NumberRange.new(1, 3)Устанавливает диапазон начальной скорости частиц.
Уменьши Rate вдвое и сравните количество частиц. Затем поменяй Lifetime и проверьте эффект; обрати внимание на производительность телефона. Применение: «Волшебные звёздочки».
Как проверить
Появятся частицы со скоростью выпуска примерно заданной в Rate.
247Огненный следДвижение и эффекты / Частицы и визуальные сигналы · Средний
Что делает скрипт
ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart. Добавьте ParticleEmitter или разреши скрипту создать его автоматически.
local part = workspace:WaitForChild("DemoPart")
local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")
emitter.Parent = part
emitter.Rate = 14
emitter.Lifetime = NumberRange.new(1, 2)
emitter.Speed = NumberRange.new(1, 3)
Как работает этот код
В примере «Огненный след» используется механизм: ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, к которой прикрепляем частицы.local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")Пытаемся найти существующий эмиттер, чтобы не размножать его.emitter.Parent = partЧастицы будут испускаться этой деталью.emitter.Rate = 14Определяет среднее число создаваемых частиц в секунду.emitter.Lifetime = NumberRange.new(1, 2)Устанавливает диапазон времени жизни каждой частицы.emitter.Speed = NumberRange.new(1, 3)Устанавливает диапазон начальной скорости частиц.
Уменьши Rate вдвое и сравните количество частиц. Затем поменяй Lifetime и проверьте эффект; обрати внимание на производительность телефона. Применение: «Огненный след».
Как проверить
Появятся частицы со скоростью выпуска примерно заданной в Rate.
248Пузырьки в водеДвижение и эффекты / Частицы и визуальные сигналы · Средний
Что делает скрипт
ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart. Добавьте ParticleEmitter или разреши скрипту создать его автоматически.
local part = workspace:WaitForChild("DemoPart")
local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")
emitter.Parent = part
emitter.Rate = 10
emitter.Lifetime = NumberRange.new(1, 2)
emitter.Speed = NumberRange.new(1, 3)
Как работает этот код
В примере «Пузырьки в воде» используется механизм: ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, к которой прикрепляем частицы.local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")Пытаемся найти существующий эмиттер, чтобы не размножать его.emitter.Parent = partЧастицы будут испускаться этой деталью.emitter.Rate = 10Определяет среднее число создаваемых частиц в секунду.emitter.Lifetime = NumberRange.new(1, 2)Устанавливает диапазон времени жизни каждой частицы.emitter.Speed = NumberRange.new(1, 3)Устанавливает диапазон начальной скорости частиц.
Уменьши Rate вдвое и сравните количество частиц. Затем поменяй Lifetime и проверьте эффект; обрати внимание на производительность телефона. Применение: «Пузырьки в воде».
Как проверить
Появятся частицы со скоростью выпуска примерно заданной в Rate.
249Туман у порталаДвижение и эффекты / Частицы и визуальные сигналы · Средний
Что делает скрипт
ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart. Добавьте ParticleEmitter или разреши скрипту создать его автоматически.
local part = workspace:WaitForChild("DemoPart")
local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")
emitter.Parent = part
emitter.Rate = 5
emitter.Lifetime = NumberRange.new(1, 2)
emitter.Speed = NumberRange.new(1, 3)
Как работает этот код
В примере «Туман у портала» используется механизм: ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, к которой прикрепляем частицы.local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")Пытаемся найти существующий эмиттер, чтобы не размножать его.emitter.Parent = partЧастицы будут испускаться этой деталью.emitter.Rate = 5Определяет среднее число создаваемых частиц в секунду.emitter.Lifetime = NumberRange.new(1, 2)Устанавливает диапазон времени жизни каждой частицы.emitter.Speed = NumberRange.new(1, 3)Устанавливает диапазон начальной скорости частиц.
Уменьши Rate вдвое и сравните количество частиц. Затем поменяй Lifetime и проверьте эффект; обрати внимание на производительность телефона. Применение: «Туман у портала».
Как проверить
Появятся частицы со скоростью выпуска примерно заданной в Rate.
250Мерцающее облакоДвижение и эффекты / Частицы и визуальные сигналы · Средний
Что делает скрипт
ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте DemoPart. Добавьте ParticleEmitter или разреши скрипту создать его автоматически.
local part = workspace:WaitForChild("DemoPart")
local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")
emitter.Parent = part
emitter.Rate = 12
emitter.Lifetime = NumberRange.new(1, 2)
emitter.Speed = NumberRange.new(1, 3)
Как работает этот код
В примере «Мерцающее облако» используется механизм: ParticleEmitter.Rate задаёт примерное количество частиц в секунду; внешний вид зависит от Texture.
Разбор строк
local part = workspace:WaitForChild("DemoPart")Находим деталь, к которой прикрепляем частицы.local emitter = part:FindFirstChildOfClass("ParticleEmitter") or Instance.new("ParticleEmitter")Пытаемся найти существующий эмиттер, чтобы не размножать его.emitter.Parent = partЧастицы будут испускаться этой деталью.emitter.Rate = 12Определяет среднее число создаваемых частиц в секунду.emitter.Lifetime = NumberRange.new(1, 2)Устанавливает диапазон времени жизни каждой частицы.emitter.Speed = NumberRange.new(1, 3)Устанавливает диапазон начальной скорости частиц.
Уменьши Rate вдвое и сравните количество частиц. Затем поменяй Lifetime и проверьте эффект; обрати внимание на производительность телефона. Применение: «Мерцающее облако».
Как проверить
Появятся частицы со скоростью выпуска примерно заданной в Rate.
251Медленный режимПерсонаж и инструменты / Настройки персонажа · Средний
Что делает скрипт
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и сравните скорость передвижения с обычной.
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character)
local humanoid = character:WaitForChild("Humanoid")
humanoid.WalkSpeed = 9
end)
end)
Как работает этот код
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения. Это настройка скорости при появлении персонажа, а не система выбора режима на экране.
Разбор строк
local Players = game:GetService("Players")Получаем сервис подключённых игроков.Players.PlayerAdded:Connect(function(player)Настраиваем обработку новых подключений.player.CharacterAdded:Connect(function(character)Повторяем настройку при новом появлении персонажа.local humanoid = character:WaitForChild("Humanoid")Находим компонент персонажа, отвечающий за движение.humanoid.WalkSpeed = 9Назначаем скорость ходьбы персонажа, а не глобальное правило для всех игр.
Поменяй скорость персонажа и проверьте заново после смерти и возрождения. Для переключения скорости во время игры потребуется отдельная логика. Применение: «Медленный режим».
Как проверить
После появления персонаж получает заданную скорость ходьбы.
252Обычный бегПерсонаж и инструменты / Настройки персонажа · Средний
Что делает скрипт
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и сравните скорость передвижения с обычной.
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character)
local humanoid = character:WaitForChild("Humanoid")
humanoid.WalkSpeed = 16
end)
end)
Как работает этот код
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения. Это настройка скорости при появлении персонажа, а не система выбора режима на экране.
Разбор строк
local Players = game:GetService("Players")Получаем сервис подключённых игроков.Players.PlayerAdded:Connect(function(player)Настраиваем обработку новых подключений.player.CharacterAdded:Connect(function(character)Повторяем настройку при новом появлении персонажа.local humanoid = character:WaitForChild("Humanoid")Находим компонент персонажа, отвечающий за движение.humanoid.WalkSpeed = 16Назначаем скорость ходьбы персонажа, а не глобальное правило для всех игр.
Поменяй скорость персонажа и проверьте заново после смерти и возрождения. Для переключения скорости во время игры потребуется отдельная логика. Применение: «Обычный бег».
Как проверить
После появления персонаж получает заданную скорость ходьбы.
253Быстрый бегПерсонаж и инструменты / Настройки персонажа · Средний
Что делает скрипт
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и сравните скорость передвижения с обычной.
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character)
local humanoid = character:WaitForChild("Humanoid")
humanoid.WalkSpeed = 24
end)
end)
Как работает этот код
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения. Это настройка скорости при появлении персонажа, а не система выбора режима на экране.
Разбор строк
local Players = game:GetService("Players")Получаем сервис подключённых игроков.Players.PlayerAdded:Connect(function(player)Настраиваем обработку новых подключений.player.CharacterAdded:Connect(function(character)Повторяем настройку при новом появлении персонажа.local humanoid = character:WaitForChild("Humanoid")Находим компонент персонажа, отвечающий за движение.humanoid.WalkSpeed = 24Назначаем скорость ходьбы персонажа, а не глобальное правило для всех игр.
Поменяй скорость персонажа и проверьте заново после смерти и возрождения. Для переключения скорости во время игры потребуется отдельная логика. Применение: «Быстрый бег».
Как проверить
После появления персонаж получает заданную скорость ходьбы.
254Очень быстрый бегПерсонаж и инструменты / Настройки персонажа · Средний
Что делает скрипт
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и сравните скорость передвижения с обычной.
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character)
local humanoid = character:WaitForChild("Humanoid")
humanoid.WalkSpeed = 32
end)
end)
Как работает этот код
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения. Это настройка скорости при появлении персонажа, а не система выбора режима на экране.
Разбор строк
local Players = game:GetService("Players")Получаем сервис подключённых игроков.Players.PlayerAdded:Connect(function(player)Настраиваем обработку новых подключений.player.CharacterAdded:Connect(function(character)Повторяем настройку при новом появлении персонажа.local humanoid = character:WaitForChild("Humanoid")Находим компонент персонажа, отвечающий за движение.humanoid.WalkSpeed = 32Назначаем скорость ходьбы персонажа, а не глобальное правило для всех игр.
Поменяй скорость персонажа и проверьте заново после смерти и возрождения. Для переключения скорости во время игры потребуется отдельная логика. Применение: «Очень быстрый бег».
Как проверить
После появления персонаж получает заданную скорость ходьбы.
255Тренировочный шагПерсонаж и инструменты / Настройки персонажа · Средний
Что делает скрипт
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и сравните скорость передвижения с обычной.
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character)
local humanoid = character:WaitForChild("Humanoid")
humanoid.WalkSpeed = 12
end)
end)
Как работает этот код
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения. Это настройка скорости при появлении персонажа, а не система выбора режима на экране.
Разбор строк
local Players = game:GetService("Players")Получаем сервис подключённых игроков.Players.PlayerAdded:Connect(function(player)Настраиваем обработку новых подключений.player.CharacterAdded:Connect(function(character)Повторяем настройку при новом появлении персонажа.local humanoid = character:WaitForChild("Humanoid")Находим компонент персонажа, отвечающий за движение.humanoid.WalkSpeed = 12Назначаем скорость ходьбы персонажа, а не глобальное правило для всех игр.
Поменяй скорость персонажа и проверьте заново после смерти и возрождения. Для переключения скорости во время игры потребуется отдельная логика. Применение: «Тренировочный шаг».
Как проверить
После появления персонаж получает заданную скорость ходьбы.
256Скорость под водойПерсонаж и инструменты / Настройки персонажа · Средний
Что делает скрипт
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и сравните скорость передвижения с обычной.
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character)
local humanoid = character:WaitForChild("Humanoid")
humanoid.WalkSpeed = 14
end)
end)
Как работает этот код
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения. Это настройка скорости при появлении персонажа, а не система выбора режима на экране.
Разбор строк
local Players = game:GetService("Players")Получаем сервис подключённых игроков.Players.PlayerAdded:Connect(function(player)Настраиваем обработку новых подключений.player.CharacterAdded:Connect(function(character)Повторяем настройку при новом появлении персонажа.local humanoid = character:WaitForChild("Humanoid")Находим компонент персонажа, отвечающий за движение.humanoid.WalkSpeed = 14Назначаем скорость ходьбы персонажа, а не глобальное правило для всех игр.
Поменяй скорость персонажа и проверьте заново после смерти и возрождения. Для переключения скорости во время игры потребуется отдельная логика. Применение: «Скорость под водой».
Как проверить
После появления персонаж получает заданную скорость ходьбы.
257Скорость на льдуПерсонаж и инструменты / Настройки персонажа · Средний
Что делает скрипт
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и сравните скорость передвижения с обычной.
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character)
local humanoid = character:WaitForChild("Humanoid")
humanoid.WalkSpeed = 20
end)
end)
Как работает этот код
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения. Это настройка скорости при появлении персонажа, а не система выбора режима на экране.
Разбор строк
local Players = game:GetService("Players")Получаем сервис подключённых игроков.Players.PlayerAdded:Connect(function(player)Настраиваем обработку новых подключений.player.CharacterAdded:Connect(function(character)Повторяем настройку при новом появлении персонажа.local humanoid = character:WaitForChild("Humanoid")Находим компонент персонажа, отвечающий за движение.humanoid.WalkSpeed = 20Назначаем скорость ходьбы персонажа, а не глобальное правило для всех игр.
Поменяй скорость персонажа и проверьте заново после смерти и возрождения. Для переключения скорости во время игры потребуется отдельная логика. Применение: «Скорость на льду».
Как проверить
После появления персонаж получает заданную скорость ходьбы.
258Скорость в лабиринтеПерсонаж и инструменты / Настройки персонажа · Средний
Что делает скрипт
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и сравните скорость передвижения с обычной.
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character)
local humanoid = character:WaitForChild("Humanoid")
humanoid.WalkSpeed = 11
end)
end)
Как работает этот код
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения. Это настройка скорости при появлении персонажа, а не система выбора режима на экране.
Разбор строк
local Players = game:GetService("Players")Получаем сервис подключённых игроков.Players.PlayerAdded:Connect(function(player)Настраиваем обработку новых подключений.player.CharacterAdded:Connect(function(character)Повторяем настройку при новом появлении персонажа.local humanoid = character:WaitForChild("Humanoid")Находим компонент персонажа, отвечающий за движение.humanoid.WalkSpeed = 11Назначаем скорость ходьбы персонажа, а не глобальное правило для всех игр.
Поменяй скорость персонажа и проверьте заново после смерти и возрождения. Для переключения скорости во время игры потребуется отдельная логика. Применение: «Скорость в лабиринте».
Как проверить
После появления персонаж получает заданную скорость ходьбы.
259Скорость на аренеПерсонаж и инструменты / Настройки персонажа · Средний
Что делает скрипт
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и сравните скорость передвижения с обычной.
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character)
local humanoid = character:WaitForChild("Humanoid")
humanoid.WalkSpeed = 22
end)
end)
Как работает этот код
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения. Это настройка скорости при появлении персонажа, а не система выбора режима на экране.
Разбор строк
local Players = game:GetService("Players")Получаем сервис подключённых игроков.Players.PlayerAdded:Connect(function(player)Настраиваем обработку новых подключений.player.CharacterAdded:Connect(function(character)Повторяем настройку при новом появлении персонажа.local humanoid = character:WaitForChild("Humanoid")Находим компонент персонажа, отвечающий за движение.humanoid.WalkSpeed = 22Назначаем скорость ходьбы персонажа, а не глобальное правило для всех игр.
Поменяй скорость персонажа и проверьте заново после смерти и возрождения. Для переключения скорости во время игры потребуется отдельная логика. Применение: «Скорость на арене».
Как проверить
После появления персонаж получает заданную скорость ходьбы.
260Режим исследованияПерсонаж и инструменты / Настройки персонажа · Средний
Что делает скрипт
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и сравните скорость передвижения с обычной.
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character)
local humanoid = character:WaitForChild("Humanoid")
humanoid.WalkSpeed = 18
end)
end)
Как работает этот код
CharacterAdded вызывается после появления персонажа; WalkSpeed управляет скоростью движения. Это настройка скорости при появлении персонажа, а не система выбора режима на экране.
Разбор строк
local Players = game:GetService("Players")Получаем сервис подключённых игроков.Players.PlayerAdded:Connect(function(player)Настраиваем обработку новых подключений.player.CharacterAdded:Connect(function(character)Повторяем настройку при новом появлении персонажа.local humanoid = character:WaitForChild("Humanoid")Находим компонент персонажа, отвечающий за движение.humanoid.WalkSpeed = 18Назначаем скорость ходьбы персонажа, а не глобальное правило для всех игр.
Поменяй скорость персонажа и проверьте заново после смерти и возрождения. Для переключения скорости во время игры потребуется отдельная логика. Применение: «Режим исследования».
Как проверить
После появления персонаж получает заданную скорость ходьбы.
261Инструмент фонарьПерсонаж и инструменты / Инструменты Tool · Средний
Что делает скрипт
Tool.Activated срабатывает, когда экипированный инструмент активируют.
Куда вставить
Script внутри Tool в StarterPack
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте Tool в StarterPack и Script внутри него. Запустите Play, выберите инструмент и нажми.
local tool = script.Parent
assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")
tool.RequiresHandle = false
tool.Activated:Connect(function()
print("Использован инструмент: Фонарь")
end)
Как работает этот код
Tool.Activated срабатывает, когда экипированный инструмент активируют. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local tool = script.ParentОбращаемся к инструменту, внутри которого установлен Script.assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")Проверяем корректность места размещения.tool.RequiresHandle = falseРазрешаем Tool не иметь детали Handle.tool.Activated:Connect(function()Реагируем на использование экипированного инструмента.print("Использован инструмент: Фонарь")Только выводим сообщение в Output: заявленное действие инструмента ещё надо запрограммировать.
Переименуй Tool и сообщение в Output, экипируй его и активируй. Затем придумай отдельное действие для инструмента: например, включение света. Применение: «Инструмент фонарь».
Как проверить
Output покажет событие использования выбранного инструмента.
262Инструмент ключПерсонаж и инструменты / Инструменты Tool · Средний
Что делает скрипт
Tool.Activated срабатывает, когда экипированный инструмент активируют.
Куда вставить
Script внутри Tool в StarterPack
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте Tool в StarterPack и Script внутри него. Запустите Play, выберите инструмент и нажми.
local tool = script.Parent
assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")
tool.RequiresHandle = false
tool.Activated:Connect(function()
print("Использован инструмент: Ключ")
end)
Как работает этот код
Tool.Activated срабатывает, когда экипированный инструмент активируют. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local tool = script.ParentОбращаемся к инструменту, внутри которого установлен Script.assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")Проверяем корректность места размещения.tool.RequiresHandle = falseРазрешаем Tool не иметь детали Handle.tool.Activated:Connect(function()Реагируем на использование экипированного инструмента.print("Использован инструмент: Ключ")Только выводим сообщение в Output: заявленное действие инструмента ещё надо запрограммировать.
Переименуй Tool и сообщение в Output, экипируй его и активируй. Затем придумай отдельное действие для инструмента: например, включение света. Применение: «Инструмент ключ».
Как проверить
Output покажет событие использования выбранного инструмента.
263Инструмент компасПерсонаж и инструменты / Инструменты Tool · Средний
Что делает скрипт
Tool.Activated срабатывает, когда экипированный инструмент активируют.
Куда вставить
Script внутри Tool в StarterPack
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте Tool в StarterPack и Script внутри него. Запустите Play, выберите инструмент и нажми.
local tool = script.Parent
assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")
tool.RequiresHandle = false
tool.Activated:Connect(function()
print("Использован инструмент: Компас")
end)
Как работает этот код
Tool.Activated срабатывает, когда экипированный инструмент активируют. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local tool = script.ParentОбращаемся к инструменту, внутри которого установлен Script.assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")Проверяем корректность места размещения.tool.RequiresHandle = falseРазрешаем Tool не иметь детали Handle.tool.Activated:Connect(function()Реагируем на использование экипированного инструмента.print("Использован инструмент: Компас")Только выводим сообщение в Output: заявленное действие инструмента ещё надо запрограммировать.
Переименуй Tool и сообщение в Output, экипируй его и активируй. Затем придумай отдельное действие для инструмента: например, включение света. Применение: «Инструмент компас».
Как проверить
Output покажет событие использования выбранного инструмента.
264Инструмент картаПерсонаж и инструменты / Инструменты Tool · Средний
Что делает скрипт
Tool.Activated срабатывает, когда экипированный инструмент активируют.
Куда вставить
Script внутри Tool в StarterPack
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте Tool в StarterPack и Script внутри него. Запустите Play, выберите инструмент и нажми.
local tool = script.Parent
assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")
tool.RequiresHandle = false
tool.Activated:Connect(function()
print("Использован инструмент: Карта")
end)
Как работает этот код
Tool.Activated срабатывает, когда экипированный инструмент активируют. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local tool = script.ParentОбращаемся к инструменту, внутри которого установлен Script.assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")Проверяем корректность места размещения.tool.RequiresHandle = falseРазрешаем Tool не иметь детали Handle.tool.Activated:Connect(function()Реагируем на использование экипированного инструмента.print("Использован инструмент: Карта")Только выводим сообщение в Output: заявленное действие инструмента ещё надо запрограммировать.
Переименуй Tool и сообщение в Output, экипируй его и активируй. Затем придумай отдельное действие для инструмента: например, включение света. Применение: «Инструмент карта».
Как проверить
Output покажет событие использования выбранного инструмента.
265Инструмент молотокПерсонаж и инструменты / Инструменты Tool · Средний
Что делает скрипт
Tool.Activated срабатывает, когда экипированный инструмент активируют.
Куда вставить
Script внутри Tool в StarterPack
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте Tool в StarterPack и Script внутри него. Запустите Play, выберите инструмент и нажми.
local tool = script.Parent
assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")
tool.RequiresHandle = false
tool.Activated:Connect(function()
print("Использован инструмент: Молоток")
end)
Как работает этот код
Tool.Activated срабатывает, когда экипированный инструмент активируют. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local tool = script.ParentОбращаемся к инструменту, внутри которого установлен Script.assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")Проверяем корректность места размещения.tool.RequiresHandle = falseРазрешаем Tool не иметь детали Handle.tool.Activated:Connect(function()Реагируем на использование экипированного инструмента.print("Использован инструмент: Молоток")Только выводим сообщение в Output: заявленное действие инструмента ещё надо запрограммировать.
Переименуй Tool и сообщение в Output, экипируй его и активируй. Затем придумай отдельное действие для инструмента: например, включение света. Применение: «Инструмент молоток».
Как проверить
Output покажет событие использования выбранного инструмента.
266Инструмент кистьПерсонаж и инструменты / Инструменты Tool · Средний
Что делает скрипт
Tool.Activated срабатывает, когда экипированный инструмент активируют.
Куда вставить
Script внутри Tool в StarterPack
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте Tool в StarterPack и Script внутри него. Запустите Play, выберите инструмент и нажми.
local tool = script.Parent
assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")
tool.RequiresHandle = false
tool.Activated:Connect(function()
print("Использован инструмент: Кисть")
end)
Как работает этот код
Tool.Activated срабатывает, когда экипированный инструмент активируют. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local tool = script.ParentОбращаемся к инструменту, внутри которого установлен Script.assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")Проверяем корректность места размещения.tool.RequiresHandle = falseРазрешаем Tool не иметь детали Handle.tool.Activated:Connect(function()Реагируем на использование экипированного инструмента.print("Использован инструмент: Кисть")Только выводим сообщение в Output: заявленное действие инструмента ещё надо запрограммировать.
Переименуй Tool и сообщение в Output, экипируй его и активируй. Затем придумай отдельное действие для инструмента: например, включение света. Применение: «Инструмент кисть».
Как проверить
Output покажет событие использования выбранного инструмента.
267Инструмент лупаПерсонаж и инструменты / Инструменты Tool · Средний
Что делает скрипт
Tool.Activated срабатывает, когда экипированный инструмент активируют.
Куда вставить
Script внутри Tool в StarterPack
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте Tool в StarterPack и Script внутри него. Запустите Play, выберите инструмент и нажми.
local tool = script.Parent
assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")
tool.RequiresHandle = false
tool.Activated:Connect(function()
print("Использован инструмент: Лупа")
end)
Как работает этот код
Tool.Activated срабатывает, когда экипированный инструмент активируют. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local tool = script.ParentОбращаемся к инструменту, внутри которого установлен Script.assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")Проверяем корректность места размещения.tool.RequiresHandle = falseРазрешаем Tool не иметь детали Handle.tool.Activated:Connect(function()Реагируем на использование экипированного инструмента.print("Использован инструмент: Лупа")Только выводим сообщение в Output: заявленное действие инструмента ещё надо запрограммировать.
Переименуй Tool и сообщение в Output, экипируй его и активируй. Затем придумай отдельное действие для инструмента: например, включение света. Применение: «Инструмент лупа».
Как проверить
Output покажет событие использования выбранного инструмента.
268Инструмент киркаПерсонаж и инструменты / Инструменты Tool · Средний
Что делает скрипт
Tool.Activated срабатывает, когда экипированный инструмент активируют.
Куда вставить
Script внутри Tool в StarterPack
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте Tool в StarterPack и Script внутри него. Запустите Play, выберите инструмент и нажми.
local tool = script.Parent
assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")
tool.RequiresHandle = false
tool.Activated:Connect(function()
print("Использован инструмент: Кирка")
end)
Как работает этот код
Tool.Activated срабатывает, когда экипированный инструмент активируют. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local tool = script.ParentОбращаемся к инструменту, внутри которого установлен Script.assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")Проверяем корректность места размещения.tool.RequiresHandle = falseРазрешаем Tool не иметь детали Handle.tool.Activated:Connect(function()Реагируем на использование экипированного инструмента.print("Использован инструмент: Кирка")Только выводим сообщение в Output: заявленное действие инструмента ещё надо запрограммировать.
Переименуй Tool и сообщение в Output, экипируй его и активируй. Затем придумай отдельное действие для инструмента: например, включение света. Применение: «Инструмент кирка».
Как проверить
Output покажет событие использования выбранного инструмента.
269Инструмент книгаПерсонаж и инструменты / Инструменты Tool · Средний
Что делает скрипт
Tool.Activated срабатывает, когда экипированный инструмент активируют.
Куда вставить
Script внутри Tool в StarterPack
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте Tool в StarterPack и Script внутри него. Запустите Play, выберите инструмент и нажми.
local tool = script.Parent
assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")
tool.RequiresHandle = false
tool.Activated:Connect(function()
print("Использован инструмент: Книга")
end)
Как работает этот код
Tool.Activated срабатывает, когда экипированный инструмент активируют. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local tool = script.ParentОбращаемся к инструменту, внутри которого установлен Script.assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")Проверяем корректность места размещения.tool.RequiresHandle = falseРазрешаем Tool не иметь детали Handle.tool.Activated:Connect(function()Реагируем на использование экипированного инструмента.print("Использован инструмент: Книга")Только выводим сообщение в Output: заявленное действие инструмента ещё надо запрограммировать.
Переименуй Tool и сообщение в Output, экипируй его и активируй. Затем придумай отдельное действие для инструмента: например, включение света. Применение: «Инструмент книга».
Как проверить
Output покажет событие использования выбранного инструмента.
270Инструмент флагПерсонаж и инструменты / Инструменты Tool · Средний
Что делает скрипт
Tool.Activated срабатывает, когда экипированный инструмент активируют.
Куда вставить
Script внутри Tool в StarterPack
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Добавьте Tool в StarterPack и Script внутри него. Запустите Play, выберите инструмент и нажми.
local tool = script.Parent
assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")
tool.RequiresHandle = false
tool.Activated:Connect(function()
print("Использован инструмент: Флаг")
end)
Как работает этот код
Tool.Activated срабатывает, когда экипированный инструмент активируют. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local tool = script.ParentОбращаемся к инструменту, внутри которого установлен Script.assert(tool:IsA("Tool"), "Script должен находиться внутри Tool")Проверяем корректность места размещения.tool.RequiresHandle = falseРазрешаем Tool не иметь детали Handle.tool.Activated:Connect(function()Реагируем на использование экипированного инструмента.print("Использован инструмент: Флаг")Только выводим сообщение в Output: заявленное действие инструмента ещё надо запрограммировать.
Переименуй Tool и сообщение в Output, экипируй его и активируй. Затем придумай отдельное действие для инструмента: например, включение света. Применение: «Инструмент флаг».
Как проверить
Output покажет событие использования выбранного инструмента.
271Отсчёт на пять секундИгровые системы / Общий отсчёт времени · Средний
Что делает скрипт
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Нажмите Play и следи за атрибутом RoundSeconds у Workspace.
local seconds = 5
for remaining = seconds, 0, -1 do
workspace:SetAttribute("RoundSeconds", remaining)
task.wait(1)
end
print("Время вышло")
Как работает этот код
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле. Обратный отсчёт один раз меняет общий атрибут Workspace и не управляет полноценным раундом.
Разбор строк
local seconds = 5Храним продолжительность обратного отсчёта в секундах.for remaining = seconds, 0, -1 doЦикл уменьшает значение до нуля с шагом −1.workspace:SetAttribute("RoundSeconds", remaining)Публикуем текущую цифру в атрибуте Workspace.task.wait(1)Делаем примерно секундную паузу; это простой учебный таймер без точной синхронизации.print("Время вышло")Сообщаем о завершении в Output.
Измените длительность таймера, а затем создайте TextLabel, который отдельно читает атрибут RoundSeconds. Для точного соревновательного таймера используй время сервера. Применение: «Отсчёт на пять секунд».
Как проверить
Общий отсчёт уменьшается до нуля.
272Отсчёт на десять секундИгровые системы / Общий отсчёт времени · Средний
Что делает скрипт
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Нажмите Play и следи за атрибутом RoundSeconds у Workspace.
local seconds = 10
for remaining = seconds, 0, -1 do
workspace:SetAttribute("RoundSeconds", remaining)
task.wait(1)
end
print("Время вышло")
Как работает этот код
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле. Обратный отсчёт один раз меняет общий атрибут Workspace и не управляет полноценным раундом.
Разбор строк
local seconds = 10Храним продолжительность обратного отсчёта в секундах.for remaining = seconds, 0, -1 doЦикл уменьшает значение до нуля с шагом −1.workspace:SetAttribute("RoundSeconds", remaining)Публикуем текущую цифру в атрибуте Workspace.task.wait(1)Делаем примерно секундную паузу; это простой учебный таймер без точной синхронизации.print("Время вышло")Сообщаем о завершении в Output.
Измените длительность таймера, а затем создайте TextLabel, который отдельно читает атрибут RoundSeconds. Для точного соревновательного таймера используй время сервера. Применение: «Отсчёт на десять секунд».
Как проверить
Общий отсчёт уменьшается до нуля.
273Отсчёт на пятнадцать секундИгровые системы / Общий отсчёт времени · Средний
Что делает скрипт
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Нажмите Play и следи за атрибутом RoundSeconds у Workspace.
local seconds = 15
for remaining = seconds, 0, -1 do
workspace:SetAttribute("RoundSeconds", remaining)
task.wait(1)
end
print("Время вышло")
Как работает этот код
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле. Обратный отсчёт один раз меняет общий атрибут Workspace и не управляет полноценным раундом.
Разбор строк
local seconds = 15Храним продолжительность обратного отсчёта в секундах.for remaining = seconds, 0, -1 doЦикл уменьшает значение до нуля с шагом −1.workspace:SetAttribute("RoundSeconds", remaining)Публикуем текущую цифру в атрибуте Workspace.task.wait(1)Делаем примерно секундную паузу; это простой учебный таймер без точной синхронизации.print("Время вышло")Сообщаем о завершении в Output.
Измените длительность таймера, а затем создайте TextLabel, который отдельно читает атрибут RoundSeconds. Для точного соревновательного таймера используй время сервера. Применение: «Отсчёт на пятнадцать секунд».
Как проверить
Общий отсчёт уменьшается до нуля.
274Отсчёт на двадцать секундИгровые системы / Общий отсчёт времени · Средний
Что делает скрипт
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Нажмите Play и следи за атрибутом RoundSeconds у Workspace.
local seconds = 20
for remaining = seconds, 0, -1 do
workspace:SetAttribute("RoundSeconds", remaining)
task.wait(1)
end
print("Время вышло")
Как работает этот код
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле. Обратный отсчёт один раз меняет общий атрибут Workspace и не управляет полноценным раундом.
Разбор строк
local seconds = 20Храним продолжительность обратного отсчёта в секундах.for remaining = seconds, 0, -1 doЦикл уменьшает значение до нуля с шагом −1.workspace:SetAttribute("RoundSeconds", remaining)Публикуем текущую цифру в атрибуте Workspace.task.wait(1)Делаем примерно секундную паузу; это простой учебный таймер без точной синхронизации.print("Время вышло")Сообщаем о завершении в Output.
Измените длительность таймера, а затем создайте TextLabel, который отдельно читает атрибут RoundSeconds. Для точного соревновательного таймера используй время сервера. Применение: «Отсчёт на двадцать секунд».
Как проверить
Общий отсчёт уменьшается до нуля.
275Отсчёт на тридцать секундИгровые системы / Общий отсчёт времени · Средний
Что делает скрипт
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Нажмите Play и следи за атрибутом RoundSeconds у Workspace.
local seconds = 30
for remaining = seconds, 0, -1 do
workspace:SetAttribute("RoundSeconds", remaining)
task.wait(1)
end
print("Время вышло")
Как работает этот код
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле. Обратный отсчёт один раз меняет общий атрибут Workspace и не управляет полноценным раундом.
Разбор строк
local seconds = 30Храним продолжительность обратного отсчёта в секундах.for remaining = seconds, 0, -1 doЦикл уменьшает значение до нуля с шагом −1.workspace:SetAttribute("RoundSeconds", remaining)Публикуем текущую цифру в атрибуте Workspace.task.wait(1)Делаем примерно секундную паузу; это простой учебный таймер без точной синхронизации.print("Время вышло")Сообщаем о завершении в Output.
Измените длительность таймера, а затем создайте TextLabel, который отдельно читает атрибут RoundSeconds. Для точного соревновательного таймера используй время сервера. Применение: «Отсчёт на тридцать секунд».
Как проверить
Общий отсчёт уменьшается до нуля.
276Отсчёт на сорок секундИгровые системы / Общий отсчёт времени · Средний
Что делает скрипт
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Нажмите Play и следи за атрибутом RoundSeconds у Workspace.
local seconds = 40
for remaining = seconds, 0, -1 do
workspace:SetAttribute("RoundSeconds", remaining)
task.wait(1)
end
print("Время вышло")
Как работает этот код
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле. Обратный отсчёт один раз меняет общий атрибут Workspace и не управляет полноценным раундом.
Разбор строк
local seconds = 40Храним продолжительность обратного отсчёта в секундах.for remaining = seconds, 0, -1 doЦикл уменьшает значение до нуля с шагом −1.workspace:SetAttribute("RoundSeconds", remaining)Публикуем текущую цифру в атрибуте Workspace.task.wait(1)Делаем примерно секундную паузу; это простой учебный таймер без точной синхронизации.print("Время вышло")Сообщаем о завершении в Output.
Измените длительность таймера, а затем создайте TextLabel, который отдельно читает атрибут RoundSeconds. Для точного соревновательного таймера используй время сервера. Применение: «Отсчёт на сорок секунд».
Как проверить
Общий отсчёт уменьшается до нуля.
277Отсчёт на пятьдесят секундИгровые системы / Общий отсчёт времени · Средний
Что делает скрипт
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Нажмите Play и следи за атрибутом RoundSeconds у Workspace.
local seconds = 50
for remaining = seconds, 0, -1 do
workspace:SetAttribute("RoundSeconds", remaining)
task.wait(1)
end
print("Время вышло")
Как работает этот код
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле. Обратный отсчёт один раз меняет общий атрибут Workspace и не управляет полноценным раундом.
Разбор строк
local seconds = 50Храним продолжительность обратного отсчёта в секундах.for remaining = seconds, 0, -1 doЦикл уменьшает значение до нуля с шагом −1.workspace:SetAttribute("RoundSeconds", remaining)Публикуем текущую цифру в атрибуте Workspace.task.wait(1)Делаем примерно секундную паузу; это простой учебный таймер без точной синхронизации.print("Время вышло")Сообщаем о завершении в Output.
Измените длительность таймера, а затем создайте TextLabel, который отдельно читает атрибут RoundSeconds. Для точного соревновательного таймера используй время сервера. Применение: «Отсчёт на пятьдесят секунд».
Как проверить
Общий отсчёт уменьшается до нуля.
278Отсчёт на минутуИгровые системы / Общий отсчёт времени · Средний
Что делает скрипт
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Нажмите Play и следи за атрибутом RoundSeconds у Workspace.
local seconds = 60
for remaining = seconds, 0, -1 do
workspace:SetAttribute("RoundSeconds", remaining)
task.wait(1)
end
print("Время вышло")
Как работает этот код
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле. Обратный отсчёт один раз меняет общий атрибут Workspace и не управляет полноценным раундом.
Разбор строк
local seconds = 60Храним продолжительность обратного отсчёта в секундах.for remaining = seconds, 0, -1 doЦикл уменьшает значение до нуля с шагом −1.workspace:SetAttribute("RoundSeconds", remaining)Публикуем текущую цифру в атрибуте Workspace.task.wait(1)Делаем примерно секундную паузу; это простой учебный таймер без точной синхронизации.print("Время вышло")Сообщаем о завершении в Output.
Измените длительность таймера, а затем создайте TextLabel, который отдельно читает атрибут RoundSeconds. Для точного соревновательного таймера используй время сервера. Применение: «Отсчёт на минуту».
Как проверить
Общий отсчёт уменьшается до нуля.
279Отсчёт на полторы минутыИгровые системы / Общий отсчёт времени · Средний
Что делает скрипт
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Нажмите Play и следи за атрибутом RoundSeconds у Workspace.
local seconds = 90
for remaining = seconds, 0, -1 do
workspace:SetAttribute("RoundSeconds", remaining)
task.wait(1)
end
print("Время вышло")
Как работает этот код
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле. Обратный отсчёт один раз меняет общий атрибут Workspace и не управляет полноценным раундом.
Разбор строк
local seconds = 90Храним продолжительность обратного отсчёта в секундах.for remaining = seconds, 0, -1 doЦикл уменьшает значение до нуля с шагом −1.workspace:SetAttribute("RoundSeconds", remaining)Публикуем текущую цифру в атрибуте Workspace.task.wait(1)Делаем примерно секундную паузу; это простой учебный таймер без точной синхронизации.print("Время вышло")Сообщаем о завершении в Output.
Измените длительность таймера, а затем создайте TextLabel, который отдельно читает атрибут RoundSeconds. Для точного соревновательного таймера используй время сервера. Применение: «Отсчёт на полторы минуты».
Как проверить
Общий отсчёт уменьшается до нуля.
280Отсчёт на две минутыИгровые системы / Общий отсчёт времени · Средний
Что делает скрипт
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Нажмите Play и следи за атрибутом RoundSeconds у Workspace.
local seconds = 120
for remaining = seconds, 0, -1 do
workspace:SetAttribute("RoundSeconds", remaining)
task.wait(1)
end
print("Время вышло")
Как работает этот код
Сервер обновляет атрибут раз в секунду; цикл завершается при нуле. Обратный отсчёт один раз меняет общий атрибут Workspace и не управляет полноценным раундом.
Разбор строк
local seconds = 120Храним продолжительность обратного отсчёта в секундах.for remaining = seconds, 0, -1 doЦикл уменьшает значение до нуля с шагом −1.workspace:SetAttribute("RoundSeconds", remaining)Публикуем текущую цифру в атрибуте Workspace.task.wait(1)Делаем примерно секундную паузу; это простой учебный таймер без точной синхронизации.print("Время вышло")Сообщаем о завершении в Output.
Измените длительность таймера, а затем создайте TextLabel, который отдельно читает атрибут RoundSeconds. Для точного соревновательного таймера используй время сервера. Применение: «Отсчёт на две минуты».
Как проверить
Общий отсчёт уменьшается до нуля.
281Запрос включить светСерверная практика / Проверки серверных запросов · Средний
Что делает скрипт
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки.
Куда вставить
Script в ServerScriptService; RemoteEvent с указанным именем в ReplicatedStorage
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте RemoteEvent с названием из кода. Для испытания добавьте LocalScript, вызывающий событие через FireServer().
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local event = ReplicatedStorage:WaitForChild("ToggleLight")
local last = {}
event.OnServerEvent:Connect(function(player)
local now = os.clock()
if now - (last[player] or -100) < 1 then return end
last[player] = now
print("Проверен запрос: ToggleLight", player.Name)
end)
game:GetService("Players").PlayerRemoving:Connect(function(player)
last[player] = nil
end)
Как работает этот код
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local event = ReplicatedStorage:WaitForChild("ToggleLight")Ожидаем существующий RemoteEvent с указанным именем в ReplicatedStorage.local last = {}Храним время последнего принятого запроса каждого игрока.event.OnServerEvent:Connect(function(player)Обрабатываем запрос на сервере, а не доверяем клиентской логике.local now = os.clock()Получаем время для ограничения частоВы обращений.if now - (last[player] or -100) < 1 then return endНе позволяем отправлять запросы чаще заданного интервала.print("Проверен запрос: ToggleLight", player.Name)Только регистрируем допустимый запрос; реальное действие пока не выполнено.game:GetService("Players").PlayerRemoving:Connect(function(player)Очищаем временные данные вышедшего игрока.
Попробуйте два быстрых запроса подряд и проверьте Output. Затем добавьте настоящую проверку права игрока на действие: одного ограничения частоВы недостаточно. Применение: «Запрос включить свет».
Как проверить
Сервер получает запрос не чаще одного раза в секунду на игрока.
282Запрос открыть дверьСерверная практика / Проверки серверных запросов · Средний
Что делает скрипт
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки.
Куда вставить
Script в ServerScriptService; RemoteEvent с указанным именем в ReplicatedStorage
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте RemoteEvent с названием из кода. Для испытания добавьте LocalScript, вызывающий событие через FireServer().
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local event = ReplicatedStorage:WaitForChild("OpenDoor")
local last = {}
event.OnServerEvent:Connect(function(player)
local now = os.clock()
if now - (last[player] or -100) < 1 then return end
last[player] = now
print("Проверен запрос: OpenDoor", player.Name)
end)
game:GetService("Players").PlayerRemoving:Connect(function(player)
last[player] = nil
end)
Как работает этот код
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local event = ReplicatedStorage:WaitForChild("OpenDoor")Ожидаем существующий RemoteEvent с указанным именем в ReplicatedStorage.local last = {}Храним время последнего принятого запроса каждого игрока.event.OnServerEvent:Connect(function(player)Обрабатываем запрос на сервере, а не доверяем клиентской логике.local now = os.clock()Получаем время для ограничения частоВы обращений.if now - (last[player] or -100) < 1 then return endНе позволяем отправлять запросы чаще заданного интервала.print("Проверен запрос: OpenDoor", player.Name)Только регистрируем допустимый запрос; реальное действие пока не выполнено.game:GetService("Players").PlayerRemoving:Connect(function(player)Очищаем временные данные вышедшего игрока.
Попробуйте два быстрых запроса подряд и проверьте Output. Затем добавьте настоящую проверку права игрока на действие: одного ограничения частоВы недостаточно. Применение: «Запрос открыть дверь».
Как проверить
Сервер получает запрос не чаще одного раза в секунду на игрока.
283Запрос взять призСерверная практика / Проверки серверных запросов · Средний
Что делает скрипт
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки.
Куда вставить
Script в ServerScriptService; RemoteEvent с указанным именем в ReplicatedStorage
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте RemoteEvent с названием из кода. Для испытания добавьте LocalScript, вызывающий событие через FireServer().
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local event = ReplicatedStorage:WaitForChild("ClaimPrize")
local last = {}
event.OnServerEvent:Connect(function(player)
local now = os.clock()
if now - (last[player] or -100) < 1 then return end
last[player] = now
print("Проверен запрос: ClaimPrize", player.Name)
end)
game:GetService("Players").PlayerRemoving:Connect(function(player)
last[player] = nil
end)
Как работает этот код
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local event = ReplicatedStorage:WaitForChild("ClaimPrize")Ожидаем существующий RemoteEvent с указанным именем в ReplicatedStorage.local last = {}Храним время последнего принятого запроса каждого игрока.event.OnServerEvent:Connect(function(player)Обрабатываем запрос на сервере, а не доверяем клиентской логике.local now = os.clock()Получаем время для ограничения частоВы обращений.if now - (last[player] or -100) < 1 then return endНе позволяем отправлять запросы чаще заданного интервала.print("Проверен запрос: ClaimPrize", player.Name)Только регистрируем допустимый запрос; реальное действие пока не выполнено.game:GetService("Players").PlayerRemoving:Connect(function(player)Очищаем временные данные вышедшего игрока.
Попробуйте два быстрых запроса подряд и проверьте Output. Затем добавьте настоящую проверку права игрока на действие: одного ограничения частоВы недостаточно. Применение: «Запрос взять приз».
Как проверить
Сервер получает запрос не чаще одного раза в секунду на игрока.
284Запрос включить мостСерверная практика / Проверки серверных запросов · Средний
Что делает скрипт
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки.
Куда вставить
Script в ServerScriptService; RemoteEvent с указанным именем в ReplicatedStorage
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте RemoteEvent с названием из кода. Для испытания добавьте LocalScript, вызывающий событие через FireServer().
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local event = ReplicatedStorage:WaitForChild("EnableBridge")
local last = {}
event.OnServerEvent:Connect(function(player)
local now = os.clock()
if now - (last[player] or -100) < 1 then return end
last[player] = now
print("Проверен запрос: EnableBridge", player.Name)
end)
game:GetService("Players").PlayerRemoving:Connect(function(player)
last[player] = nil
end)
Как работает этот код
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local event = ReplicatedStorage:WaitForChild("EnableBridge")Ожидаем существующий RemoteEvent с указанным именем в ReplicatedStorage.local last = {}Храним время последнего принятого запроса каждого игрока.event.OnServerEvent:Connect(function(player)Обрабатываем запрос на сервере, а не доверяем клиентской логике.local now = os.clock()Получаем время для ограничения частоВы обращений.if now - (last[player] or -100) < 1 then return endНе позволяем отправлять запросы чаще заданного интервала.print("Проверен запрос: EnableBridge", player.Name)Только регистрируем допустимый запрос; реальное действие пока не выполнено.game:GetService("Players").PlayerRemoving:Connect(function(player)Очищаем временные данные вышедшего игрока.
Попробуйте два быстрых запроса подряд и проверьте Output. Затем добавьте настоящую проверку права игрока на действие: одного ограничения частоВы недостаточно. Применение: «Запрос включить мост».
Как проверить
Сервер получает запрос не чаще одного раза в секунду на игрока.
285Запрос выбрать режимСерверная практика / Проверки серверных запросов · Средний
Что делает скрипт
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки.
Куда вставить
Script в ServerScriptService; RemoteEvent с указанным именем в ReplicatedStorage
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте RemoteEvent с названием из кода. Для испытания добавьте LocalScript, вызывающий событие через FireServer().
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local event = ReplicatedStorage:WaitForChild("ChooseMode")
local last = {}
event.OnServerEvent:Connect(function(player)
local now = os.clock()
if now - (last[player] or -100) < 1 then return end
last[player] = now
print("Проверен запрос: ChooseMode", player.Name)
end)
game:GetService("Players").PlayerRemoving:Connect(function(player)
last[player] = nil
end)
Как работает этот код
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local event = ReplicatedStorage:WaitForChild("ChooseMode")Ожидаем существующий RemoteEvent с указанным именем в ReplicatedStorage.local last = {}Храним время последнего принятого запроса каждого игрока.event.OnServerEvent:Connect(function(player)Обрабатываем запрос на сервере, а не доверяем клиентской логике.local now = os.clock()Получаем время для ограничения частоВы обращений.if now - (last[player] or -100) < 1 then return endНе позволяем отправлять запросы чаще заданного интервала.print("Проверен запрос: ChooseMode", player.Name)Только регистрируем допустимый запрос; реальное действие пока не выполнено.game:GetService("Players").PlayerRemoving:Connect(function(player)Очищаем временные данные вышедшего игрока.
Попробуйте два быстрых запроса подряд и проверьте Output. Затем добавьте настоящую проверку права игрока на действие: одного ограничения частоВы недостаточно. Применение: «Запрос выбрать режим».
Как проверить
Сервер получает запрос не чаще одного раза в секунду на игрока.
286Запрос начать гонкуСерверная практика / Проверки серверных запросов · Средний
Что делает скрипт
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки.
Куда вставить
Script в ServerScriptService; RemoteEvent с указанным именем в ReplicatedStorage
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте RemoteEvent с названием из кода. Для испытания добавьте LocalScript, вызывающий событие через FireServer().
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local event = ReplicatedStorage:WaitForChild("StartRace")
local last = {}
event.OnServerEvent:Connect(function(player)
local now = os.clock()
if now - (last[player] or -100) < 1 then return end
last[player] = now
print("Проверен запрос: StartRace", player.Name)
end)
game:GetService("Players").PlayerRemoving:Connect(function(player)
last[player] = nil
end)
Как работает этот код
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local event = ReplicatedStorage:WaitForChild("StartRace")Ожидаем существующий RemoteEvent с указанным именем в ReplicatedStorage.local last = {}Храним время последнего принятого запроса каждого игрока.event.OnServerEvent:Connect(function(player)Обрабатываем запрос на сервере, а не доверяем клиентской логике.local now = os.clock()Получаем время для ограничения частоВы обращений.if now - (last[player] or -100) < 1 then return endНе позволяем отправлять запросы чаще заданного интервала.print("Проверен запрос: StartRace", player.Name)Только регистрируем допустимый запрос; реальное действие пока не выполнено.game:GetService("Players").PlayerRemoving:Connect(function(player)Очищаем временные данные вышедшего игрока.
Попробуйте два быстрых запроса подряд и проверьте Output. Затем добавьте настоящую проверку права игрока на действие: одного ограничения частоВы недостаточно. Применение: «Запрос начать гонку».
Как проверить
Сервер получает запрос не чаще одного раза в секунду на игрока.
287Запрос применить усилениеСерверная практика / Проверки серверных запросов · Средний
Что делает скрипт
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки.
Куда вставить
Script в ServerScriptService; RemoteEvent с указанным именем в ReplicatedStorage
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте RemoteEvent с названием из кода. Для испытания добавьте LocalScript, вызывающий событие через FireServer().
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local event = ReplicatedStorage:WaitForChild("UseBoost")
local last = {}
event.OnServerEvent:Connect(function(player)
local now = os.clock()
if now - (last[player] or -100) < 1 then return end
last[player] = now
print("Проверен запрос: UseBoost", player.Name)
end)
game:GetService("Players").PlayerRemoving:Connect(function(player)
last[player] = nil
end)
Как работает этот код
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local event = ReplicatedStorage:WaitForChild("UseBoost")Ожидаем существующий RemoteEvent с указанным именем в ReplicatedStorage.local last = {}Храним время последнего принятого запроса каждого игрока.event.OnServerEvent:Connect(function(player)Обрабатываем запрос на сервере, а не доверяем клиентской логике.local now = os.clock()Получаем время для ограничения частоВы обращений.if now - (last[player] or -100) < 1 then return endНе позволяем отправлять запросы чаще заданного интервала.print("Проверен запрос: UseBoost", player.Name)Только регистрируем допустимый запрос; реальное действие пока не выполнено.game:GetService("Players").PlayerRemoving:Connect(function(player)Очищаем временные данные вышедшего игрока.
Попробуйте два быстрых запроса подряд и проверьте Output. Затем добавьте настоящую проверку права игрока на действие: одного ограничения частоВы недостаточно. Применение: «Запрос применить усиление».
Как проверить
Сервер получает запрос не чаще одного раза в секунду на игрока.
288Запрос активировать порталСерверная практика / Проверки серверных запросов · Средний
Что делает скрипт
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки.
Куда вставить
Script в ServerScriptService; RemoteEvent с указанным именем в ReplicatedStorage
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте RemoteEvent с названием из кода. Для испытания добавьте LocalScript, вызывающий событие через FireServer().
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local event = ReplicatedStorage:WaitForChild("UsePortal")
local last = {}
event.OnServerEvent:Connect(function(player)
local now = os.clock()
if now - (last[player] or -100) < 1 then return end
last[player] = now
print("Проверен запрос: UsePortal", player.Name)
end)
game:GetService("Players").PlayerRemoving:Connect(function(player)
last[player] = nil
end)
Как работает этот код
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local event = ReplicatedStorage:WaitForChild("UsePortal")Ожидаем существующий RemoteEvent с указанным именем в ReplicatedStorage.local last = {}Храним время последнего принятого запроса каждого игрока.event.OnServerEvent:Connect(function(player)Обрабатываем запрос на сервере, а не доверяем клиентской логике.local now = os.clock()Получаем время для ограничения частоВы обращений.if now - (last[player] or -100) < 1 then return endНе позволяем отправлять запросы чаще заданного интервала.print("Проверен запрос: UsePortal", player.Name)Только регистрируем допустимый запрос; реальное действие пока не выполнено.game:GetService("Players").PlayerRemoving:Connect(function(player)Очищаем временные данные вышедшего игрока.
Попробуйте два быстрых запроса подряд и проверьте Output. Затем добавьте настоящую проверку права игрока на действие: одного ограничения частоВы недостаточно. Применение: «Запрос активировать портал».
Как проверить
Сервер получает запрос не чаще одного раза в секунду на игрока.
289Запрос взять ключСерверная практика / Проверки серверных запросов · Средний
Что делает скрипт
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки.
Куда вставить
Script в ServerScriptService; RemoteEvent с указанным именем в ReplicatedStorage
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте RemoteEvent с названием из кода. Для испытания добавьте LocalScript, вызывающий событие через FireServer().
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local event = ReplicatedStorage:WaitForChild("TakeKey")
local last = {}
event.OnServerEvent:Connect(function(player)
local now = os.clock()
if now - (last[player] or -100) < 1 then return end
last[player] = now
print("Проверен запрос: TakeKey", player.Name)
end)
game:GetService("Players").PlayerRemoving:Connect(function(player)
last[player] = nil
end)
Как работает этот код
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local event = ReplicatedStorage:WaitForChild("TakeKey")Ожидаем существующий RemoteEvent с указанным именем в ReplicatedStorage.local last = {}Храним время последнего принятого запроса каждого игрока.event.OnServerEvent:Connect(function(player)Обрабатываем запрос на сервере, а не доверяем клиентской логике.local now = os.clock()Получаем время для ограничения частоВы обращений.if now - (last[player] or -100) < 1 then return endНе позволяем отправлять запросы чаще заданного интервала.print("Проверен запрос: TakeKey", player.Name)Только регистрируем допустимый запрос; реальное действие пока не выполнено.game:GetService("Players").PlayerRemoving:Connect(function(player)Очищаем временные данные вышедшего игрока.
Попробуйте два быстрых запроса подряд и проверьте Output. Затем добавьте настоящую проверку права игрока на действие: одного ограничения частоВы недостаточно. Применение: «Запрос взять ключ».
Как проверить
Сервер получает запрос не чаще одного раза в секунду на игрока.
290Запрос открыть сундукСерверная практика / Проверки серверных запросов · Средний
Что делает скрипт
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки.
Куда вставить
Script в ServerScriptService; RemoteEvent с указанным именем в ReplicatedStorage
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Создайте RemoteEvent с названием из кода. Для испытания добавьте LocalScript, вызывающий событие через FireServer().
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local event = ReplicatedStorage:WaitForChild("OpenChest")
local last = {}
event.OnServerEvent:Connect(function(player)
local now = os.clock()
if now - (last[player] or -100) < 1 then return end
last[player] = now
print("Проверен запрос: OpenChest", player.Name)
end)
game:GetService("Players").PlayerRemoving:Connect(function(player)
last[player] = nil
end)
Как работает этот код
OnServerEvent первым параметром получает настоящего игрока; сервер сам ограничивает частоту. Это лишь заготовка: перед выдачей награды нужны дополнительные проверки. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local event = ReplicatedStorage:WaitForChild("OpenChest")Ожидаем существующий RemoteEvent с указанным именем в ReplicatedStorage.local last = {}Храним время последнего принятого запроса каждого игрока.event.OnServerEvent:Connect(function(player)Обрабатываем запрос на сервере, а не доверяем клиентской логике.local now = os.clock()Получаем время для ограничения частоВы обращений.if now - (last[player] or -100) < 1 then return endНе позволяем отправлять запросы чаще заданного интервала.print("Проверен запрос: OpenChest", player.Name)Только регистрируем допустимый запрос; реальное действие пока не выполнено.game:GetService("Players").PlayerRemoving:Connect(function(player)Очищаем временные данные вышедшего игрока.
Попробуйте два быстрых запроса подряд и проверьте Output. Затем добавьте настоящую проверку права игрока на действие: одного ограничения частоВы недостаточно. Применение: «Запрос открыть сундук».
Как проверить
Сервер получает запрос не чаще одного раза в секунду на игрока.
291Ключ для звёздСерверная практика / Хранилище данных: учебные ключи · Средний
Что делает скрипт
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите строку в Output. Никакой DataStore здесь не вызывается.
local Players = game:GetService("Players")
local function keyFor(player)
return "Stars_" .. tostring(player.UserId)
end
Players.PlayerAdded:Connect(function(player)
print("Учебный ключ:", keyFor(player))
end)
Как работает этот код
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local Players = game:GetService("Players")Получаем сервис игроков.local function keyFor(player)Создаём функцию формирования строкового ключа.return "Stars_" .. tostring(player.UserId)Используем постоянный числовой ID игрока, переведённый в строку.Players.PlayerAdded:Connect(function(player)Показываем ключ при входе игрока.print("Учебный ключ:", keyFor(player))Выводим его в Output; никакого сохранения в DataStore пока нет.
Поменяй префикс ключа и проверьте его в Output. Объясни, почему имя игрока хуже UserId для постоянного ключа; это пока не пример записи в DataStore. Применение: «Ключ для звёзд».
Как проверить
Получится ключ, уникальный для категории и идентификатора пользователя.
292Ключ для победСерверная практика / Хранилище данных: учебные ключи · Средний
Что делает скрипт
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите строку в Output. Никакой DataStore здесь не вызывается.
local Players = game:GetService("Players")
local function keyFor(player)
return "Wins_" .. tostring(player.UserId)
end
Players.PlayerAdded:Connect(function(player)
print("Учебный ключ:", keyFor(player))
end)
Как работает этот код
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local Players = game:GetService("Players")Получаем сервис игроков.local function keyFor(player)Создаём функцию формирования строкового ключа.return "Wins_" .. tostring(player.UserId)Используем постоянный числовой ID игрока, переведённый в строку.Players.PlayerAdded:Connect(function(player)Показываем ключ при входе игрока.print("Учебный ключ:", keyFor(player))Выводим его в Output; никакого сохранения в DataStore пока нет.
Поменяй префикс ключа и проверьте его в Output. Объясни, почему имя игрока хуже UserId для постоянного ключа; это пока не пример записи в DataStore. Применение: «Ключ для побед».
Как проверить
Получится ключ, уникальный для категории и идентификатора пользователя.
293Ключ для монетСерверная практика / Хранилище данных: учебные ключи · Средний
Что делает скрипт
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите строку в Output. Никакой DataStore здесь не вызывается.
local Players = game:GetService("Players")
local function keyFor(player)
return "Coins_" .. tostring(player.UserId)
end
Players.PlayerAdded:Connect(function(player)
print("Учебный ключ:", keyFor(player))
end)
Как работает этот код
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local Players = game:GetService("Players")Получаем сервис игроков.local function keyFor(player)Создаём функцию формирования строкового ключа.return "Coins_" .. tostring(player.UserId)Используем постоянный числовой ID игрока, переведённый в строку.Players.PlayerAdded:Connect(function(player)Показываем ключ при входе игрока.print("Учебный ключ:", keyFor(player))Выводим его в Output; никакого сохранения в DataStore пока нет.
Поменяй префикс ключа и проверьте его в Output. Объясни, почему имя игрока хуже UserId для постоянного ключа; это пока не пример записи в DataStore. Применение: «Ключ для монет».
Как проверить
Получится ключ, уникальный для категории и идентификатора пользователя.
294Ключ для лучшего времениСерверная практика / Хранилище данных: учебные ключи · Средний
Что делает скрипт
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите строку в Output. Никакой DataStore здесь не вызывается.
local Players = game:GetService("Players")
local function keyFor(player)
return "BestTime_" .. tostring(player.UserId)
end
Players.PlayerAdded:Connect(function(player)
print("Учебный ключ:", keyFor(player))
end)
Как работает этот код
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local Players = game:GetService("Players")Получаем сервис игроков.local function keyFor(player)Создаём функцию формирования строкового ключа.return "BestTime_" .. tostring(player.UserId)Используем постоянный числовой ID игрока, переведённый в строку.Players.PlayerAdded:Connect(function(player)Показываем ключ при входе игрока.print("Учебный ключ:", keyFor(player))Выводим его в Output; никакого сохранения в DataStore пока нет.
Поменяй префикс ключа и проверьте его в Output. Объясни, почему имя игрока хуже UserId для постоянного ключа; это пока не пример записи в DataStore. Применение: «Ключ для лучшего времени».
Как проверить
Получится ключ, уникальный для категории и идентификатора пользователя.
295Ключ для уровнейСерверная практика / Хранилище данных: учебные ключи · Средний
Что делает скрипт
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите строку в Output. Никакой DataStore здесь не вызывается.
local Players = game:GetService("Players")
local function keyFor(player)
return "Level_" .. tostring(player.UserId)
end
Players.PlayerAdded:Connect(function(player)
print("Учебный ключ:", keyFor(player))
end)
Как работает этот код
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local Players = game:GetService("Players")Получаем сервис игроков.local function keyFor(player)Создаём функцию формирования строкового ключа.return "Level_" .. tostring(player.UserId)Используем постоянный числовой ID игрока, переведённый в строку.Players.PlayerAdded:Connect(function(player)Показываем ключ при входе игрока.print("Учебный ключ:", keyFor(player))Выводим его в Output; никакого сохранения в DataStore пока нет.
Поменяй префикс ключа и проверьте его в Output. Объясни, почему имя игрока хуже UserId для постоянного ключа; это пока не пример записи в DataStore. Применение: «Ключ для уровней».
Как проверить
Получится ключ, уникальный для категории и идентификатора пользователя.
296Ключ для очковСерверная практика / Хранилище данных: учебные ключи · Средний
Что делает скрипт
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите строку в Output. Никакой DataStore здесь не вызывается.
local Players = game:GetService("Players")
local function keyFor(player)
return "Score_" .. tostring(player.UserId)
end
Players.PlayerAdded:Connect(function(player)
print("Учебный ключ:", keyFor(player))
end)
Как работает этот код
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local Players = game:GetService("Players")Получаем сервис игроков.local function keyFor(player)Создаём функцию формирования строкового ключа.return "Score_" .. tostring(player.UserId)Используем постоянный числовой ID игрока, переведённый в строку.Players.PlayerAdded:Connect(function(player)Показываем ключ при входе игрока.print("Учебный ключ:", keyFor(player))Выводим его в Output; никакого сохранения в DataStore пока нет.
Поменяй префикс ключа и проверьте его в Output. Объясни, почему имя игрока хуже UserId для постоянного ключа; это пока не пример записи в DataStore. Применение: «Ключ для очков».
Как проверить
Получится ключ, уникальный для категории и идентификатора пользователя.
297Ключ для опытаСерверная практика / Хранилище данных: учебные ключи · Средний
Что делает скрипт
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите строку в Output. Никакой DataStore здесь не вызывается.
local Players = game:GetService("Players")
local function keyFor(player)
return "XP_" .. tostring(player.UserId)
end
Players.PlayerAdded:Connect(function(player)
print("Учебный ключ:", keyFor(player))
end)
Как работает этот код
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local Players = game:GetService("Players")Получаем сервис игроков.local function keyFor(player)Создаём функцию формирования строкового ключа.return "XP_" .. tostring(player.UserId)Используем постоянный числовой ID игрока, переведённый в строку.Players.PlayerAdded:Connect(function(player)Показываем ключ при входе игрока.print("Учебный ключ:", keyFor(player))Выводим его в Output; никакого сохранения в DataStore пока нет.
Поменяй префикс ключа и проверьте его в Output. Объясни, почему имя игрока хуже UserId для постоянного ключа; это пока не пример записи в DataStore. Применение: «Ключ для опыта».
Как проверить
Получится ключ, уникальный для категории и идентификатора пользователя.
298Ключ для достиженийСерверная практика / Хранилище данных: учебные ключи · Средний
Что делает скрипт
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите строку в Output. Никакой DataStore здесь не вызывается.
local Players = game:GetService("Players")
local function keyFor(player)
return "Badges_" .. tostring(player.UserId)
end
Players.PlayerAdded:Connect(function(player)
print("Учебный ключ:", keyFor(player))
end)
Как работает этот код
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local Players = game:GetService("Players")Получаем сервис игроков.local function keyFor(player)Создаём функцию формирования строкового ключа.return "Badges_" .. tostring(player.UserId)Используем постоянный числовой ID игрока, переведённый в строку.Players.PlayerAdded:Connect(function(player)Показываем ключ при входе игрока.print("Учебный ключ:", keyFor(player))Выводим его в Output; никакого сохранения в DataStore пока нет.
Поменяй префикс ключа и проверьте его в Output. Объясни, почему имя игрока хуже UserId для постоянного ключа; это пока не пример записи в DataStore. Применение: «Ключ для достижений».
Как проверить
Получится ключ, уникальный для категории и идентификатора пользователя.
299Ключ для открытых мировСерверная практика / Хранилище данных: учебные ключи · Средний
Что делает скрипт
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите строку в Output. Никакой DataStore здесь не вызывается.
local Players = game:GetService("Players")
local function keyFor(player)
return "Worlds_" .. tostring(player.UserId)
end
Players.PlayerAdded:Connect(function(player)
print("Учебный ключ:", keyFor(player))
end)
Как работает этот код
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local Players = game:GetService("Players")Получаем сервис игроков.local function keyFor(player)Создаём функцию формирования строкового ключа.return "Worlds_" .. tostring(player.UserId)Используем постоянный числовой ID игрока, переведённый в строку.Players.PlayerAdded:Connect(function(player)Показываем ключ при входе игрока.print("Учебный ключ:", keyFor(player))Выводим его в Output; никакого сохранения в DataStore пока нет.
Поменяй префикс ключа и проверьте его в Output. Объясни, почему имя игрока хуже UserId для постоянного ключа; это пока не пример записи в DataStore. Применение: «Ключ для открытых миров».
Как проверить
Получится ключ, уникальный для категории и идентификатора пользователя.
300Ключ для сохранённых вещейСерверная практика / Хранилище данных: учебные ключи · Средний
Что делает скрипт
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных.
Куда вставить
Script в ServerScriptService
Пошаговая установка
- Подготовь объект или сервис, указанный в поле «Куда вставить».
- Добавьте нужный тип Script или LocalScript.
- Вставьте код, запустите Play и сравните с ожидаемым результатом.
Запустите Play и посмотрите строку в Output. Никакой DataStore здесь не вызывается.
local Players = game:GetService("Players")
local function keyFor(player)
return "Items_" .. tostring(player.UserId)
end
Players.PlayerAdded:Connect(function(player)
print("Учебный ключ:", keyFor(player))
end)
Как работает этот код
UserId нужен для устойчивого идентификатора игрока; это только создание ключа, не сохранение данных. Это учебная демонстрация, а не полностью готовая игровая механика.
Разбор строк
local Players = game:GetService("Players")Получаем сервис игроков.local function keyFor(player)Создаём функцию формирования строкового ключа.return "Items_" .. tostring(player.UserId)Используем постоянный числовой ID игрока, переведённый в строку.Players.PlayerAdded:Connect(function(player)Показываем ключ при входе игрока.print("Учебный ключ:", keyFor(player))Выводим его в Output; никакого сохранения в DataStore пока нет.
Поменяй префикс ключа и проверьте его в Output. Объясни, почему имя игрока хуже UserId для постоянного ключа; это пока не пример записи в DataStore. Применение: «Ключ для сохранённых вещей».
Как проверить
Получится ключ, уникальный для категории и идентификатора пользователя.
301Перекраска по касанию: маякСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(30,50,70)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(30,50,70)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Измените RGB-цвет на свой. Проверь, что деталь окрашивается только при касании персонажа.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Beacon.
302Перекраска по касанию: воротаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(41,57,83)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(41,57,83)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Создайте рядом вторую деталь с тем же скриптом, но другим цветом. Сравните результат.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Gate.
303Перекраска по касанию: мостСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(52,64,96)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(52,64,96)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Замени оттенок на яркий предупреждающий и объясни, почему цвет помогает игроку.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Bridge.
304Перекраска по касанию: платформаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(63,71,109)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(63,71,109)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Измените код так, чтобы касание другого Part без Humanoid не меняло цвет.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Platform.
305Перекраска по касанию: сфераСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(74,78,122)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(74,78,122)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Добавьте печать сообщения в Output после успешной перекраски.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Sphere.
306Перекраска по касанию: фонарьСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(85,85,135)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(85,85,135)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Измените RGB-цвет на свой. Проверь, что деталь окрашивается только при касании персонажа.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Lantern.
307Перекраска по касанию: кристаллСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(96,92,148)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(96,92,148)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Создайте рядом вторую деталь с тем же скриптом, но другим цветом. Сравните результат.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Crystal.
308Перекраска по касанию: порталСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(107,99,161)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(107,99,161)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Замени оттенок на яркий предупреждающий и объясни, почему цвет помогает игроку.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Portal.
309Перекраска по касанию: сундукСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(118,106,174)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(118,106,174)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Измените код так, чтобы касание другого Part без Humanoid не меняло цвет.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Chest.
310Перекраска по касанию: кнопкаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(129,113,187)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(129,113,187)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Добавьте печать сообщения в Output после успешной перекраски.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Button.
311Перекраска по касанию: лифтСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(140,120,200)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(140,120,200)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Измените RGB-цвет на свой. Проверь, что деталь окрашивается только при касании персонажа.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Lift.
312Перекраска по касанию: дорожкаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(151,127,213)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(151,127,213)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Создайте рядом вторую деталь с тем же скриптом, но другим цветом. Сравните результат.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Road.
313Перекраска по касанию: площадкаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(162,134,226)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(162,134,226)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Замени оттенок на яркий предупреждающий и объясни, почему цвет помогает игроку.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Pad.
314Перекраска по касанию: колоннаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(173,141,79)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(173,141,79)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Измените код так, чтобы касание другого Part без Humanoid не меняло цвет.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Column.
315Перекраска по касанию: башняСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(184,148,92)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(184,148,92)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Добавьте печать сообщения в Output после успешной перекраски.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Tower.
316Перекраска по касанию: островСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(195,155,105)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(195,155,105)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Измените RGB-цвет на свой. Проверь, что деталь окрашивается только при касании персонажа.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Island.
317Перекраска по касанию: каменьСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(206,162,118)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(206,162,118)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Создайте рядом вторую деталь с тем же скриптом, но другим цветом. Сравните результат.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Stone.
318Перекраска по касанию: деревоСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(217,169,131)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(217,169,131)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Замени оттенок на яркий предупреждающий и объясни, почему цвет помогает игроку.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Tree.
319Перекраска по касанию: метеорСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(228,176,144)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(228,176,144)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Измените код так, чтобы касание другого Part без Humanoid не меняло цвет.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Meteor.
320Перекраска по касанию: аркаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local p=script.Parent
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Color=Color3.fromRGB(39,183,157)
end
end)
Как работает этот код
Touched реагирует на касание детали; Color3.fromRGB задаёт новый цвет. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Color=Color3.fromRGB(39,183,157)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).
Добавьте печать сообщения в Output после успешной перекраски.
Как проверить
Коснись детали и проверьте изменение цвета. Проверьте объект Arch.
321Неоновое свечение по касанию: маякСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Уменьши Range до 6 и сравните освещённую область с исходной.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Beacon.
322Неоновое свечение по касанию: воротаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Измените Brightness и проверьте видимость объекта при слабом освещении.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Gate.
323Неоновое свечение по касанию: мостСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Сделайте подсветку другого цвета через light.Color и сравните её с Neon.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Bridge.
324Неоновое свечение по касанию: платформаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Добавьте задержку и выключение PointLight спустя три секунды.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Platform.
325Неоновое свечение по касанию: сфераСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Проверь, что касание постороннего предмета не включает свечение.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Sphere.
326Неоновое свечение по касанию: фонарьСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Уменьши Range до 6 и сравните освещённую область с исходной.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Lantern.
327Неоновое свечение по касанию: кристаллСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Измените Brightness и проверьте видимость объекта при слабом освещении.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Crystal.
328Неоновое свечение по касанию: порталСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Сделайте подсветку другого цвета через light.Color и сравните её с Neon.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Portal.
329Неоновое свечение по касанию: сундукСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Добавьте задержку и выключение PointLight спустя три секунды.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Chest.
330Неоновое свечение по касанию: кнопкаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Проверь, что касание постороннего предмета не включает свечение.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Button.
331Неоновое свечение по касанию: лифтСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Уменьши Range до 6 и сравните освещённую область с исходной.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Lift.
332Неоновое свечение по касанию: дорожкаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Измените Brightness и проверьте видимость объекта при слабом освещении.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Road.
333Неоновое свечение по касанию: площадкаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Сделайте подсветку другого цвета через light.Color и сравните её с Neon.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Pad.
334Неоновое свечение по касанию: колоннаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Добавьте задержку и выключение PointLight спустя три секунды.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Column.
335Неоновое свечение по касанию: башняСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Проверь, что касание постороннего предмета не включает свечение.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Tower.
336Неоновое свечение по касанию: островСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Уменьши Range до 6 и сравните освещённую область с исходной.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Island.
337Неоновое свечение по касанию: каменьСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Измените Brightness и проверьте видимость объекта при слабом освещении.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Stone.
338Неоновое свечение по касанию: деревоСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Сделайте подсветку другого цвета через light.Color и сравните её с Neon.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Tree.
339Неоновое свечение по касанию: метеорСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Добавьте задержку и выключение PointLight спустя три секунды.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Meteor.
340Неоновое свечение по касанию: аркаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Material изменяет способ отображения поверхности, а PointLight подсвечивает область.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local p=script.Parent
local light=Instance.new("PointLight")
light.Brightness=2
light.Range=12
light.Enabled=false
light.Parent=p
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
p.Material=Enum.Material.Neon
light.Enabled=true
end
end)
Как работает этот код
Material изменяет способ отображения поверхности, а PointLight подсвечивает область. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local light=Instance.new("PointLight")Создаём источник света, который освещает окружающие поверхности.light.Brightness=2Задаём яркость освещения: чем больше число, тем ярче свет.light.Range=12Устанавливаем радиус освещения в studs.light.Enabled=falseВначале источник света выключен.light.Parent=pПомещаем PointLight внутрь детали, чтобы он освещал пространство возле неё.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if hit.Parent:FindFirstChildOfClass("Humanoid") thenПроверяем, относится ли коснувшаяся деталь к модели с Humanoid (обычно к персонажу).p.Material=Enum.Material.NeonМеняем материал детали на Neon. Сам по себе Neon не освещает окружающие объекты.light.Enabled=trueВключаем созданный PointLight после касания.
Проверь, что касание постороннего предмета не включает свечение.
Как проверить
Коснись детали: она станет неоновой и засияет. Проверьте объект Arch.
341Возврат цвета через три секунды: маякСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(44,76,88)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(44,76,88)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Поменяй время ожидания с 3 на 5 секунд и проверьте возвращение цвета.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Beacon.
342Возврат цвета через три секунды: воротаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(55,83,101)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(55,83,101)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Попробуйте несколько быстрых касаний и убедись, что защита busy работает.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Gate.
343Возврат цвета через три секунды: мостСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(66,90,114)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(66,90,114)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Измените временный цвет и проверь, что исходный всё равно восстанавливается.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Bridge.
344Возврат цвета через три секунды: платформаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(77,97,127)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(77,97,127)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Добавьте вывод «эффект начался» и «эффект завершён» в Output.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Platform.
345Возврат цвета через три секунды: сфераСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(88,104,140)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(88,104,140)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Сделайте две отдельные детали с разными исходными цветами и проверьте восстановление.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Sphere.
346Возврат цвета через три секунды: фонарьСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(99,111,153)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(99,111,153)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Поменяй время ожидания с 3 на 5 секунд и проверьте возвращение цвета.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Lantern.
347Возврат цвета через три секунды: кристаллСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(110,118,166)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(110,118,166)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Попробуйте несколько быстрых касаний и убедись, что защита busy работает.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Crystal.
348Возврат цвета через три секунды: порталСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(121,125,179)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(121,125,179)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Измените временный цвет и проверь, что исходный всё равно восстанавливается.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Portal.
349Возврат цвета через три секунды: сундукСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(132,132,192)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(132,132,192)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Добавьте вывод «эффект начался» и «эффект завершён» в Output.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Chest.
350Возврат цвета через три секунды: кнопкаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(143,139,205)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(143,139,205)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Сделайте две отдельные детали с разными исходными цветами и проверьте восстановление.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Button.
351Возврат цвета через три секунды: лифтСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(154,146,218)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(154,146,218)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Поменяй время ожидания с 3 на 5 секунд и проверьте возвращение цвета.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Lift.
352Возврат цвета через три секунды: дорожкаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(165,153,71)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(165,153,71)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Попробуйте несколько быстрых касаний и убедись, что защита busy работает.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Road.
353Возврат цвета через три секунды: площадкаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(176,160,84)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(176,160,84)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Измените временный цвет и проверь, что исходный всё равно восстанавливается.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Pad.
354Возврат цвета через три секунды: колоннаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(187,167,97)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(187,167,97)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Добавьте вывод «эффект начался» и «эффект завершён» в Output.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Column.
355Возврат цвета через три секунды: башняСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(198,174,110)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(198,174,110)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Сделайте две отдельные детали с разными исходными цветами и проверьте восстановление.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Tower.
356Возврат цвета через три секунды: островСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(209,181,123)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(209,181,123)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Поменяй время ожидания с 3 на 5 секунд и проверьте возвращение цвета.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Island.
357Возврат цвета через три секунды: каменьСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(220,188,136)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(220,188,136)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Попробуйте несколько быстрых касаний и убедись, что защита busy работает.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Stone.
358Возврат цвета через три секунды: деревоСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(31,195,149)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(31,195,149)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Измените временный цвет и проверь, что исходный всё равно восстанавливается.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Tree.
359Возврат цвета через три секунды: метеорСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(42,202,162)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(42,202,162)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Добавьте вывод «эффект начался» и «эффект завершён» в Output.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Meteor.
360Возврат цвета через три секунды: аркаСоздание миров / Цвет и материалы · Начальный
Что делает скрипт
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local p=script.Parent
local old=p.Color
local busy=false
p.Touched:Connect(function(hit)
if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return end
busy=true
p.Color=Color3.fromRGB(53,209,175)
task.wait(3)
p.Color=old
busy=false
end)
Как работает этот код
Сохраняем исходный цвет перед изменением и возвращаем его после task.wait. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.local old=p.ColorЗапоминаем исходный цвет детали, чтобы затем восстановить его.local busy=falseФлаг защищает от одновременных срабатываний, пока действует эффект.p.Touched:Connect(function(hit)Подписываемся на касание. hit — коснувшаяся деталь персонажа или другого объекта.if busy or not hit.Parent:FindFirstChildOfClass("Humanoid") then return endПрекращаем обработку, если эффект уже запущен или коснулся не персонаж.busy=trueБлокируем новые касания до завершения эффекта.p.Color=Color3.fromRGB(53,209,175)Устанавливаем цвет по трём каналам RGB (красный, зелёный, синий; значения от 0 до 255).task.wait(3)Ждём примерно три секунды; это не точный соревновательный таймер.p.Color=oldВозвращаем сохранённый первоначальный цвет.busy=falseСнова разрешаем запуск эффекта.
Сделайте две отдельные детали с разными исходными цветами и проверьте восстановление.
Как проверить
Коснись детали: цвет изменится на три секунды. Проверьте объект Arch.
361Плавное поднятие: маякДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Измените высоту подъёма с 8 на 4 studs и измерь результат в Studio.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Beacon.
362Плавное поднятие: воротаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Измените время Tween с 3 на 6 секунд: как изменится скорость?
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Gate.
363Плавное поднятие: мостДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Сравните направление движения детали после её поворота в редакторе.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Bridge.
364Плавное поднятие: платформаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Создайте второй объект с другим исходным положением, сохранив тот же скрипт.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Platform.
365Плавное поднятие: сфераДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Убедись, что скрипт запускает движение только один раз при старте сервера.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Sphere.
366Плавное поднятие: фонарьДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Измените высоту подъёма с 8 на 4 studs и измерь результат в Studio.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Lantern.
367Плавное поднятие: кристаллДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Измените время Tween с 3 на 6 секунд: как изменится скорость?
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Crystal.
368Плавное поднятие: порталДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Сравните направление движения детали после её поворота в редакторе.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Portal.
369Плавное поднятие: сундукДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Создайте второй объект с другим исходным положением, сохранив тот же скрипт.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Chest.
370Плавное поднятие: кнопкаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Убедись, что скрипт запускает движение только один раз при старте сервера.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Button.
371Плавное поднятие: лифтДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Измените высоту подъёма с 8 на 4 studs и измерь результат в Studio.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Lift.
372Плавное поднятие: дорожкаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Измените время Tween с 3 на 6 секунд: как изменится скорость?
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Road.
373Плавное поднятие: площадкаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Сравните направление движения детали после её поворота в редакторе.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Pad.
374Плавное поднятие: колоннаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Создайте второй объект с другим исходным положением, сохранив тот же скрипт.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Column.
375Плавное поднятие: башняДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Убедись, что скрипт запускает движение только один раз при старте сервера.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Tower.
376Плавное поднятие: островДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Измените высоту подъёма с 8 на 4 studs и измерь результат в Studio.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Island.
377Плавное поднятие: каменьДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Измените время Tween с 3 на 6 секунд: как изменится скорость?
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Stone.
378Плавное поднятие: деревоДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Сравните направление движения детали после её поворота в редакторе.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Tree.
379Плавное поднятие: метеорДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Создайте второй объект с другим исходным положением, сохранив тот же скрипт.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Meteor.
380Плавное поднятие: аркаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.new(0,8,0)
TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()
Как работает этот код
TweenService меняет CFrame за указанное время; Anchored предотвращает падение детали. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.new(0,8,0)Вычисляем конечное положение: на 8 studs выше относительно текущей ориентации детали.TweenService:Create(p,TweenInfo.new(3),{CFrame=target}):Play()Создаём и сразу запускаем трёхсекундное плавное перемещение детали.
Убедись, что скрипт запускает движение только один раз при старте сервера.
Как проверить
Деталь плавно поднимется на 8 studs. Проверьте объект Arch.
381Плавный поворот: маякДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Измените угол с 90 на 45 градусов и сравните положение.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Beacon.
382Плавный поворот: воротаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Попробуйте время Tween 4 секунды вместо 2 и сравните плавность.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Gate.
383Плавный поворот: мостДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Проверьте поворот прямоугольного блока: так направление заметнее.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Bridge.
384Плавный поворот: платформаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Поверни деталь в редакторе до Play и проверьте локальную ось вращения.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Platform.
385Плавный поворот: сфераДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Добавьте второй объект и задай ему поворот в противоположную сторону.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Sphere.
386Плавный поворот: фонарьДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Измените угол с 90 на 45 градусов и сравните положение.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Lantern.
387Плавный поворот: кристаллДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Попробуйте время Tween 4 секунды вместо 2 и сравните плавность.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Crystal.
388Плавный поворот: порталДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Проверьте поворот прямоугольного блока: так направление заметнее.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Portal.
389Плавный поворот: сундукДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Поверни деталь в редакторе до Play и проверьте локальную ось вращения.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Chest.
390Плавный поворот: кнопкаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Добавьте второй объект и задай ему поворот в противоположную сторону.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Button.
391Плавный поворот: лифтДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Измените угол с 90 на 45 градусов и сравните положение.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Lift.
392Плавный поворот: дорожкаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Попробуйте время Tween 4 секунды вместо 2 и сравните плавность.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Road.
393Плавный поворот: площадкаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Проверьте поворот прямоугольного блока: так направление заметнее.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Pad.
394Плавный поворот: колоннаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Поверни деталь в редакторе до Play и проверьте локальную ось вращения.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Column.
395Плавный поворот: башняДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Добавьте второй объект и задай ему поворот в противоположную сторону.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Tower.
396Плавный поворот: островДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Измените угол с 90 на 45 градусов и сравните положение.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Island.
397Плавный поворот: каменьДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Попробуйте время Tween 4 секунды вместо 2 и сравните плавность.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Stone.
398Плавный поворот: деревоДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Проверьте поворот прямоугольного блока: так направление заметнее.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Tree.
399Плавный поворот: метеорДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Поверни деталь в редакторе до Play и проверьте локальную ось вращения.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Meteor.
400Плавный поворот: аркаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
TweenService анимирует угол поворота объекта вокруг оси Y.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local TweenService=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)
TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()
Как работает этот код
TweenService анимирует угол поворота объекта вокруг оси Y. Сначала разберись с настройкой детали и выполнением события, затем измените один параметр и сравните поведение в Play.
Разбор строк
local TweenService=game:GetService("TweenService")Подключаем сервис плавного изменения свойств объектов.local p=script.ParentПолучаем деталь, в которую вложен этот Script. Имя детали в коде не используется.p.Anchored=trueЗакрепляем деталь, чтобы обычная физика не сдвигала её.local target=p.CFrame*CFrame.Angles(0,math.rad(90),0)Вычисляем конечный поворот вокруг локальной оси Y на 90 градусов.TweenService:Create(p,TweenInfo.new(2),{CFrame=target}):Play()Создаём и сразу запускаем двухсекундный плавный поворот детали.
Добавьте второй объект и задай ему поворот в противоположную сторону.
Как проверить
Деталь повернётся на четверть оборота. Проверьте объект Arch.
401Пульсация размера: маякДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Beacon; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «маяк» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Beacon.
402Пульсация размера: воротаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Gate; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «ворота» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Gate.
403Пульсация размера: мостДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Bridge; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «мост» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Bridge.
404Пульсация размера: платформаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Platform; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «платформа» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Platform.
405Пульсация размера: сфераДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Sphere; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «сфера» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Sphere.
406Пульсация размера: фонарьДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Lantern; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «фонарь» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Lantern.
407Пульсация размера: кристаллДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Crystal; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «кристалл» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Crystal.
408Пульсация размера: порталДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Portal; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «портал» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Portal.
409Пульсация размера: сундукДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Chest; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «сундук» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Chest.
410Пульсация размера: кнопкаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Button; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «кнопка» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Button.
411Пульсация размера: лифтДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Lift; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «лифт» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Lift.
412Пульсация размера: дорожкаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Road; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «дорожка» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Road.
413Пульсация размера: площадкаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Pad; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «площадка» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Pad.
414Пульсация размера: колоннаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Column; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «колонна» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Column.
415Пульсация размера: башняДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Tower; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «башня» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Tower.
416Пульсация размера: островДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Island; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «остров» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Island.
417Пульсация размера: каменьДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Stone; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «камень» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Stone.
418Пульсация размера: деревоДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Tree; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «дерево» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Tree.
419Пульсация размера: метеорДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Meteor; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «метеор» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Meteor.
420Пульсация размера: аркаДвижение и эффекты / Движение деталей · Начальный
Что делает скрипт
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local T=game:GetService("TweenService")
local p=script.Parent
p.Anchored=true
local original=p.Size
while p.Parent do
local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})
a:Play(); a.Completed:Wait()
local b=T:Create(p,TweenInfo.new(1),{Size=original})
b:Play(); b.Completed:Wait()
end
Как работает этот код
Твин плавно изменяет Size; цикл повторяет увеличение и уменьшение. В этом сценарии используется объект Arch; поменяй его имя и оформление для собственной игры.
Разбор строк
local T=game:GetService("TweenService")Получаем сервис плавной анимации TweenService.local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.p.Anchored=trueЗакрепляем деталь, чтобы она не падала при изменении размера.local original=p.SizeЗапоминаем первоначальный размер для возврата.while p.Parent doПовторяем эффект, пока объект находится в игре.local a=T:Create(p,TweenInfo.new(1),{Size=original*1.3})Создаём плавное изменение свойства объекта с помощью TweenService.a:Play(); a.Completed:Wait()Запускаем первую анимацию.local b=T:Create(p,TweenInfo.new(1),{Size=original})Создаём плавное изменение свойства объекта с помощью TweenService.b:Play(); b.Completed:Wait()Запускаем возвращение к исходному состоянию.
Преврати объект «арка» в заметный ориентир: подбери длительность роста и коэффициент увеличения так, чтобы эффект был виден, но не мешал прохождению. Сравните размеры 1.1 и 1.3 от исходного и проверьте результат в Play.
Как проверить
Деталь плавно увеличивается и возвращается к исходному размеру. Проверьте объект Arch.
421Прозрачность по кнопке E: маякИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Beacon.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Beacon; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «маяк» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Beacon.
422Прозрачность по кнопке E: воротаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Gate.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Gate; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «ворота» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Gate.
423Прозрачность по кнопке E: мостИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Bridge.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Bridge; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «мост» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Bridge.
424Прозрачность по кнопке E: платформаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Platform.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Platform; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «платформа» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Platform.
425Прозрачность по кнопке E: сфераИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Sphere.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Sphere; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «сфера» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Sphere.
426Прозрачность по кнопке E: фонарьИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Lantern.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Lantern; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «фонарь» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Lantern.
427Прозрачность по кнопке E: кристаллИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Crystal.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Crystal; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «кристалл» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Crystal.
428Прозрачность по кнопке E: порталИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Portal.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Portal; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «портал» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Portal.
429Прозрачность по кнопке E: сундукИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Chest.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Chest; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «сундук» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Chest.
430Прозрачность по кнопке E: кнопкаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Button.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Button; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «кнопка» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Button.
431Прозрачность по кнопке E: лифтИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Lift.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Lift; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «лифт» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Lift.
432Прозрачность по кнопке E: дорожкаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Road.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Road; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «дорожка» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Road.
433Прозрачность по кнопке E: площадкаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Pad.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Pad; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «площадка» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Pad.
434Прозрачность по кнопке E: колоннаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Column.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Column; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «колонна» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Column.
435Прозрачность по кнопке E: башняИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Tower.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Tower; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «башня» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Tower.
436Прозрачность по кнопке E: островИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Island.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Island; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «остров» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Island.
437Прозрачность по кнопке E: каменьИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Stone.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Stone; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «камень» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Stone.
438Прозрачность по кнопке E: деревоИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Tree.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Tree; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «дерево» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Tree.
439Прозрачность по кнопке E: метеорИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Meteor.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Meteor; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «метеор» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Meteor.
440Прозрачность по кнопке E: аркаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Arch.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.Triggered:Connect(function(player)
p.Transparency=0.6
end)
Как работает этот код
ProximityPrompt.Triggered запускается при взаимодействии; Transparency задаёт прозрачность. В этом сценарии используется объект Arch; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.prompt.Triggered:Connect(function(player)Подписываемся на событие взаимодействия игрока с подсказкой.p.Transparency=0.6Устанавливаем прозрачность детали на 60 процентов; столкновения не меняются.
Для объекта «арка» сравните прозрачность 0.3 и 0.8. Убедитесь в Play, что персонаж по-прежнему сталкивается с деталью. Если нужен настоящий проход, отдельно изучи CanCollide в следующей группе.
Как проверить
Подойдите и нажмите E: деталь станет полупрозрачной. Проверьте объект Arch.
441Тумблер столкновений: маякИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Beacon.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Beacon; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «маяк»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Beacon.
442Тумблер столкновений: воротаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Gate.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Gate; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «ворота»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Gate.
443Тумблер столкновений: мостИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Bridge.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Bridge; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «мост»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Bridge.
444Тумблер столкновений: платформаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Platform.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Platform; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «платформа»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Platform.
445Тумблер столкновений: сфераИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Sphere.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Sphere; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «сфера»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Sphere.
446Тумблер столкновений: фонарьИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Lantern.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Lantern; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «фонарь»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Lantern.
447Тумблер столкновений: кристаллИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Crystal.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Crystal; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «кристалл»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Crystal.
448Тумблер столкновений: порталИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Portal.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Portal; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «портал»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Portal.
449Тумблер столкновений: сундукИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Chest.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Chest; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «сундук»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Chest.
450Тумблер столкновений: кнопкаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Button.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Button; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «кнопка»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Button.
451Тумблер столкновений: лифтИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Lift.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Lift; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «лифт»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Lift.
452Тумблер столкновений: дорожкаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Road.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Road; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «дорожка»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Road.
453Тумблер столкновений: площадкаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Pad.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Pad; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «площадка»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Pad.
454Тумблер столкновений: колоннаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Column.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Column; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «колонна»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Column.
455Тумблер столкновений: башняИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Tower.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Tower; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «башня»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Tower.
456Тумблер столкновений: островИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Island.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Island; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «остров»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Island.
457Тумблер столкновений: каменьИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Stone.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Stone; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «камень»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Stone.
458Тумблер столкновений: деревоИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Tree.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Tree; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «дерево»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Tree.
459Тумблер столкновений: метеорИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Meteor.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Meteor; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «метеор»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Meteor.
460Тумблер столкновений: аркаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Логическая переменная хранит состояние; CanCollide управляет проходимостью.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Arch.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local opened=false
prompt.Triggered:Connect(function()
opened=not opened
p.CanCollide=not opened
p.Transparency=opened and 0.6 or 0
end)
Как работает этот код
Логическая переменная хранит состояние; CanCollide управляет проходимостью. В этом сценарии используется объект Arch; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local opened=falseХраним состояние прохода: первоначально он закрыт.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.opened=not openedПереключаем состояние при каждом действии.p.CanCollide=not openedВ открытом состоянии выключаем столкновения, в закрытом — включаем.p.Transparency=opened and 0.6 or 0Выбираем прозрачность в зависимости от состояния.
Сделайте переключаемый проход для объекта «арка»: проверьте открытие и закрытие двумя нажатиями E, затем объясни, почему одновременно меняются Transparency и CanCollide. Не закрывай проход, пока внутри стоит персонаж.
Как проверить
Нажмите E дважды: проход откроется и снова закроется. Проверьте объект Arch.
461Кнопка с задержкой: маякИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Beacon.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(86,154,142)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Beacon; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(86,154,142)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «маяк» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Beacon.
462Кнопка с задержкой: воротаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Gate.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(97,161,155)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Gate; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(97,161,155)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «ворота» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Gate.
463Кнопка с задержкой: мостИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Bridge.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(108,168,168)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Bridge; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(108,168,168)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «мост» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Bridge.
464Кнопка с задержкой: платформаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Platform.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(119,175,181)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Platform; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(119,175,181)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «платформа» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Platform.
465Кнопка с задержкой: сфераИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Sphere.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(130,182,194)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Sphere; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(130,182,194)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «сфера» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Sphere.
466Кнопка с задержкой: фонарьИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Lantern.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(141,189,207)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Lantern; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(141,189,207)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «фонарь» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Lantern.
467Кнопка с задержкой: кристаллИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Crystal.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(152,196,220)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Crystal; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(152,196,220)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «кристалл» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Crystal.
468Кнопка с задержкой: порталИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Portal.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(163,203,73)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Portal; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(163,203,73)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «портал» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Portal.
469Кнопка с задержкой: сундукИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Chest.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(174,210,86)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Chest; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(174,210,86)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «сундук» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Chest.
470Кнопка с задержкой: кнопкаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Button.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(185,217,99)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Button; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(185,217,99)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «кнопка» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Button.
471Кнопка с задержкой: лифтИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Lift.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(196,224,112)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Lift; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(196,224,112)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «лифт» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Lift.
472Кнопка с задержкой: дорожкаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Road.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(207,51,125)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Road; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(207,51,125)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «дорожка» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Road.
473Кнопка с задержкой: площадкаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Pad.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(218,58,138)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Pad; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(218,58,138)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «площадка» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Pad.
474Кнопка с задержкой: колоннаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Column.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(229,65,151)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Column; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(229,65,151)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «колонна» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Column.
475Кнопка с задержкой: башняИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Tower.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(40,72,164)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Tower; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(40,72,164)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «башня» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Tower.
476Кнопка с задержкой: островИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Island.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(51,79,177)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Island; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(51,79,177)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «остров» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Island.
477Кнопка с задержкой: каменьИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Stone.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(62,86,190)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Stone; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(62,86,190)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «камень» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Stone.
478Кнопка с задержкой: деревоИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Tree.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(73,93,203)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Tree; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(73,93,203)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «дерево» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Tree.
479Кнопка с задержкой: метеорИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Meteor.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(84,100,216)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Meteor; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(84,100,216)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «метеор» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Meteor.
480Кнопка с задержкой: аркаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Arch.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local busy=false
prompt.Triggered:Connect(function()
if busy then return end
busy=true
p.Color=Color3.fromRGB(95,107,229)
task.wait(4)
busy=false
end)
Как работает этот код
Серверный cooldown не разрешает повторять действие чаще одного раза в четыре секунды. В этом сценарии используется объект Arch; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local busy=falseЗапоминаем, выполняется ли уже операция.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if busy then return endЗапрещаем повторный запуск до окончания текущего.busy=trueОтмечаем начало обработки нажатия.p.Color=Color3.fromRGB(95,107,229)Задаём цвет через три составляющие RGB.task.wait(4)Ожидаем примерно четыре секунды; для точного таймера этого недостаточно.busy=falseРазрешаем следующее нажатие.
У объекта «арка» измените цвет и задержку с четырёх до двух секунд. Нажимай E быстро несколько раз: повторное действие должно игнорироваться во время ожидания. Обрати внимание: исходный цвет автоматически НЕ возвращается.
Как проверить
Попробуйте быстро нажать E: действия происходят не чаще раза в 4 секунды. Проверьте объект Arch.
481Ограниченное число нажатий: маякИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Beacon.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Beacon; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «маяк» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Beacon.
482Ограниченное число нажатий: воротаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Gate.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Gate; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «ворота» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Gate.
483Ограниченное число нажатий: мостИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Bridge.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Bridge; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «мост» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Bridge.
484Ограниченное число нажатий: платформаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Platform.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Platform; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «платформа» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Platform.
485Ограниченное число нажатий: сфераИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Sphere.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Sphere; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «сфера» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Sphere.
486Ограниченное число нажатий: фонарьИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Lantern.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Lantern; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «фонарь» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Lantern.
487Ограниченное число нажатий: кристаллИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Crystal.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Crystal; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «кристалл» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Crystal.
488Ограниченное число нажатий: порталИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Portal.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Portal; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «портал» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Portal.
489Ограниченное число нажатий: сундукИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Chest.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Chest; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «сундук» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Chest.
490Ограниченное число нажатий: кнопкаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Button.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Button; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «кнопка» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Button.
491Ограниченное число нажатий: лифтИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Lift.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Lift; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «лифт» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Lift.
492Ограниченное число нажатий: дорожкаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Road.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Road; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «дорожка» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Road.
493Ограниченное число нажатий: площадкаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Pad.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Pad; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «площадка» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Pad.
494Ограниченное число нажатий: колоннаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Column.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Column; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «колонна» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Column.
495Ограниченное число нажатий: башняИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Tower.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Tower; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «башня» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Tower.
496Ограниченное число нажатий: островИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Island.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Island; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «остров» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Island.
497Ограниченное число нажатий: каменьИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Stone.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Stone; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «камень» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Stone.
498Ограниченное число нажатий: деревоИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Tree.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Tree; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «дерево» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Tree.
499Ограниченное число нажатий: метеорИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Meteor.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Meteor; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «метеор» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Meteor.
500Ограниченное число нажатий: аркаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается.
Куда вставить
Script в Part с ProximityPrompt
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Arch.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local left=3
prompt.Triggered:Connect(function()
if left<=0 then return end
left-=1
print(p.Name,"Осталось нажатий:",left)
if left==0 then prompt.Enabled=false end
end)
Как работает этот код
Счётчик попыток уменьшается при нажатии; по окончании взаимодействие выключается. В этом сценарии используется объект Arch; поменяй его имя и оформление для собственной игры.
Разбор строк
local p=script.ParentПолучаем объект, внутрь которого помещён скрипт.local prompt=p:WaitForChild("ProximityPrompt")Ожидаем объект взаимодействия ProximityPrompt внутри детали.local left=3Начинаем с лимита в три взаимодействия.prompt.Triggered:Connect(function()Подписываемся на событие взаимодействия игрока с подсказкой.if left<=0 then return endИгнорируем события после исчерпания лимита.left-=1Уменьшаем число доступных нажатий на один.print(p.Name,"Осталось нажатий:",left)Показываем в Output название объекта и количество оставшихся попыток.if left==0 then prompt.Enabled=false endВыключаем приглашение к взаимодействию после последней попытки.
Для объекта «арка» увеличь лимит с трёх до пяти нажатий. Отслеживай значение в Output. Проверь, что после пятого взаимодействия ProximityPrompt отключится; это общий лимит детали, а не индивидуальный лимит каждого игрока.
Как проверить
Первые три нажатия сработают, затем подсказка пропадёт. Проверьте объект Arch.
501Свет при приближении: маякДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Собери мини-игру «Найди маяк»: расставь три одинаковых объекта, каждый со светом. Поменяй в одном экземпляре порог с 18 на 10 studs. Сравните момент включения света.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Beacon.
502Свет при приближении: воротаДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Добавьте к объекту «ворота» табличку-указатель. Проверьте с двумя игроками: если один стоит рядом, а второй далеко, свет должен продолжать гореть.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Gate.
503Свет при приближении: мостДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Создайте для «мост» две зоны заметности: одну с радиусом света 8 studs, другую с 24. Объясни, почему Range и расстояние срабатывания — разные числа.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Bridge.
504Свет при приближении: платформаДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Поставь объект «платформа» у входа на трассу. Проверьте выход и повторный вход игрока в зону: свет должен выключаться, когда рядом никого нет.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Platform.
505Свет при приближении: сфераДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Собери мини-игру «Найди сфера»: расставь три одинаковых объекта, каждый со светом. Поменяй в одном экземпляре порог с 18 на 10 studs. Сравните момент включения света.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Sphere.
506Свет при приближении: фонарьДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Добавьте к объекту «фонарь» табличку-указатель. Проверьте с двумя игроками: если один стоит рядом, а второй далеко, свет должен продолжать гореть.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Lantern.
507Свет при приближении: кристаллДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Создайте для «кристалл» две зоны заметности: одну с радиусом света 8 studs, другую с 24. Объясни, почему Range и расстояние срабатывания — разные числа.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Crystal.
508Свет при приближении: порталДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Поставь объект «портал» у входа на трассу. Проверьте выход и повторный вход игрока в зону: свет должен выключаться, когда рядом никого нет.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Portal.
509Свет при приближении: сундукДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Собери мини-игру «Найди сундук»: расставь три одинаковых объекта, каждый со светом. Поменяй в одном экземпляре порог с 18 на 10 studs. Сравните момент включения света.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Chest.
510Свет при приближении: кнопкаДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Добавьте к объекту «кнопка» табличку-указатель. Проверьте с двумя игроками: если один стоит рядом, а второй далеко, свет должен продолжать гореть.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Button.
511Свет при приближении: лифтДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Создайте для «лифт» две зоны заметности: одну с радиусом света 8 studs, другую с 24. Объясни, почему Range и расстояние срабатывания — разные числа.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Lift.
512Свет при приближении: дорожкаДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Поставь объект «дорожка» у входа на трассу. Проверьте выход и повторный вход игрока в зону: свет должен выключаться, когда рядом никого нет.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Road.
513Свет при приближении: площадкаДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Собери мини-игру «Найди площадка»: расставь три одинаковых объекта, каждый со светом. Поменяй в одном экземпляре порог с 18 на 10 studs. Сравните момент включения света.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Pad.
514Свет при приближении: колоннаДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Добавьте к объекту «колонна» табличку-указатель. Проверьте с двумя игроками: если один стоит рядом, а второй далеко, свет должен продолжать гореть.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Column.
515Свет при приближении: башняДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Создайте для «башня» две зоны заметности: одну с радиусом света 8 studs, другую с 24. Объясни, почему Range и расстояние срабатывания — разные числа.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Tower.
516Свет при приближении: островДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Поставь объект «остров» у входа на трассу. Проверьте выход и повторный вход игрока в зону: свет должен выключаться, когда рядом никого нет.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Island.
517Свет при приближении: каменьДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Собери мини-игру «Найди камень»: расставь три одинаковых объекта, каждый со светом. Поменяй в одном экземпляре порог с 18 на 10 studs. Сравните момент включения света.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Stone.
518Свет при приближении: деревоДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Добавьте к объекту «дерево» табличку-указатель. Проверьте с двумя игроками: если один стоит рядом, а второй далеко, свет должен продолжать гореть.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Tree.
519Свет при приближении: метеорДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Создайте для «метеор» две зоны заметности: одну с радиусом света 8 studs, другую с 24. Объясни, почему Range и расстояние срабатывания — разные числа.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Meteor.
520Свет при приближении: аркаДвижение и эффекты / Свет · Средний
Что делает скрипт
Скрипт проверяет расстояние до персонажей и включает PointLight рядом с игроком.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local Players=game:GetService("Players")
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=16
while p.Parent do
local nearby=false
for _,plr in Players:GetPlayers() do
local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break end
end
light.Enabled=nearby
task.wait(0.25)
end
Как работает этот код
Сервер периодически измеряет расстояние от объекта до каждого игрока. Если хотя бы один персонаж достаточно близко, включается PointLight. Такой свет общий для всех игроков, а не персональный.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере, чтобы проверять их расстояние.local p=script.ParentОпределяем деталь, около которой будет включаться свет.local light=Instance.new("PointLight",p)Создаём источник света внутри детали.for _,plr in Players:GetPlayers() doПеребираем игроков, которые сейчас находятся на сервере.local root=plr.Character and plr.Character:FindFirstChild("HumanoidRootPart")Находим центральную деталь персонажа для определения его позиции.if root and (root.Position-p.Position).Magnitude<18 then nearby=true;break endВычисляем расстояние до детали; порог — 18 studs.light.Enabled=nearbyСвет включён, если рядом есть хотя бы один игрок.task.wait(0.25)Проверка выполняется примерно четыре раза в секунду, а не каждый кадр.
Поставь объект «арка» у входа на трассу. Проверьте выход и повторный вход игрока в зону: свет должен выключаться, когда рядом никого нет.
Как проверить
Подойдите ближе 18 studs: свет включится. Проверьте объект Arch.
521Мигающий фонарь: маякДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Используй «маяк» как предупреждающий фонарь у препятствия. Измените интервалы на 0.4 секунды и сравните с исходными 1.2.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Beacon.
522Мигающий фонарь: воротаДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Создайте два фонаря для «ворота»: один медленный, второй быстрый. Измените Brightness так, чтобы было две хорошо различимые фазы.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Gate.
523Мигающий фонарь: мостДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Преврати «мост» в маяк на финише: чередуй Brightness 2 и 0.1. Проверь, что свет остаётся видимым на расстоянии.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Bridge.
524Мигающий фонарь: платформаДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Для «платформа» создайте цветной PointLight и сравните пульсацию на ПК и в эмуляторе телефона. Уменьши Range, если эффект мешает обзору.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Platform.
525Мигающий фонарь: сфераДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Используй «сфера» как предупреждающий фонарь у препятствия. Измените интервалы на 0.4 секунды и сравните с исходными 1.2.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Sphere.
526Мигающий фонарь: фонарьДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Создайте два фонаря для «фонарь»: один медленный, второй быстрый. Измените Brightness так, чтобы было две хорошо различимые фазы.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Lantern.
527Мигающий фонарь: кристаллДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Преврати «кристалл» в маяк на финише: чередуй Brightness 2 и 0.1. Проверь, что свет остаётся видимым на расстоянии.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Crystal.
528Мигающий фонарь: порталДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Для «портал» создайте цветной PointLight и сравните пульсацию на ПК и в эмуляторе телефона. Уменьши Range, если эффект мешает обзору.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Portal.
529Мигающий фонарь: сундукДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Используй «сундук» как предупреждающий фонарь у препятствия. Измените интервалы на 0.4 секунды и сравните с исходными 1.2.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Chest.
530Мигающий фонарь: кнопкаДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Создайте два фонаря для «кнопка»: один медленный, второй быстрый. Измените Brightness так, чтобы было две хорошо различимые фазы.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Button.
531Мигающий фонарь: лифтДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Преврати «лифт» в маяк на финише: чередуй Brightness 2 и 0.1. Проверь, что свет остаётся видимым на расстоянии.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Lift.
532Мигающий фонарь: дорожкаДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Для «дорожка» создайте цветной PointLight и сравните пульсацию на ПК и в эмуляторе телефона. Уменьши Range, если эффект мешает обзору.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Road.
533Мигающий фонарь: площадкаДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Используй «площадка» как предупреждающий фонарь у препятствия. Измените интервалы на 0.4 секунды и сравните с исходными 1.2.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Pad.
534Мигающий фонарь: колоннаДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Создайте два фонаря для «колонна»: один медленный, второй быстрый. Измените Brightness так, чтобы было две хорошо различимые фазы.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Column.
535Мигающий фонарь: башняДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Преврати «башня» в маяк на финише: чередуй Brightness 2 и 0.1. Проверь, что свет остаётся видимым на расстоянии.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Tower.
536Мигающий фонарь: островДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Для «остров» создайте цветной PointLight и сравните пульсацию на ПК и в эмуляторе телефона. Уменьши Range, если эффект мешает обзору.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Island.
537Мигающий фонарь: каменьДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Используй «камень» как предупреждающий фонарь у препятствия. Измените интервалы на 0.4 секунды и сравните с исходными 1.2.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Stone.
538Мигающий фонарь: деревоДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Создайте два фонаря для «дерево»: один медленный, второй быстрый. Измените Brightness так, чтобы было две хорошо различимые фазы.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Tree.
539Мигающий фонарь: метеорДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Преврати «метеор» в маяк на финише: чередуй Brightness 2 и 0.1. Проверь, что свет остаётся видимым на расстоянии.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Meteor.
540Мигающий фонарь: аркаДвижение и эффекты / Свет · Начальный
Что делает скрипт
PointLight.Brightness чередуется, создавая мерцание.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local p=script.Parent
local light=Instance.new("PointLight",p)
light.Range=12
while p.Parent do
light.Brightness=1
task.wait(1.2)
light.Brightness=0.3
task.wait(1.2)
end
Как работает этот код
Серверный Script чередует два значения яркости PointLight с паузами: получается мигающий фонарь. Менять скорость можно через task.wait, силу свечения — через Brightness.
Разбор строк
local p=script.ParentНаходим деталь с фонарём.local light=Instance.new("PointLight",p)Создаём источник света, привязанный к детали.light.Range=12Ограничиваем радиус свечения.while p.Parent doПовторяем изменение яркости, пока деталь находится в игре.light.Brightness=1Устанавливаем яркую фазу фонаря.light.Brightness=0.3Устанавливаем тусклую фазу; свет не выключается полностью.task.wait(1.2)Делаем паузу между фазами мигания.
Для «арка» создайте цветной PointLight и сравните пульсацию на ПК и в эмуляторе телефона. Уменьши Range, если эффект мешает обзору.
Как проверить
Свет внутри детали будет мигать. Проверьте объект Arch.
541Звук по касанию: маякДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Beacon.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Добавьте к объекту «маяк» звук контрольной точки. Установите допустимый SoundId и проверь, что звук звучит при касании персонажа.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Beacon.
542Звук по касанию: воротаДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Gate.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Сделайте звуковой секрет для «ворота»: звук должен запускаться только при касании игроком. Попробуйте коснуться детали обычным Part и сравните результат.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Gate.
543Звук по касанию: мостДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Bridge.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Перенеси «мост» к началу уровня и подбери короткий ненавязчивый звук. Проверьте два быстрых касания: второй запуск не должен накладываться на первый.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Bridge.
544Звук по касанию: платформаДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Platform.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Настройте громкость звука объекта «платформа» через свойство Volume и проверьте результат в Play. Объясни, почему звук без SoundId молчит.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Platform.
545Звук по касанию: сфераДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Sphere.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Добавьте к объекту «сфера» звук контрольной точки. Установите допустимый SoundId и проверь, что звук звучит при касании персонажа.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Sphere.
546Звук по касанию: фонарьДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Lantern.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Сделайте звуковой секрет для «фонарь»: звук должен запускаться только при касании игроком. Попробуйте коснуться детали обычным Part и сравните результат.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Lantern.
547Звук по касанию: кристаллДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Crystal.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Перенеси «кристалл» к началу уровня и подбери короткий ненавязчивый звук. Проверьте два быстрых касания: второй запуск не должен накладываться на первый.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Crystal.
548Звук по касанию: порталДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Portal.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Настройте громкость звука объекта «портал» через свойство Volume и проверьте результат в Play. Объясни, почему звук без SoundId молчит.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Portal.
549Звук по касанию: сундукДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Chest.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Добавьте к объекту «сундук» звук контрольной точки. Установите допустимый SoundId и проверь, что звук звучит при касании персонажа.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Chest.
550Звук по касанию: кнопкаДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Button.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Сделайте звуковой секрет для «кнопка»: звук должен запускаться только при касании игроком. Попробуйте коснуться детали обычным Part и сравните результат.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Button.
551Звук по касанию: лифтДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Lift.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Перенеси «лифт» к началу уровня и подбери короткий ненавязчивый звук. Проверьте два быстрых касания: второй запуск не должен накладываться на первый.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Lift.
552Звук по касанию: дорожкаДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Road.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Настройте громкость звука объекта «дорожка» через свойство Volume и проверьте результат в Play. Объясни, почему звук без SoundId молчит.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Road.
553Звук по касанию: площадкаДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Pad.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Добавьте к объекту «площадка» звук контрольной точки. Установите допустимый SoundId и проверь, что звук звучит при касании персонажа.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Pad.
554Звук по касанию: колоннаДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Column.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Сделайте звуковой секрет для «колонна»: звук должен запускаться только при касании игроком. Попробуйте коснуться детали обычным Part и сравните результат.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Column.
555Звук по касанию: башняДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Tower.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Перенеси «башня» к началу уровня и подбери короткий ненавязчивый звук. Проверьте два быстрых касания: второй запуск не должен накладываться на первый.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Tower.
556Звук по касанию: островДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Island.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Настройте громкость звука объекта «остров» через свойство Volume и проверьте результат в Play. Объясни, почему звук без SoundId молчит.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Island.
557Звук по касанию: каменьДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Stone.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Добавьте к объекту «камень» звук контрольной точки. Установите допустимый SoundId и проверь, что звук звучит при касании персонажа.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Stone.
558Звук по касанию: деревоДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Tree.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Сделайте звуковой секрет для «дерево»: звук должен запускаться только при касании игроком. Попробуйте коснуться детали обычным Part и сравните результат.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Tree.
559Звук по касанию: метеорДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Meteor.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Перенеси «метеор» к началу уровня и подбери короткий ненавязчивый звук. Проверьте два быстрых касания: второй запуск не должен накладываться на первый.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Meteor.
560Звук по касанию: аркаДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Воспроизведение Sound запускается при касании персонажем.
Куда вставить
Script внутри Part c Sound
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part объект Sound с разрешённым SoundId и обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part объект Sound с разрешённым SoundId и обычный Script. Назови деталь Arch.
local p=script.Parent
local sound=p:WaitForChild("Sound")
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying then
sound:Play()
end
end)
Как работает этот код
Обработчик Touched получает деталь, коснувшуюся объекта. Код проверяет наличие Humanoid, затем запускает уже настроенный звук, если он ещё не проигрывается.
Разбор строк
local p=script.ParentПолучаем деталь, которой персонаж касается.local sound=p:WaitForChild("Sound")Ожидаем дочерний Sound; его SoundId нужно задать в свойствах.p.Touched:Connect(function(hit)Подписываемся на касания детали.if hit.Parent:FindFirstChildOfClass("Humanoid") and not sound.IsPlaying thenИгнорируем касания предметами без Humanoid.sound:Play()Запускаем звук на сервере при подходящем касании.
Настройте громкость звука объекта «арка» через свойство Volume и проверьте результат в Play. Объясни, почему звук без SoundId молчит.
Как проверить
Коснись детали: проиграется выбранный звук. Проверьте объект Arch.
561Включение музыки кнопкой: маякДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Beacon.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Построй музыкальную станцию «маяк»: добавьте ProximityPrompt и Sound с разрешённым SoundId. Нажмите E дважды и проверьте включение и выключение.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Beacon.
562Включение музыки кнопкой: воротаДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Gate.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Сделайте две кнопки музыки у «ворота». Сравните независимые звуки на разных объектах и убедись, что каждый переключается отдельно.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Gate.
563Включение музыки кнопкой: мостДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Bridge.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Добавьте к «мост» краткую инструкцию «E — музыка». Проверь, что без ProximityPrompt скрипт ждёт объект и не сможет включить музыку.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Bridge.
564Включение музыки кнопкой: платформаДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Platform.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Настройте для «платформа» зацикленную музыку через Sound.Looped и проверь, что повторное нажатие E её останавливает.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Platform.
565Включение музыки кнопкой: сфераДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Sphere.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Построй музыкальную станцию «сфера»: добавьте ProximityPrompt и Sound с разрешённым SoundId. Нажмите E дважды и проверьте включение и выключение.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Sphere.
566Включение музыки кнопкой: фонарьДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Lantern.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Сделайте две кнопки музыки у «фонарь». Сравните независимые звуки на разных объектах и убедись, что каждый переключается отдельно.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Lantern.
567Включение музыки кнопкой: кристаллДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Crystal.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Добавьте к «кристалл» краткую инструкцию «E — музыка». Проверь, что без ProximityPrompt скрипт ждёт объект и не сможет включить музыку.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Crystal.
568Включение музыки кнопкой: порталДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Portal.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Настройте для «портал» зацикленную музыку через Sound.Looped и проверь, что повторное нажатие E её останавливает.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Portal.
569Включение музыки кнопкой: сундукДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Chest.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Построй музыкальную станцию «сундук»: добавьте ProximityPrompt и Sound с разрешённым SoundId. Нажмите E дважды и проверьте включение и выключение.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Chest.
570Включение музыки кнопкой: кнопкаДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Button.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Сделайте две кнопки музыки у «кнопка». Сравните независимые звуки на разных объектах и убедись, что каждый переключается отдельно.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Button.
571Включение музыки кнопкой: лифтДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Lift.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Добавьте к «лифт» краткую инструкцию «E — музыка». Проверь, что без ProximityPrompt скрипт ждёт объект и не сможет включить музыку.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Lift.
572Включение музыки кнопкой: дорожкаДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Road.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Настройте для «дорожка» зацикленную музыку через Sound.Looped и проверь, что повторное нажатие E её останавливает.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Road.
573Включение музыки кнопкой: площадкаДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Pad.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Построй музыкальную станцию «площадка»: добавьте ProximityPrompt и Sound с разрешённым SoundId. Нажмите E дважды и проверьте включение и выключение.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Pad.
574Включение музыки кнопкой: колоннаДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Column.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Сделайте две кнопки музыки у «колонна». Сравните независимые звуки на разных объектах и убедись, что каждый переключается отдельно.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Column.
575Включение музыки кнопкой: башняДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Tower.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Добавьте к «башня» краткую инструкцию «E — музыка». Проверь, что без ProximityPrompt скрипт ждёт объект и не сможет включить музыку.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Tower.
576Включение музыки кнопкой: островДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Island.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Настройте для «остров» зацикленную музыку через Sound.Looped и проверь, что повторное нажатие E её останавливает.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Island.
577Включение музыки кнопкой: каменьДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Stone.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Построй музыкальную станцию «камень»: добавьте ProximityPrompt и Sound с разрешённым SoundId. Нажмите E дважды и проверьте включение и выключение.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Stone.
578Включение музыки кнопкой: деревоДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Tree.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Сделайте две кнопки музыки у «дерево». Сравните независимые звуки на разных объектах и убедись, что каждый переключается отдельно.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Tree.
579Включение музыки кнопкой: метеорДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Meteor.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Добавьте к «метеор» краткую инструкцию «E — музыка». Проверь, что без ProximityPrompt скрипт ждёт объект и не сможет включить музыку.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Meteor.
580Включение музыки кнопкой: аркаДвижение и эффекты / Звуки · Начальный
Что делает скрипт
Кнопка переключает Playing звука на сервере — слышно всем рядом.
Куда вставить
Script внутри Part c ProximityPrompt и Sound
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Добавьте в Part ProximityPrompt, Sound и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Добавьте в Part ProximityPrompt, Sound и Script. Назови деталь Arch.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
local sound=p:WaitForChild("Sound")
prompt.Triggered:Connect(function()
if sound.IsPlaying then sound:Stop() else sound:Play() end
end)
Как работает этот код
ProximityPrompt сообщает скрипту о взаимодействии. Скрипт проверяет IsPlaying и выбирает одно из двух действий: Play либо Stop. SoundId задаётся заранее в свойствах.
Разбор строк
local p=script.ParentПолучаем объект, содержащий интерактивную кнопку.local prompt=p:WaitForChild("ProximityPrompt")Ищем приглашение к взаимодействию, обычно показывающее клавишу E.local sound=p:WaitForChild("Sound")Находим Sound, которому заранее задан доступный SoundId.prompt.Triggered:Connect(function()Обрабатываем активацию ProximityPrompt игроком.if sound.IsPlaying then sound:Stop() else sound:Play() endПроверяем, воспроизводится ли звук прямо сейчас.
Настройте для «арка» зацикленную музыку через Sound.Looped и проверь, что повторное нажатие E её останавливает.
Как проверить
Нажмите E: музыка включится; повторно — выключится. Проверьте объект Arch.
581Случайный оттенок: маякСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Создайте «цветовой маяк» из «маяк»: измените время смены оттенка на 1 секунду и сравните с исходными 3.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Beacon.
582Случайный оттенок: воротаСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Добавьте второй объект «ворота» с другой насыщенностью HSV (0.3 вместо 0.7). Сравни, какой цвет выглядит спокойнее.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Gate.
583Случайный оттенок: мостСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Сделайте на карте три цветных ориентира на основе «мост» и измените яркость HSV с 1 до 0.6. Проверьте читаемость маршрута.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Bridge.
584Случайный оттенок: платформаСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Преврати «платформа» в указатель секретной зоны: меняй оттенок раз в 5 секунд и проверь, что цвет не изменяет свойство CanCollide.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Platform.
585Случайный оттенок: сфераСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Создайте «цветовой маяк» из «сфера»: измените время смены оттенка на 1 секунду и сравните с исходными 3.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Sphere.
586Случайный оттенок: фонарьСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Добавьте второй объект «фонарь» с другой насыщенностью HSV (0.3 вместо 0.7). Сравни, какой цвет выглядит спокойнее.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Lantern.
587Случайный оттенок: кристаллСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Сделайте на карте три цветных ориентира на основе «кристалл» и измените яркость HSV с 1 до 0.6. Проверьте читаемость маршрута.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Crystal.
588Случайный оттенок: порталСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Преврати «портал» в указатель секретной зоны: меняй оттенок раз в 5 секунд и проверь, что цвет не изменяет свойство CanCollide.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Portal.
589Случайный оттенок: сундукСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Создайте «цветовой маяк» из «сундук»: измените время смены оттенка на 1 секунду и сравните с исходными 3.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Chest.
590Случайный оттенок: кнопкаСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Добавьте второй объект «кнопка» с другой насыщенностью HSV (0.3 вместо 0.7). Сравни, какой цвет выглядит спокойнее.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Button.
591Случайный оттенок: лифтСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Сделайте на карте три цветных ориентира на основе «лифт» и измените яркость HSV с 1 до 0.6. Проверьте читаемость маршрута.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Lift.
592Случайный оттенок: дорожкаСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Преврати «дорожка» в указатель секретной зоны: меняй оттенок раз в 5 секунд и проверь, что цвет не изменяет свойство CanCollide.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Road.
593Случайный оттенок: площадкаСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Создайте «цветовой маяк» из «площадка»: измените время смены оттенка на 1 секунду и сравните с исходными 3.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Pad.
594Случайный оттенок: колоннаСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Добавьте второй объект «колонна» с другой насыщенностью HSV (0.3 вместо 0.7). Сравни, какой цвет выглядит спокойнее.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Column.
595Случайный оттенок: башняСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Сделайте на карте три цветных ориентира на основе «башня» и измените яркость HSV с 1 до 0.6. Проверьте читаемость маршрута.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Tower.
596Случайный оттенок: островСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Преврати «остров» в указатель секретной зоны: меняй оттенок раз в 5 секунд и проверь, что цвет не изменяет свойство CanCollide.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Island.
597Случайный оттенок: каменьСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Создайте «цветовой маяк» из «камень»: измените время смены оттенка на 1 секунду и сравните с исходными 3.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Stone.
598Случайный оттенок: деревоСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Добавьте второй объект «дерево» с другой насыщенностью HSV (0.3 вместо 0.7). Сравни, какой цвет выглядит спокойнее.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Tree.
599Случайный оттенок: метеорСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Сделайте на карте три цветных ориентира на основе «метеор» и измените яркость HSV с 1 до 0.6. Проверьте читаемость маршрута.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Meteor.
600Случайный оттенок: аркаСоздание миров / Мир · Начальный
Что делает скрипт
Color3.fromHSV получает цвет из случайного тона; Saturation и Value задают насыщенность и яркость.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local p=script.Parent
while p.Parent do
p.Color=Color3.fromHSV(math.random(),0.7,1)
task.wait(3)
end
Как работает этот код
Каждые три секунды сервер генерирует случайный оттенок через HSV и назначает его детали. Насыщенность и яркость здесь фиксированы, поэтому меняется главным образом цветовой тон.
Разбор строк
local p=script.ParentПолучаем деталь, цвет которой меняется.while p.Parent doПовторяем изменение цвета, пока деталь существует в мире.p.Color=Color3.fromHSV(math.random(),0.7,1)Создаём цвет из оттенка, насыщенности и яркости.task.wait(3)Выдерживаем паузу три секунды между изменениями.
Преврати «арка» в указатель секретной зоны: меняй оттенок раз в 5 секунд и проверь, что цвет не изменяет свойство CanCollide.
Как проверить
Каждые три секунды цвет детали изменяется. Проверьте объект Arch.
601Вращение декора: маякСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Beacon; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: маяк.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Beacon.
602Вращение декора: воротаСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Gate; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: ворота.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Gate.
603Вращение декора: мостСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Bridge; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: мост.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Bridge.
604Вращение декора: платформаСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Platform; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: платформа.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Platform.
605Вращение декора: сфераСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Sphere; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: сфера.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Sphere.
606Вращение декора: фонарьСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Lantern; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: фонарь.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Lantern.
607Вращение декора: кристаллСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Crystal; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: кристалл.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Crystal.
608Вращение декора: порталСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Portal; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: портал.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Portal.
609Вращение декора: сундукСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Chest; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: сундук.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Chest.
610Вращение декора: кнопкаСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Button; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: кнопка.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Button.
611Вращение декора: лифтСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Lift; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: лифт.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Lift.
612Вращение декора: дорожкаСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Road; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: дорожка.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Road.
613Вращение декора: площадкаСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Pad; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: площадка.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Pad.
614Вращение декора: колоннаСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Column; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: колонна.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Column.
615Вращение декора: башняСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Tower; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: башня.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Tower.
616Вращение декора: островСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Island; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: остров.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Island.
617Вращение декора: каменьСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Stone; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: камень.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Stone.
618Вращение декора: деревоСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Tree; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: дерево.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Tree.
619Вращение декора: метеорСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Meteor; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: метеор.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Meteor.
620Вращение декора: аркаСоздание миров / Мир · Начальный
Что делает скрипт
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами.
Куда вставить
Script внутри Anchored Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local p=script.Parent
p.Anchored=true
while p.Parent do
p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)
task.wait(0.05)
end
Как работает этот код
PivotTo/CFrame позволяет вращать закреплённый декор небольшими шагами. В этом сценарии используется объект Arch; поменяй его имя и оформление для собственной игры. Обрати внимание: вращается сама закреплённая деталь, без механизма дверной петли.
Разбор строк
local p=script.ParentПолучаем деталь, в которую вложен Script; это объект, который будет вращаться.p.Anchored=trueЗакрепляем деталь, чтобы гравитация не уронила её.while p.Parent doПовторяем вращение, пока деталь находится в иерархии игры.p.CFrame=p.CFrame*CFrame.Angles(0,math.rad(2),0)Каждый шаг добавляем поворот на 2 градуса по локальной оси Y.task.wait(0.05)Делаем паузу между шагами; её длительность приблизительная, не строгий таймер.
Измените угол поворота на 5 градусов за шаг и паузу на 0.1 секунды. Сравните вращение. Для ворот используй декоративную закреплённую деталь: этот код вращает вокруг центра Part, а не вокруг дверных петель. Объект упражнения: арка.
Как проверить
Деталь будет медленно поворачиваться. Проверьте объект Arch.
621Показ координат: маякLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Beacon; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: маяк.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Beacon.
622Показ координат: воротаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Gate; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: ворота.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Gate.
623Показ координат: мостLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Bridge; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: мост.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Bridge.
624Показ координат: платформаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Platform; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: платформа.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Platform.
625Показ координат: сфераLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Sphere; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: сфера.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Sphere.
626Показ координат: фонарьLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Lantern; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: фонарь.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Lantern.
627Показ координат: кристаллLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Crystal; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: кристалл.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Crystal.
628Показ координат: порталLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Portal; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: портал.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Portal.
629Показ координат: сундукLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Chest; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: сундук.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Chest.
630Показ координат: кнопкаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Button; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: кнопка.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Button.
631Показ координат: лифтLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Lift; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: лифт.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Lift.
632Показ координат: дорожкаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Road; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: дорожка.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Road.
633Показ координат: площадкаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Pad; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: площадка.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Pad.
634Показ координат: колоннаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Column; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: колонна.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Column.
635Показ координат: башняLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Tower; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: башня.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Tower.
636Показ координат: островLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Island; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: остров.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Island.
637Показ координат: каменьLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Stone; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: камень.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Stone.
638Показ координат: деревоLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Tree; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: дерево.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Tree.
639Показ координат: метеорLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Meteor; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: метеор.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Meteor.
640Показ координат: аркаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Position содержит три координаВы детали в мировом пространстве.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local p=script.Parent
local pos=p.Position
print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)
Как работает этот код
Position содержит три координаВы детали в мировом пространстве. В этом сценарии используется объект Arch; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем объект, внутри которого лежит скрипт.local pos=p.PositionСохраняем текущие координаВы детали в момент запуска.print(p.Name,"X:",pos.X,"Y:",pos.Y,"Z:",pos.Z)Печатаем название и три координаВы в Output; положение объекта не меняется.
Передвинь деталь на 10 studs по X и запустите Play заново. Сравните вывод X, Y и Z. Затем попробуйте считывать Position внутри цикла, чтобы отслеживать движущийся объект. Объект упражнения: арка.
Как проверить
В Output появятся координаВы объекта. Проверьте объект Arch.
641Проверка размера: маякLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Beacon; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: маяк.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Beacon.
642Проверка размера: воротаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Gate; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: ворота.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Gate.
643Проверка размера: мостLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Bridge; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: мост.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Bridge.
644Проверка размера: платформаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Platform; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: платформа.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Platform.
645Проверка размера: сфераLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Sphere; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: сфера.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Sphere.
646Проверка размера: фонарьLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Lantern; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: фонарь.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Lantern.
647Проверка размера: кристаллLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Crystal; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: кристалл.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Crystal.
648Проверка размера: порталLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Portal; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: портал.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Portal.
649Проверка размера: сундукLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Chest; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: сундук.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Chest.
650Проверка размера: кнопкаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Button; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: кнопка.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Button.
651Проверка размера: лифтLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Lift; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: лифт.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Lift.
652Проверка размера: дорожкаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Road; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: дорожка.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Road.
653Проверка размера: площадкаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Pad; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: площадка.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Pad.
654Проверка размера: колоннаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Column; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: колонна.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Column.
655Проверка размера: башняLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Tower; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: башня.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Tower.
656Проверка размера: островLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Island; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: остров.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Island.
657Проверка размера: каменьLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Stone; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: камень.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Stone.
658Проверка размера: деревоLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Tree; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: дерево.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Tree.
659Проверка размера: метеорLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Meteor; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: метеор.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Meteor.
660Проверка размера: аркаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
Size показывает размер детали в studs по трём осям.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local p=script.Parent
local s=p.Size
print(p.Name,"Размер:",s.X,s.Y,s.Z)
Как работает этот код
Size показывает размер детали в studs по трём осям. В этом сценарии используется объект Arch; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentПолучаем деталь из Explorer.local s=p.SizeЧитаем размеры детали по трём осям в studs.print(p.Name,"Размер:",s.X,s.Y,s.Z)Выводим габариВы в Output; скрипт не изменяет размеры.
Измените Size детали на (4, 8, 2), запустите Play и проверьте три числа в Output. Добавьте условие, которое сообщает, если высота больше 6 studs. Объект упражнения: арка.
Как проверить
В Output появятся ширина, высота и длина. Проверьте объект Arch.
661Атрибут состояния: маякLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Beacon; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: маяк.
Как проверить
В Output появится состояние Active. Проверьте объект Beacon.
662Атрибут состояния: воротаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Gate; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: ворота.
Как проверить
В Output появится состояние Active. Проверьте объект Gate.
663Атрибут состояния: мостLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Bridge; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: мост.
Как проверить
В Output появится состояние Active. Проверьте объект Bridge.
664Атрибут состояния: платформаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Platform; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: платформа.
Как проверить
В Output появится состояние Active. Проверьте объект Platform.
665Атрибут состояния: сфераLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Sphere; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: сфера.
Как проверить
В Output появится состояние Active. Проверьте объект Sphere.
666Атрибут состояния: фонарьLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Lantern; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: фонарь.
Как проверить
В Output появится состояние Active. Проверьте объект Lantern.
667Атрибут состояния: кристаллLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Crystal; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: кристалл.
Как проверить
В Output появится состояние Active. Проверьте объект Crystal.
668Атрибут состояния: порталLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Portal; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: портал.
Как проверить
В Output появится состояние Active. Проверьте объект Portal.
669Атрибут состояния: сундукLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Chest; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: сундук.
Как проверить
В Output появится состояние Active. Проверьте объект Chest.
670Атрибут состояния: кнопкаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Button; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: кнопка.
Как проверить
В Output появится состояние Active. Проверьте объект Button.
671Атрибут состояния: лифтLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Lift; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: лифт.
Как проверить
В Output появится состояние Active. Проверьте объект Lift.
672Атрибут состояния: дорожкаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Road; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: дорожка.
Как проверить
В Output появится состояние Active. Проверьте объект Road.
673Атрибут состояния: площадкаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Pad; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: площадка.
Как проверить
В Output появится состояние Active. Проверьте объект Pad.
674Атрибут состояния: колоннаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Column; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: колонна.
Как проверить
В Output появится состояние Active. Проверьте объект Column.
675Атрибут состояния: башняLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Tower; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: башня.
Как проверить
В Output появится состояние Active. Проверьте объект Tower.
676Атрибут состояния: островLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Island; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: остров.
Как проверить
В Output появится состояние Active. Проверьте объект Island.
677Атрибут состояния: каменьLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Stone; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: камень.
Как проверить
В Output появится состояние Active. Проверьте объект Stone.
678Атрибут состояния: деревоLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Tree; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: дерево.
Как проверить
В Output появится состояние Active. Проверьте объект Tree.
679Атрибут состояния: метеорLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Meteor; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: метеор.
Как проверить
В Output появится состояние Active. Проверьте объект Meteor.
680Атрибут состояния: аркаLuau и алгоритмы / Информация · Начальный
Что делает скрипт
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local p=script.Parent
p:SetAttribute("State","Active")
print(p.Name,p:GetAttribute("State"))
Как работает этот код
SetAttribute сохраняет небольшое значение прямо у объекта, GetAttribute читает его. В этом сценарии используется объект Arch; поменяй его имя и оформление для собственной игры. Атрибут хранит состояние, но его применение к поведению детали нужно запрограммировать отдельно.
Разбор строк
local p=script.ParentПолучаем деталь, у которой будет сохранён атрибут.p:SetAttribute("State","Active")Создаём или обновляем строковый атрибут State со значением Active.print(p.Name,p:GetAttribute("State"))Считываем атрибут и показываем его в Output; никакая дверь или механизм автоматически не включается.
Измените значение State на Locked. Добавьте второй Script, который считывает State и меняет цвет детали только при значении Active; проверьте оба случая. Объект упражнения: арка.
Как проверить
В Output появится состояние Active. Проверьте объект Arch.
681Таймер объекта: маякИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Beacon; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: маяк.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Beacon.
682Таймер объекта: воротаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Gate; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: ворота.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Gate.
683Таймер объекта: мостИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Bridge; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: мост.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Bridge.
684Таймер объекта: платформаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Platform; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: платформа.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Platform.
685Таймер объекта: сфераИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Sphere; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: сфера.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Sphere.
686Таймер объекта: фонарьИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Lantern; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: фонарь.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Lantern.
687Таймер объекта: кристаллИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Crystal; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: кристалл.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Crystal.
688Таймер объекта: порталИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Portal; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: портал.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Portal.
689Таймер объекта: сундукИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Chest; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: сундук.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Chest.
690Таймер объекта: кнопкаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Button; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: кнопка.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Button.
691Таймер объекта: лифтИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Lift; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: лифт.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Lift.
692Таймер объекта: дорожкаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Road; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: дорожка.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Road.
693Таймер объекта: площадкаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Pad; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: площадка.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Pad.
694Таймер объекта: колоннаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Column; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: колонна.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Column.
695Таймер объекта: башняИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Tower; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: башня.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Tower.
696Таймер объекта: островИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Island; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: остров.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Island.
697Таймер объекта: каменьИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Stone; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: камень.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Stone.
698Таймер объекта: деревоИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Tree; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: дерево.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Tree.
699Таймер объекта: метеорИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Meteor; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: метеор.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Meteor.
700Таймер объекта: аркаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local p=script.Parent
for seconds=5,1,-1 do
print(p.Name,"До запуска:",seconds)
task.wait(1)
end
print(p.Name,"Готово!")
Как работает этот код
Время отсчитывается на сервере; сообщения можно использовать для проверки скрипта. В этом сценарии используется объект Arch; поменяй его имя и оформление для собственной игры. Результат выводится только в Output; игровую механику предстоит создать отдельным шагом.
Разбор строк
local p=script.ParentНаходим деталь, в которой находится Script.for seconds=5,1,-1 doПеребираем значения 5, 4, 3, 2, 1.print(p.Name,"До запуска:",seconds)Печатаем оставшееся число секунд в Output.task.wait(1)Ждём примерно секунду; в реальной игре для точного таймера лучше измерять время сервера.print(p.Name,"Готово!")После цикла выводим сообщение; код сам по себе не запускает механизм.
Измените время отсчёта на 10 секунд. После сообщения «Готово!» включи PointLight внутри детали или откройте проход, установив CanCollide=false; проверьте эффект в Play. Объект упражнения: арка.
Как проверить
В Output появится отсчёт 5,4,3,2,1. Проверьте объект Arch.
701Счётчик касаний: маякИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Beacon; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: маяк.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Beacon.
702Счётчик касаний: воротаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Gate; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: ворота.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Gate.
703Счётчик касаний: мостИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Bridge; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: мост.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Bridge.
704Счётчик касаний: платформаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Platform; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: платформа.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Platform.
705Счётчик касаний: сфераИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Sphere; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: сфера.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Sphere.
706Счётчик касаний: фонарьИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Lantern; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: фонарь.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Lantern.
707Счётчик касаний: кристаллИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Crystal; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: кристалл.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Crystal.
708Счётчик касаний: порталИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Portal; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: портал.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Portal.
709Счётчик касаний: сундукИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Chest; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: сундук.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Chest.
710Счётчик касаний: кнопкаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Button; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: кнопка.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Button.
711Счётчик касаний: лифтИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Lift; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: лифт.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Lift.
712Счётчик касаний: дорожкаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Road; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: дорожка.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Road.
713Счётчик касаний: площадкаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Pad; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: площадка.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Pad.
714Счётчик касаний: колоннаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Column; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: колонна.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Column.
715Счётчик касаний: башняИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Tower; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: башня.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Tower.
716Счётчик касаний: островИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Island; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: остров.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Island.
717Счётчик касаний: каменьИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Stone; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: камень.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Stone.
718Счётчик касаний: деревоИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Tree; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: дерево.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Tree.
719Счётчик касаний: метеорИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Meteor; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: метеор.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Meteor.
720Счётчик касаний: аркаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local p=script.Parent
local count=0
p.Touched:Connect(function(hit)
if hit.Parent:FindFirstChildOfClass("Humanoid") then
count+=1
print(p.Name,"Событий касания:",count)
end
end)
Как работает этот код
Touched срабатывает при контакте, счётчик фиксирует число событий, а не уникальных игроков. В этом сценарии используется объект Arch; поменяй его имя и оформление для собственной игры. Важно: счётчик измеряет срабатывания Touched, не число уникальных игроков и не игровые очки.
Разбор строк
local p=script.ParentПолучаем деталь, которой принадлежит Script.local count=0Создаём счётчик событий касания, начиная с нуля.p.Touched:Connect(function(hit)Подписываемся на касание; событие может сработать несколько раз.hit.Parent:FindFirstChildOfClass("Humanoid")Проверяем, что коснулась часть модели персонажа с Humanoid.count+=1Увеличиваем счётчик событий, а не число разных игроков.print(p.Name,"Событий касания:",count)Показываем счётчик в Output, не изменяя игровые очки.
Проверь, почему одно касание персонажа иногда прибавляет несколько событий. Добавьте защиту от повторных касаний с паузой 2 секунды и сравните результат. Объект упражнения: арка.
Как проверить
Каждое касание добавляет запись в Output. Проверьте объект Arch.
721Личное первое касание: маякИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Beacon; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: маяк.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Beacon.
722Личное первое касание: воротаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Gate; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: ворота.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Gate.
723Личное первое касание: мостИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Bridge; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: мост.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Bridge.
724Личное первое касание: платформаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Platform; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: платформа.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Platform.
725Личное первое касание: сфераИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Sphere; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: сфера.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Sphere.
726Личное первое касание: фонарьИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Lantern; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: фонарь.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Lantern.
727Личное первое касание: кристаллИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Crystal; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: кристалл.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Crystal.
728Личное первое касание: порталИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Portal; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: портал.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Portal.
729Личное первое касание: сундукИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Chest; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: сундук.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Chest.
730Личное первое касание: кнопкаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Button; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: кнопка.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Button.
731Личное первое касание: лифтИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Lift; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: лифт.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Lift.
732Личное первое касание: дорожкаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Road; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: дорожка.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Road.
733Личное первое касание: площадкаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Pad; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: площадка.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Pad.
734Личное первое касание: колоннаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Column; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: колонна.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Column.
735Личное первое касание: башняИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Tower; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: башня.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Tower.
736Личное первое касание: островИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Island; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: остров.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Island.
737Личное первое касание: каменьИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Stone; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: камень.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Stone.
738Личное первое касание: деревоИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Tree; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: дерево.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Tree.
739Личное первое касание: метеорИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Meteor; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: метеор.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Meteor.
740Личное первое касание: аркаИгровые системы / Игровая логика · Начальный
Что делает скрипт
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local Players=game:GetService("Players")
local p=script.Parent
local visited={}
p.Touched:Connect(function(hit)
local plr=Players:GetPlayerFromCharacter(hit.Parent)
if not plr or visited[plr.UserId] then return end
visited[plr.UserId]=true
print(plr.Name,"впервые коснулся",p.Name)
end)
Как работает этот код
Таблица отмечает UserId каждого игрока, поэтому повторные касания не считаются. В этом сценарии используется объект Arch; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем сервис игроков, чтобы найти владельца персонажа.local visited={}Храним UserId игроков, уже коснувшихся детали на этом сервере.Players:GetPlayerFromCharacter(hit.Parent)Определяем игрока по модели персонажа, если это возможно.if not plr or visited[plr.UserId] then return endПропускаем посторонние детали и повторные касания того же игрока.visited[plr.UserId]=trueПомечаем первое касание, без постоянного сохранения в DataStore.print(plr.Name,"впервые коснулся",p.Name)Выводим событие только при первом касании игрока.
Запустите тест с двумя игроками: каждый должен получить только одно сообщение о первом касании. Затем проверьте поведение после перезапуска сервера. Объект упражнения: арка.
Как проверить
Один игрок вызовет сообщение лишь однажды за сессию. Проверьте объект Arch.
741Дистанция до объекта: маякСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Beacon; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: маяк.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Beacon.
742Дистанция до объекта: воротаСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Gate; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: ворота.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Gate.
743Дистанция до объекта: мостСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Bridge; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: мост.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Bridge.
744Дистанция до объекта: платформаСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Platform; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: платформа.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Platform.
745Дистанция до объекта: сфераСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Sphere; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: сфера.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Sphere.
746Дистанция до объекта: фонарьСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Lantern; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: фонарь.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Lantern.
747Дистанция до объекта: кристаллСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Crystal; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: кристалл.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Crystal.
748Дистанция до объекта: порталСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Portal; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: портал.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Portal.
749Дистанция до объекта: сундукСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Chest; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: сундук.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Chest.
750Дистанция до объекта: кнопкаСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Button; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: кнопка.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Button.
751Дистанция до объекта: лифтСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Lift; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: лифт.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Lift.
752Дистанция до объекта: дорожкаСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Road; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: дорожка.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Road.
753Дистанция до объекта: площадкаСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Pad; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: площадка.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Pad.
754Дистанция до объекта: колоннаСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Column; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: колонна.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Column.
755Дистанция до объекта: башняСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Tower; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: башня.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Tower.
756Дистанция до объекта: островСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Island; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: остров.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Island.
757Дистанция до объекта: каменьСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Stone; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: камень.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Stone.
758Дистанция до объекта: деревоСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Tree; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: дерево.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Tree.
759Дистанция до объекта: метеорСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Meteor; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: метеор.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Meteor.
760Дистанция до объекта: аркаСерверная практика / Безопасность · Средний
Что делает скрипт
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local Players=game:GetService("Players")
local p=script.Parent
while p.Parent do
for _,player in Players:GetPlayers() do
local root=player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if root and (root.Position-p.Position).Magnitude<=12 then
print(player.Name,"рядом с",p.Name)
end
end
task.wait(5)
end
Как работает этот код
Сервер измеряет расстояние между персонажем и деталью и пишет только для ближайших. В этом сценарии используется объект Arch; поменяй его имя и оформление для собственной игры.
Разбор строк
local Players=game:GetService("Players")Получаем список игроков на сервере.while p.Parent doПовторяем проверку, пока объект существует.for _,player in Players:GetPlayers() doПеребираем игроков, у каждого своя позиция.FindFirstChild("HumanoidRootPart")Ищем главную деталь персонажа; при её отсутствии пропускаем игрока.(root.Position-p.Position).Magnitude<=12Считаем расстояние в studs и сравниваем с порогом 12.task.wait(5)Проверяем раз в пять секунд, а не непрерывно.
Измените радиус с 12 до 20 studs и интервал проверки с 5 до 2 секунд. Сравни, как часто появляются сообщения, когда рядом два игрока. Объект упражнения: арка.
Как проверить
Рядом с объектом увидишь сообщение в Output. Проверьте объект Arch.
761Ограничение значения: маякСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Beacon.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Beacon; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: маяк.
Как проверить
В Output появится безопасное число 30. Проверьте объект Beacon.
762Ограничение значения: воротаСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Gate.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Gate; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: ворота.
Как проверить
В Output появится безопасное число 30. Проверьте объект Gate.
763Ограничение значения: мостСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Bridge.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Bridge; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: мост.
Как проверить
В Output появится безопасное число 30. Проверьте объект Bridge.
764Ограничение значения: платформаСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Platform.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Platform; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: платформа.
Как проверить
В Output появится безопасное число 30. Проверьте объект Platform.
765Ограничение значения: сфераСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Sphere.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Sphere; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: сфера.
Как проверить
В Output появится безопасное число 30. Проверьте объект Sphere.
766Ограничение значения: фонарьСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lantern.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Lantern; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: фонарь.
Как проверить
В Output появится безопасное число 30. Проверьте объект Lantern.
767Ограничение значения: кристаллСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Crystal.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Crystal; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: кристалл.
Как проверить
В Output появится безопасное число 30. Проверьте объект Crystal.
768Ограничение значения: порталСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Portal.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Portal; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: портал.
Как проверить
В Output появится безопасное число 30. Проверьте объект Portal.
769Ограничение значения: сундукСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Chest.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Chest; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: сундук.
Как проверить
В Output появится безопасное число 30. Проверьте объект Chest.
770Ограничение значения: кнопкаСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Button.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Button; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: кнопка.
Как проверить
В Output появится безопасное число 30. Проверьте объект Button.
771Ограничение значения: лифтСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Lift.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Lift; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: лифт.
Как проверить
В Output появится безопасное число 30. Проверьте объект Lift.
772Ограничение значения: дорожкаСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Road.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Road; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: дорожка.
Как проверить
В Output появится безопасное число 30. Проверьте объект Road.
773Ограничение значения: площадкаСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Pad.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Pad; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: площадка.
Как проверить
В Output появится безопасное число 30. Проверьте объект Pad.
774Ограничение значения: колоннаСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Column.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Column; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: колонна.
Как проверить
В Output появится безопасное число 30. Проверьте объект Column.
775Ограничение значения: башняСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tower.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Tower; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: башня.
Как проверить
В Output появится безопасное число 30. Проверьте объект Tower.
776Ограничение значения: островСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Island.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Island; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: остров.
Как проверить
В Output появится безопасное число 30. Проверьте объект Island.
777Ограничение значения: каменьСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Stone.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Stone; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: камень.
Как проверить
В Output появится безопасное число 30. Проверьте объект Stone.
778Ограничение значения: деревоСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Tree.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Tree; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: дерево.
Как проверить
В Output появится безопасное число 30. Проверьте объект Tree.
779Ограничение значения: метеорСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Meteor.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Meteor; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: метеор.
Как проверить
В Output появится безопасное число 30. Проверьте объект Meteor.
780Ограничение значения: аркаСерверная практика / Безопасность · Начальный
Что делает скрипт
math.clamp удерживает число в интервале независимо от запрошенного значения.
Куда вставить
Script внутри Part
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Создайте Part с именем, указанным в карточке; добавьте внутрь обычный Script. Назови деталь Arch.
local requested=55
local allowed=math.clamp(requested,0,30)
print(script.Parent.Name,"Ограничение:",allowed)
Как работает этот код
math.clamp удерживает число в интервале независимо от запрошенного значения. В этом сценарии используется объект Arch; поменяй его имя и оформление для собственной игры. Это вычисление без изменения характеристик игрока.
Разбор строк
local requested=55Задаём пример запрошенного значения.math.clamp(requested,0,30)Ограничиваем число диапазоном от 0 до 30: здесь получится 30.print(script.Parent.Name,"Ограничение:",allowed)Выводим вычисленный результат; скорость персонажа не меняется.
Поменяй requested на -5, затем на 10 и 50. Предскажи вывод math.clamp до запуска и сравните с Output. Объект упражнения: арка.
Как проверить
В Output появится безопасное число 30. Проверьте объект Arch.
781Подсказка действия: маякИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Beacon в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Beacon.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Beacon; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: маяк.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Beacon.
782Подсказка действия: воротаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Gate в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Gate.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Gate; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: ворота.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Gate.
783Подсказка действия: мостИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Bridge в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Bridge.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Bridge; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: мост.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Bridge.
784Подсказка действия: платформаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Platform в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Platform.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Platform; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: платформа.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Platform.
785Подсказка действия: сфераИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Sphere в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Sphere.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Sphere; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: сфера.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Sphere.
786Подсказка действия: фонарьИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Lantern в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Lantern.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Lantern; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: фонарь.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Lantern.
787Подсказка действия: кристаллИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Crystal в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Crystal.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Crystal; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: кристалл.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Crystal.
788Подсказка действия: порталИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Portal в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Portal.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Portal; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: портал.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Portal.
789Подсказка действия: сундукИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Chest в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Chest.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Chest; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: сундук.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Chest.
790Подсказка действия: кнопкаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Button в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Button.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Button; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: кнопка.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Button.
791Подсказка действия: лифтИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Lift в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Lift.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Lift; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: лифт.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Lift.
792Подсказка действия: дорожкаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Road в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Road.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Road; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: дорожка.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Road.
793Подсказка действия: площадкаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Pad в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Pad.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Pad; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: площадка.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Pad.
794Подсказка действия: колоннаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Column в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Column.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Column; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: колонна.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Column.
795Подсказка действия: башняИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Tower в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Tower.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Tower; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: башня.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Tower.
796Подсказка действия: островИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Island в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Island.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Island; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: остров.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Island.
797Подсказка действия: каменьИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Stone в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Stone.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Stone; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: камень.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Stone.
798Подсказка действия: деревоИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Tree в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Tree.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Tree; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: дерево.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Tree.
799Подсказка действия: метеорИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Meteor в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Meteor.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Meteor; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: метеор.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Meteor.
800Подсказка действия: аркаИнтерактивные объекты / Взаимодействие · Начальный
Что делает скрипт
ActionText указывает действие, ObjectText — название предмета в системной подсказке.
Куда вставить
Script внутри Part c ProximityPrompt
Пошаговая установка
- Создайте деталь Arch в Workspace и установите необходимые дочерние объекты.
- Внутри Part создайте ProximityPrompt и Script.
- Вставьте код и запустите Play. При необходимости откройте View → Output.
Внутри Part создайте ProximityPrompt и Script. Назови деталь Arch.
local p=script.Parent
local prompt=p:WaitForChild("ProximityPrompt")
prompt.ActionText="Осмотреть"
prompt.ObjectText=p.Name
prompt.HoldDuration=0.5
Как работает этот код
ActionText указывает действие, ObjectText — название предмета в системной подсказке. В этом сценарии используется объект Arch; поменяй его имя и оформление для собственной игры. Только надпись и время удержания: без события Triggered действие ещё ничего не делает.
Разбор строк
local p=script.ParentПолучаем деталь, внутри которой расположен Script.p:WaitForChild("ProximityPrompt")Ожидаем объект ProximityPrompt внутри детали.prompt.ActionText="Осмотреть"Задаём название действия, видимое игроку.prompt.ObjectText=p.NameПоказываем имя детали в подсказке.prompt.HoldDuration=0.5Устанавливаем время удержания кнопки в полсекунды; действие отдельно не обработано.
Измените ActionText на «Включить», а HoldDuration на 1 секунду. Затем добавьте обработчик prompt.Triggered, который меняет цвет детали. Объект упражнения: арка.
Как проверить
Подойдите к объекту: увидишь собственную надпись. Проверьте объект Arch.
Ничего не найдено. Попробуйте другое слово или тему.