1. Введение в Luau: переменные, типы данных и среда разработки
Введение в Luau: переменные, типы данных и среда разработки
Добро пожаловать в курс «Программирование на Luau в Roblox Studio: от новичка до разработчика». Это первая и самая важная статья, которая заложит фундамент ваших будущих навыков. Если вы мечтаете создавать свои собственные игровые миры, сложные механики или просто хотите понять, как работает магия внутри Roblox, вы попали по адресу.
В этой статье мы не будем сразу строить сложные системы. Мы начнем с основ: разберемся, где мы пишем код, на каком языке мы говорим с компьютером и как заставить его запоминать информацию.
Что такое Luau и почему не просто Lua?
Roblox использует язык программирования Luau (читается как «Лу-ау»). Это специальная версия языка Lua 5.1, которую инженеры Roblox значительно улучшили и ускорили.
Почему именно Luau?
Для вас как для новичка разница пока не будет заметна, но знайте: вы изучаете современный, мощный инструмент, на котором создаются игры с миллионами посещений.
Среда разработки: Знакомство с Roblox Studio
Прежде чем написать первую строчку кода, нам нужно подготовить рабочее место. Roblox Studio — это ваш верстак, мольберт и лаборатория в одном лице.
!Схема основных рабочих окон Roblox Studio: Explorer, Properties, редактор кода и окно вывода.
Основные окна для программиста
Чтобы писать код комфортно, убедитесь, что у вас открыты следующие окна (если их нет, перейдите во вкладку View в верхнем меню и включите их):
* Explorer (Проводник): Это дерево всех объектов вашей игры. Здесь лежат детали конструктора, звуки, свет и, конечно же, ваши скрипты. * Properties (Свойства): Окно настроек. Здесь можно менять цвет деталей, прозрачность и другие параметры без кода. * Output (Вывод): Самое важное окно для программиста. Именно сюда скрипт будет писать сообщения и, что более важно, здесь будут появляться ошибки (красный текст), если что-то пойдет не так.
Создание первого скрипта
В Roblox существует три типа скриптов, но сегодня мы сосредоточимся на обычном Script (серверный скрипт). Он выполняется на сервере игры.
Script и выберите его.Поздравляю, вы создали свой первый файл с кодом! Обычно он автоматически открывается, и вы видите строчку:
Эта команда делает простую вещь: она выводит текст «Hello world!» в окно Output. Нажмите кнопку Run (или Play) в верхнем меню, и посмотрите в окно Output. Вы увидите это сообщение.
Переменные: Коробки для данных
Представьте, что вы переезжаете. Чтобы не потерять вещи, вы складываете их в коробки и подписываете маркером: «Книги», «Посуда», «Одежда». В программировании переменная — это и есть такая коробка.
!Визуализация переменной как коробки с именем (названием переменной) и содержимым (значением).
Синтаксис создания переменной
В Luau переменная создается с помощью ключевого слова local. Это говорит компьютеру: «Создай локальную переменную здесь и сейчас».
Разберем эту конструкцию:
* local — команда создания переменной.
* myName — имя переменной (то, что мы пишем маркером на коробке).
* = — знак присваивания. Это не математическое равенство, это команда «положить значение справа в коробку слева».
* "Alex" — значение (то, что лежит внутри коробки).
Правила именования
Имя переменной может быть почти любым, но есть правила:
my name — ошибка).1stPlayer — ошибка).money$ — ошибка).playerHealth, walkSpeed, isGameStarted.Типы данных: Что лежит в коробке?
В реальной жизни в коробку можно положить ботинки или кота. В Luau в переменную можно положить данные разных типов. Компьютеру важно знать, что именно он хранит, чтобы не пытаться, например, умножить слово на число.
Рассмотрим четыре базовых типа данных, с которыми вы будете работать 90% времени.
1. Числа (Number)
Это любые числа: целые, дробные, положительные или отрицательные.
С числами можно производить арифметические операции:
2. Строки (String)
Это текст. Строки всегда должны быть обернуты в кавычки (двойные " или одинарные '). Если вы забудете кавычки, Luau подумает, что это имя переменной, и выдаст ошибку.
Строки можно склеивать друг с другом. Это называется конкатенация. Для этого используются две точки ...
3. Булевы значения (Boolean)
Это логический тип, который может иметь только два значения: истина (true) или ложь (false). Это как выключатель света: он либо включен, либо выключен.
Этот тип данных критически важен для создания логики (например, «ЕСЛИ у игрока есть ключ, ТО открыть дверь»).
4. Nil (Ничто)
Это специальный тип данных, который означает «отсутствие значения». Если переменная пуста или вы удалили объект, он становится nil.
Динамическая типизация
Luau — язык с динамической типизацией. Это значит, что одна и та же переменная может сначала хранить число, а потом — строку. Вам не нужно заранее объявлять тип.
> Важно: Хотя так делать можно, старайтесь не менять тип данных в одной переменной без веской причины. Это может запутать вас в будущем.
Комментарии: Заметки на полях
Вы, наверное, заметили в примерах выше текст после символов --. Это комментарии. Компьютер полностью игнорирует всё, что написано после двух дефисов в той же строке.
Комментарии нужны программистам, чтобы: * Объяснять сложный код. * Временно отключать куски кода. * Оставлять заметки для себя или команды.
Практическое задание
Попробуйте прямо сейчас в Roblox Studio:
ServerScriptService.myName и запишите в неё своё имя.myAge и запишите туда свой возраст.print, чтобы вывести фразу: «Меня зовут [Имя] и мне [Возраст] лет» (используйте конкатенацию ..).Пример решения:
Заключение
Сегодня вы сделали первый шаг в мир Luau. Мы изучили:
* Как создавать переменные (local name = value).
* Какие бывают данные (числа, строки, булевы значения).
* Как выводить информацию в Output (print).
* Как оставлять комментарии (--).
В следующей статье мы научимся управлять потоком выполнения программы: заставим код принимать решения с помощью условных операторов if и else. Готовьтесь, будет интересно!