Lua - это мощный скриптовый язык,
Через lua можно менять мир Roblox.
Можно создать игру со своим сценарием.
Lua - это мощный скриптовый язык,
Через lua можно менять мир Roblox.
Можно создать игру со своим сценарием.
Для того чтобы объект двигался необходимо знать некоторые вспомогательные объекты:
AlignPosition(Выравнивание позиции) - это компонент, который позволяет выравнивать позицию одного объекта (дочернего) относительно другого (родительского), тем самым создает движение объекта;
AlignOrienation(Выравнивание ориентации) - это компонент, который позволяет выравнивать ориентацию (поворот) одного объекта (дочернего) относительно другого (родительского), тем самым стабилизирует положение объекта и не дает ему перевернуться;
Аttachment(Присоединение) - наличие этого объекта, есть необходимое требование для работы AlignPosition и AlignOrienation.
Применение этих объектов позволяет нам создать двигающуюся платформу на базе объекта класса Part.
| Свойство | Значение | Примечание |
|---|---|---|
| Mode | OneAttachment | В режиме одного присоединения |
| Attachment0 | attachment | ссылаемся на данное присоединение |
| MaxVelocity | 15 | Скорость |
| MaxForce | 10000000 | Сила |
| Свойство | Значение | Примечание |
|---|---|---|
| Mode | OneAttachment | В режиме одного присоединения |
| Attachment0 | attachment | ссылаемся на данное присоединение |
| MaxTorque | 10000000 | Крутящий момент |
Для того, чтобы создать необходимые объекты внутри Part, необходимо создать новый объект Script внутри Part. Кнопка "+" в окне Explorer справа от Part, поменять имя объекта на Script_move (свойство Name) и добавить строчки кода:
local part = script.Parent
local attachment = Instance.new("Attachment", part)
local alignPosition = Instance.new("AlignPosition", part)
--Enum - это стандартный тип, который предоставляет множество предустановленных перечислений
alignPosition.Mode = Enum.PositionAlignmentMode.OneAttachment
--ссылка на присоединение
alignPosition.Attachment0 = attachment
--скорость
alignPosition.MaxVelocity = 15
--сила
alignPosition.MaxForce = 10000000
local alignOrienation = Instance.new("AlignOrientation", part)
--Enum - для лучшей читабельности
alignOrienation.Mode = Enum.OrientationAlignmentMode.OneAttachment
--ссылка на присоединение
alignOrienation.Attachment0 = attachment
--сила стабилизации
alignOrienation.MaxTorque = 10000000
--здесь будет код, который задает движение объекта
Запустите игру, платформа никуда не поедет, но в окне Explorer, внутри Part будут созданы необходмые объекты.
7.1 Перемещаем объект в новую точку
--здесь будет код, который задает движение объекта
alignPosition.Position = part.Position + Vector3.new(0, 5, 0)
wait(1)
7.2 Перемещаем объект по двум точкам
--здесь будет код, который задает движение объекта
alignPosition.Position = part.Position + Vector3.new(0, 5, 0)
wait(1)
alignPosition.Position = part.Position + Vector3.new(0, 10, 0)
wait(1)
7.3 Перемещаем объект по трем точкам
--здесь будет код, который задает движение объекта
alignPosition.Position = part.Position + Vector3.new(0, 5, 0)
wait(1)
alignPosition.Position = part.Position + Vector3.new(0, 10, 0)
wait(1)
alignPosition.Position = part.Position + Vector3.new(0, -15, 0)
wait(1)
7.4 Зацикливаем программу
--здесь будет код, который задает движение объекта
while true do
alignPosition.Position = part.Position + Vector3.new(0, 5, 0)
wait(1)
alignPosition.Position = part.Position + Vector3.new(0, 10, 0)
wait(1)
alignPosition.Position = part.Position + Vector3.new(0, -15, 0)
wait(1)
end
Напишите код, чтобы платформа переместила Вас на другую локацию