Dans ce premier module, tu vas apprendre Ă :
👉 À la fin de ce module, tu auras déjà terminé ton premier niveau sur roblox.
La première étape consiste à créer l’objet physique que le joueur doit toucher.
C’est l’interface qui apparaîtra sur l’écran du joueur.
fin.fin, ajoutez un Frame (le fond du menu). Ajustez sa taille pour qu’il couvre le centre de l’écran.ReplayButton et écrivez “Rejouer” dessus.fin et, dans les propriétés, décochez la case Enabled. On veut qu’il soit invisible au début.Ce script détecte quand un joueur touche la plateforme.
local drapeau = script.Parent
local joueursOuverts = {}
function onTouch(objetQuiTouche)
local joueur = game.Players:GetPlayerFromCharacter(objetQuiTouche.Parent)
if joueur and not joueursOuverts[joueur.UserId] then
joueursOuverts[joueur.UserId] = true
joueur.PlayerGui.fin.Enabled = false
joueur.PlayerGui.fin.Enabled = true
task.wait(2) -- Délai avant de pouvoir re-gagner
joueursOuverts[joueur.UserId] = nil
end
end
drapeau.Touched:Connect(onTouch)
Maintenant, il faut que le bouton serve à quelque chose (téléporter le joueur au début).
ReplayButton) créé précédemment.local bouton = script.Parent
local fenetre = bouton.Parent.Parent
function onClick()
local joueur = game.Players.LocalPlayer
local personnage = joueur.Character
if personnage and personnage:FindFirstChild("HumanoidRootPart") then
local spawn = workspace:FindFirstChild("SpawnLocation")
if spawn then
personnage.HumanoidRootPart.CFrame = spawn.CFrame + Vector3.new(0, 3, 0)
end
end
-- On cache Ă nouveau le menu
fenetre.Enabled = false
end
bouton.MouseButton1Click:Connect(onClick)
Maintenant que tu peux rejouer ton premier niveau, pourquoi ne pas en créer un autre ?
Niveau 2)local bouton = script.Parent
local fenetre = bouton.Parent.Parent
function onClick()
local joueur = game.Players.LocalPlayer
local personnage = joueur.Character
if personnage and personnage:FindFirstChild("HumanoidRootPart") then
local spawn = workspace:FindFirstChild("SpawnLevel2")
if spawn then
personnage.HumanoidRootPart.CFrame = spawn.CFrame + Vector3.new(0, 3, 0)
end
end
-- On cache Ă nouveau le menu
fenetre.Enabled = false
end
bouton.MouseButton1Click:Connect(onClick)
Comme pour l’instant tu as créé des volumes simples comme des cubes et des spheres, cette fois ci tu vas créer un volume complexe (Model):
task.wait(3) pour faire “attendre” 3 secondes à ton script)Dans le script qui suit les parties à compléter sont designées par : ___
part = script.___
function onTouch(___)
if objetQuiTouche.Parent:FindFirstChild("Humanoid") then
part.Transparency = 1
part.CanCollide = ___ -- true pour "vrai" et false pour "faux"
end
end
part.Touched:Connect(onTouch)
Dans le script qui suit les parties à compléter sont designées par : ___
Le script est Ă placer dans le model (au mĂŞme niveau que les differentes parts qui le compose)
local model = script.Parent
local vitesse = 0.1
local temps = 200
local direction = Vector3.new(1, 0, 0) -- Indique la direction du déplacement
while true do
for i = 1, temps do
local position = model:GetPivot() -- Recupere l'origine du model (le point de position commun pour tous les parts)
model:PivotTo(position + direction * ___)
task.wait(0.01)
end
for i = 1, ___ do
local position = model:GetPivot()
model:PivotTo(___ - direction * vitesse)
task.wait(0.01)
end
end