Accueil Login Register
🎯 Objectif du module 1. Un script, c’est quoi ? 2. Ajouter un script à un bloc Étapes : 3. Quelques exemples 3.1 Un bloc de “Lave” 3.2 Un bloc de “Téléportation” 3.3 Un bloc “Mouvant” Ce que tu sais maintenant faire Exercices

Roblox Studio - Module 3 - Créer ses premiers objets intelligents avec des scripts !

🎯 Objectif du module

Dans ce premier module, tu vas apprendre à :

👉 À la fin de ce module, tu auras déjà créé ton premier comportement “intelligent” avec un script.


1. Un script, c’est quoi ?

Un script, c’est basiquement une suite d’instructions qui sera exécutée par le jeu.

👉 On arrive dans le cœur de ce qu’est un jeu : la suite logique une fois que tu as appris à créer des interactions !

📌 À retenir Un script est une suite d’instructions / d’actions automatiques du jeu.


2. Ajouter un script à un bloc

Pour commencer, il est nécessaire de créer un nouveau script attaché à un bloc.

Étapes :

  1. Sélectionne un bloc dans le menu Explorer.
  2. Clique sur le bouton (+) à côté du nom du bloc ou clique sur Script dans le menu supérieur.

➡️ Cela doit créer un script avec la commande : print("Hello World!") pré-ajoutée.


3. Quelques exemples

Dans cette partie, on se concentre sur l’ajout d’un script et la compréhension du rapport entre le script et son Parent (le parent du script est l’objet auquel il est attribué).
Nous reviendrons par la suite sur la manière de les écrire et leur signification.


3.1 Un bloc de “Lave”

L’idée ici est de créer un bloc qui tue celui qui le touche.
Pour ce faire :

local lava = script.Parent -- Ici on récupère l'objet parent 

local function onTouch(objetQuiTouche) -- objetQuiTouche est l'objet physique qui entre en contact
    local personnage = objetQuiTouche.Parent -- Le personnage est le parent de la partie du corps qui a touché
    local humanoid = personnage:FindFirstChild("Humanoid") -- L'Humanoid contient les stats (vitesse, vie...)
    
    if humanoid then
        humanoid.Health = 0 -- On met les points de vie à 0 pour faire réapparaître le joueur
    end
end

lava.Touched:Connect(onTouch) -- On connecte l'événement au moment du toucher

Note : Pour ce bloc “spécial” comme pour les autres, veille à bien Ancrer (Anchor) le bloc afin qu’il ne se déplace pas.


3.2 Un bloc de “Téléportation”

L’idée ici est de créer un bloc qui téléporte celui qui le touche vers un autre objet.
Pour ce faire :

local depart = script.Parent
local destination = workspace:WaitForChild("arrivee_teleporteur")  

local function onTouch(blocQuiTouche)
    local personnage = blocQuiTouche.Parent 
    local rootPart = personnage:FindFirstChild("HumanoidRootPart") -- Le cœur du mouvement du personnage

    if rootPart then
        -- Téléporte le joueur 3 unités au-dessus de la destination pour éviter d'être coincé dans le sol
        rootPart.CFrame = destination.CFrame + Vector3.new(0, 3, 0)
    end
end

depart.Touched:Connect(onTouch)

3.3 Un bloc “Mouvant”

L’idée ici est de créer une plateforme qui se déplace toute seule.
Pour ce faire :

local platform = script.Parent

while true do -- Répète indéfiniment
    -- Mouvement aller
    for i = 1, 100 do -- On répète 100 fois le petit mouvement
        platform.Position = platform.Position + Vector3.new(0.1, 0, 0)
        task.wait(0.01)
    end
    
    -- Mouvement retour
    for i = 1, 100 do  
        platform.Position = platform.Position - Vector3.new(0.1, 0, 0)
        task.wait(0.01)
    end
end

Ici, on utilise le concept de boucle, qui consiste à répéter une action. L’idée est de commencer à se familiariser avec ces concepts, même si nous y reviendrons en détail plus tard.


Ce que tu sais maintenant faire

Bravo ! Tu as franchi une étape importante. Voici ce que tu as appris :


Exercices

Pour devenir un pro du scripting, essaie de réaliser ces défis dans ton monde :

  1. La Lave Sélective : Crée un bloc de lave qui ne tue pas instantanément, mais qui met la vie du joueur à 50 au lieu de 0.
  2. Le Super Saut : Crée un bloc nommé “trampoline”. En t’inspirant du script de la lave, essaie de modifier la propriété JumpPower de l’Humanoid pour que le joueur saute très haut quand il le touche.
  3. Le Parcours Mouvant : Crée une série de 3 blocs “mouvants” les uns après les autres pour faire un mini-parcours d’obstacles.
  4. L’arrivée précise : Crée un téléporteur qui t’emmène tout en haut d’une tour que tu auras construite.

👉 Astuce : N’oublie pas de bien nommer tes objets dans l’Explorer pour que tes scripts les retrouvent !