Padres e hijos

*Este contenido se traduce usando la IA (Beta) y puede contener errores. Para ver esta página en inglés, haz clic en aquí.

En lugar de ejecutar scripts desde ServerScriptService, es posible que desee adjuntar un script a la parte.Por instancia, usar un script para convertir una parte en una trampa o hacer que una parte otorgue puntos al jugador cuando la toque.Al comprender cómo los scripts y las partes están relacionados en la jerarquía, puedes crear un script que funcione automáticamente sin nombrar qué parte usar.

Para hacer esto, debes entender relaciones padre-hijo .

Los padres y los hijos son formas de describir la jerarquía entre diferentes objetos.Cada vez que has agregado una nueva parte al espacio de trabajo, el espacio de trabajo ha sido el objeto padre y la parte se convirtió en un objeto hijo.Cuando agregaste un script a ServerScriptService, ServerScriptService era el padre y el script era un nuevo hijo.

Configura el proyecto y el script

Para demostrar las relaciones padre e hijo, comenzarás con una sola parte que cambia de color y luego duplicarás el script en múltiples partes.

  1. Crea una nueva parte y renombrala. Esta lección usará ColorPart.

  2. Haga clic con el botón derecho en la parte y seleccione Insertar objeto > Nuevo script . Renombra el script ColorChanger.

  3. Copia y pega el código a continuación en ColorChanger. Esta versión del código es la misma que la que usabas antes. Asigna una parte específica a una variable.

    Cambia el color de ColorPart

    local Workspace = game:GetService("Workspace")
    local colorPart = Workspace.ColorPart
    colorPart.Color = Color3.fromRGB(50, 240, 255)

4.Prueba y comprueba que la parte cambia de color como desees.

Relaciones padre-hijo

Un padre es cualquier cosa con objetos, como scripts o partes, que se anexan debajo de él .Cualquier cosa bajo el padre es sus hijos .En el ejemplo a continuación, ColorPart es el padre y ColorChanger es el hijo.

Con el script actual, solo puedes cambiar el color de una parte única llamada ColorPart.Para cambiar el color de cualquier parte, puedes diseñar el código para que funcione en el objeto padre del script, sea cual sea su nombre.El código script.Parent , subirá la jerarquía y encontrará el objeto al que se adjunta el script.

Usa el script.Parent

script.Parent se puede asignar a una variable como cualquier otro valor con el símbolo =.

  1. En el script, reemplaza la parte nombrada con script.Parent. Comprueba tu código a continuación.

    Cambia el color del objeto padre

    local colorPart = script.Parent
    colorPart.Color = Color3.fromRGB(50, 240, 255)

Probar piezas reutilizables

Ahora que la variable se referirá a cualquier parte a la que se adjunte el script, puedes hacer tantas copias como quieras.

  1. Haga clic derecho en la parte de color y seleccione Duplicar, o use la tecla rápida CtrlD (D).Crea al menos tres partes totales.

  2. Ejecuta el juego para comprobar que todas las partes cambian de color.

Resumen

En lugar de referirse siempre directamente a partes por nombre y ubicación, se puede utilizar script.Parent como alternativa.Ese código agarrará al padre o objeto al que se adjunta el script, por lo que permitirá que el script realice modificaciones en él.El uso de código como script.Parent vendrá bien para hacer que tu código sea reutilizable.Una desventaja para recordar es que ahora tienes múltiples scripts que requieren actualización si quieres cambiar el código.