شاشات التحميل

*This content is translated using AI (Beta) and may contain errors. To view this page in English, click here.

تعرض Roblox شاشة تحميل افتراضية عندما يقوم المستخدمون بالاتصال بلعبة، ولكن يمكنك تخصيص لعبتك بشاشة تحميل مخصصة تحتوي على محتوى ثابت أو متحرك.

التنفيذ

لعرض شاشة تحميل مخصصة، يمكنك إما تصميم كائن ScreenGui مباشرة داخل LocalScript، أو يمكنك الإشارة إلى كائن ScreenGui في هيكل لعبتك. كلا الخيارين يستخدم ReplicatedFirst، حيث أن هذه الخدمة تقوم بتكرار الكائنات إلى العملاء قبل أي شيء آخر يتم تكراره. وهذا يضمن أن شاشة التحميل الخاصة بك هي أول شيء يراه المستخدمون عندما يدخلون إلى لعبتك.

من السكربت

لتصميم وعرض شاشة تحميل مخصصة بالكامل من LocalScript:

  1. في ReplicatedFirst، أنشئ LocalScript.
  2. الصق في نموذج الكود التالي لإنشاء وتخصيص كائن ScreenGui. يمكنك تعديل الكود التالي بقيمك الخاصة لإنشاء تصميمك.
شاشة تحميل تم إنشاؤها بواسطة السكربت

local Players = game:GetService("Players")
local ReplicatedFirst = game:GetService("ReplicatedFirst")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local loadingScreen = Instance.new("ScreenGui")
loadingScreen.IgnoreGuiInset = true
loadingScreen.Parent = playerGui
-- استبدل قيم ScreenGui بقيمك الخاصة
local textLabel = Instance.new("TextLabel")
textLabel.Size = UDim2.new(1, 0, 1, 0)
textLabel.BackgroundColor3 = Color3.fromRGB(0, 20, 40)
textLabel.Font = Enum.Font.DenkOne
textLabel.TextColor3 = Color3.new(0.8, 0.8, 0.8)
textLabel.Text = "جارٍ التحميل"
textLabel.TextSize = 32
textLabel.Parent = loadingScreen
-- أزل شاشة التحميل الافتراضية
ReplicatedFirst:RemoveDefaultLoadingScreen()
task.wait(5) -- فرض ظهور شاشة التحميل المخصصة لوقت حد أدنى
if not game:IsLoaded() then
game.Loaded:Wait()
end
loadingScreen:Destroy()

من واجهة مستخدم موجودة

بدلاً من إنشاء شاشة تحميل ScreenGui بالكامل من خلال LocalScript، يمكنك أيضًا الإشارة إلى ScreenGui موجود في هيكل لعبتك. تأكد من أن لعبتك تتضمن ScreenGui المشار إليه داخل ReplicatedFirst وأن ScreenGui يتضمن عناصر واجهة مستخدم مثل TextLabels و ImageLabels.

لتوضيح هذه العملية، يشير LocalScript التالي إلى ScreenGui باسم LoadingScreen داخل ReplicatedFirst، ثم يزيل شاشة التحميل الافتراضية حتى تكون شاشة التحميل الوحيدة التي يمكن للاعب رؤيتها هي شاشتك المخصصة.

الإشارة إلى شاشة تحميل موجودة

local Players = game:GetService("Players")
local ReplicatedFirst = game:GetService("ReplicatedFirst")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local loadingScreen = ReplicatedFirst:FindFirstChild("LoadingScreen")
if loadingScreen then
loadingScreen.IgnoreGuiInset = true
loadingScreen.Parent = playerGui
-- أزل شاشة التحميل الافتراضية
ReplicatedFirst:RemoveDefaultLoadingScreen()
task.wait(5) -- فرض ظهور الشاشة لعدد معين من الثواني
if not game:IsLoaded() then
game.Loaded:Wait()
end
loadingScreen:Destroy()
end

إضافة الرسوم المتحركة

بالإضافة إلى شاشات التحميل الثابتة المخصصة، يمكنك إضافة رسوم متحركة لتعزيز شاشة التحميل وإظهار تقدم التحميل. أسهل طريقة للقيام بذلك هي إنشاء عنصر واجهة مستخدم، مثل TextLabel أو ImageLabel، ثم تحريكه باستخدام TweenService. على سبيل المثال، ينشئ نموذج الكود التالي ScreenGui جديدة مع كائن فرعي ImageLabel، ويزيل شاشة التحميل الافتراضية، ثم يقوم TweenService بإجراء تلاشي وتدوير العناصر المركزية حتى يتم تحميل اللعبة.

شاشة تحميل تم إنشاؤها بواسطة السكربت (متحركة)

local Players = game:GetService("Players")
local ReplicatedFirst = game:GetService("ReplicatedFirst")
local TweenService = game:GetService("TweenService")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local loadingScreen = Instance.new("ScreenGui")
loadingScreen.IgnoreGuiInset = true
loadingScreen.Parent = playerGui
local textLabel = Instance.new("TextLabel")
textLabel.Size = UDim2.new(1, 0, 1, 0)
textLabel.BackgroundColor3 = Color3.fromRGB(0, 20, 40)
textLabel.Font = Enum.Font.DenkOne
textLabel.TextColor3 = Color3.new(0.8, 0.8, 0.8)
textLabel.Text = "جارٍ التحميل"
textLabel.TextSize = 32
textLabel.TextTransparency = 1
textLabel.Parent = loadingScreen
local loadingRing = Instance.new("ImageLabel")
loadingRing.Size = UDim2.new(0, 256, 0, 256)
loadingRing.BackgroundTransparency = 1
loadingRing.Image = "rbxassetid://4965945816"
loadingRing.AnchorPoint = Vector2.new(0.5, 0.5)
loadingRing.Position = UDim2.new(0.5, 0, 0.5, 0)
loadingRing.ImageTransparency = 1
loadingRing.Parent = loadingScreen
-- أزل شاشة التحميل الافتراضية
ReplicatedFirst:RemoveDefaultLoadingScreen()
-- بدء وتطبيق تأثيرات التلاشي
local fadeTweenInfo = TweenInfo.new(1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out, 0, false, 2)
local fadeTween1 = TweenService:Create(textLabel, fadeTweenInfo, {TextTransparency = 0})
local fadeTween2 = TweenService:Create(loadingRing, fadeTweenInfo, {ImageTransparency = 0})
fadeTween1:Play()
fadeTween2:Play()
-- بدء وتطبيق تأثير الدوران
local tweenInfo = TweenInfo.new(4, Enum.EasingStyle.Linear, Enum.EasingDirection.In, -1)
local tween = TweenService:Create(loadingRing, tweenInfo, {Rotation = 360})
tween:Play()
task.wait(5) -- فرض ظهور الشاشة لعدد معين من الثواني
if not game:IsLoaded() then
game.Loaded:Wait()
end
loadingScreen:Destroy()
©2026 شركة Roblox Corporation. تُعد منصّة Roblox، وشعار Roblox وشعار "توسيع حدود المخيلة"، من ضمن علاماتنا التجارية المسجّلة وغير المسجّلة في الولايات المتحدة وبلدان أخرى.