Menu
CoddyTech

Écrire une méthode

Fait partie de la section Les bases du scripting dans Unity du Journey Unity de Coddy. Leçon 39 sur 85.

Tu appelles des méthodes depuis un certain temps : Debug.Log, PlaceCrate, et Unity appelle tes méthodes Start() et Update(). Écrire tes propres méthodes fonctionne de la même façon :

void Shout(string word)
{
    Debug.Log(word + "!");
}

void indique que la méthode effectue une tâche et ne renvoie rien. Shout est son nom. Entre les parenthèses se trouvent ses paramètres : des variables que l’appelant renseigne. Shout("Hello"); exécute la méthode avec word contenant "Hello", et Shout("Run"); l’exécute à nouveau avec "Run".

Une méthode sans paramètre a tout de même besoin de ses parenthèses vides : void Jump(), appelée ainsi : Jump();. Une méthode peut prendre plusieurs paramètres, séparés par des virgules : void PlaceTile(int column, int row).

challenge icon

Défi

Moyen

Donne un paramètre à PlaceLamp pour que chaque lampe soit à son propre emplacement.

  1. Modifie la première ligne de la méthode en void PlaceLamp(float x), et sa position en new Vector3(x, 1, 0).
  2. Dans Start(), modifie les appels en PlaceLamp(-3);, PlaceLamp(0); et PlaceLamp(3);.

Appuie sur « Jouer » : trois lampes sont alignées, espacées de 3 unités. Puis appuie sur « Vérifier ».

Essayez vous-même

using UnityEngine;

public class LampRow : MonoBehaviour
{
    void Start()
    {
        PlaceLamp();
        PlaceLamp();
        PlaceLamp();
    }

    void PlaceLamp()
    {
        GameObject lamp = GameObject.CreatePrimitive(PrimitiveType.Cylinder);
        lamp.name = "Lamp";
        lamp.transform.position = new Vector3(0, 1, 0);
        lamp.transform.localScale = new Vector3(0.3f, 1, 0.3f);
        lamp.GetComponent<Renderer>().material.color = new Color(0.3f, 0.3f, 0.35f);
    }
}

Toutes les leçons de Les bases du scripting dans Unity

Entraînez-vous par vous-même : Playground Unity