
🎨 1. Створення UI елементів (в Explorer):
-
У
StarterGuiствориScreenGui -
Всередині
ScreenGuiствориFrame– це буде фон прогрес-бара -
Всередині цього
Frameствори ще одинFrame– це буде заповнення прогресу
📌 Назви для зручності:
-
Frame(фон) —ProgressBarBackground -
внутрішній
Frame—ProgressFill
🔧 Налаштуй стилі:
-
У
ProgressBarBackgroundзадай розміри, наприклад:Size = {0.4, 0}, {0.05, 0}(тобто 40% ширини екрана, 5% висоти) -
ProgressFillзадайAnchorPoint = (0,0)іPosition = (0,0) -
Колір заливки: яскравіший, наприклад, зелений
-
У
ProgressFillпоставSize = {0, 0}, {1, 0}– ширина буде змінюватися динамічно
🧠 2. Скрипт для зміни прогресу:
Додай LocalScript в ScreenGui або в сам прогрес-бар.
🔁 Альтернатива: Прогрес за дією (наприклад, збирання предметів)
Якщо ти хочеш, щоб прогрес заповнювався коли гравець щось збирає — просто обчислюй progress як:
І оновлюй fill.Size = UDim2.new(progress, 0, 1, 0) щоразу, коли значення змінюється.
🔄 Додамо :WaitForChild замість FindFirstChild, щоб дочекатися появи об’єктів:
✅ Що ми зробили:
-
WaitForChildгарантує, щоleaderstatsіCollectedточно завантажаться, перш ніж ми до них звернемося. -
collected.Changed:Connect(...)означає, що прогрес оновлюється автоматично, коли значення змінюється. -
Викликаємо
updateProgress()один раз спочатку, щоб відразу показати актуальний прогрес.