Metascript

Este artículo presenta cómo editar metascripts.

Descripción de la interfaz

imagen-20240719154714450

  1. Lienzo, el área de edición principal
  2. El archivo que se está editando actualmente
  3. Clasificación de elementos: haga clic en cualquier elemento para expandir la interfaz de selección de elementos.
  4. Panel de propiedades

Descripción de la clasificación de elementos

  1. Las categorías de elementos gráficos correspondientes a las regiones son:

  2. Buscar: Ingrese palabras clave para buscar gráficos.

  3. Uso común: Los gráficos establecidos como gráficos de uso común estarán aquí.

  4. Evento: Se activará cuando se cumplan las condiciones, lo cual es el comienzo de la lógica.

  5. Condiciones: se utiliza para el control del flujo del script.

  6. Comportamiento: operación real sobre entidades\datos.

  7. Módulos: algunos comportamientos específicos del módulo.

  8. Datos: Tratamiento de datos.

  9. Variables: utilice variables existentes o agregue variables.

  10. Función: Utilice o cree una función personalizada.

  11. Llamada externa: llamar a funciones personalizadas de otros scripts.

Uso de gráficos

Meta descripción

El bulto debajo del primitivo indica que se le pueden vincular otros primitivos.

imagen-20240719162414368

La depresión sobre el primitivo significa que se pueden vincular otros primitivos antes de este primitivo, y solo se ejecutará después de que se ejecuten los primitivos anteriores.

imagen-20240719162458868

Si no hay una depresión en la parte superior sino una protuberancia en la parte inferior, significa que el primitivo es el punto de inicio de un segmento lógico, generalmente un primitivo de evento.

imagen-20240719162532230

Si no hay convexidad ni concavidad arriba o abajo, significa que el primitivo es un fragmento de datos y se puede aplicar a otros primitivos.

imagen-20240719162637872

Las primitivas tendrán parámetros de entrada y salida:

Parámetros de entrada:

El parámetro de entrada está en blanco de forma predeterminada, y el tipo marcado dentro de él es el tipo del parámetro requerido.

imagen-20240719163219101

El nombre del script en este elemento también es un parámetro obligatorio, pero al utilizar el selector de recursos, puede seleccionar directamente el recurso correspondiente en el proyecto sin tener en cuenta la coincidencia de tipos.

Parámetros de salida:

Los parámetros de salida son cuadrados de colores de forma predeterminada, que se pueden arrastrar para completar los cuadros de parámetros de entrada requeridos:

imagen-20240719163455421

Uso de primitivas

Después de seleccionar el elemento que desea utilizar en la categoría, haga clic o arrástrelo al lienzo para usar el elemento correspondiente.

imagen-20240719161426471

imagen-20240719161444643

Usando el primitivo con la ranura en la parte superior, puedes unir los dos primitivos:

imagen-20240719161910607

imagen-20240719161930593

La lógica de un grupo de primitivos es siempre de arriba hacia abajo:

imagen-20241105153444063

imagen-20241105153522814

Para un grupo de elementos gráficos conectados en serie, los parámetros de entrada necesarios deben completarse con los datos adecuados para garantizar el correcto funcionamiento del script. Las variables inapropiadas generarán un error. Haga clic en el error para ver el mensaje:

imagen-20240719163823327

imagen-20240719163854644

Al arrastrar un elemento, los elementos que se encuentran debajo también se arrastrarán:

imagen-20240906110832061

imagen-20240906110844840

Mantenga presionada la tecla Ctrl y arrastre para arrastrar solo el elemento actual, y los elementos de abajo se conectarán automáticamente con los de arriba:

imagen-20240906110855565

Panel de propiedades del elemento

Haga clic en el elemento y quedará seleccionado.

imagen-20241122190755370

En el panel Inspector a la derecha, puede ver información detallada del elemento seleccionado, incluido su nombre, descripción, nombre del parámetro, tipo de parámetro, tipo de valor de retorno, descripción del valor de retorno, etc.

imagen-20241122190944942

Control de flujo

El orden de ejecución predeterminado de los metascripts es de arriba a abajo. Con frecuencia, puede ser necesario controlar el flujo de código para implementar una lógica compleja.

Consulte el siguiente enlace para obtener instrucciones detalladas:

Notas adicionales del script

Variables

Se pueden definir o modificar tres tipos de variables en la ubicación de la variable:

  1. Atributos de entidad global: atributos de componente global, compatibles con personalización. Puede obtener o modificar atributos de entidad global personalizados en cualquier script.
  2. Variables de script: variables utilizadas únicamente en el script actual, otros scripts pueden obtenerlas y modificarlas externamente.
  3. Variables locales: variables que solo se utilizan en el bloque de código actual y no son válidas fuera del bloque de código.

Propiedades de entidad global

Las propiedades de entidad global se pueden agregar a través de las propiedades del componente de entidad en la configuración del componente.

imagen-20240719170731723

imagen-20240719170751222

imagen-20240719170812335

Después de crear el atributo de entidad global, puede utilizar Obtener entidad global para obtener el atributo:

imagen-20240719170915428

Utilice la entidad global Establecer para establecer esta propiedad:

imagen-20240719170953632

Variables de script

En la categoría Variables, hay un botón Crear variable:

imagen-20240719171622005

imagen-20240719171647910

Las variables creadas de esta manera son variables de script y se utilizan para el procesamiento de datos en el script actual.

En otros scripts, puedes obtener y configurar esta variable a través de referencias externas:

imagen-20240719171819031

Tenga en cuenta que al hacer referencia a otros scripts de forma externa: al obtener y configurar, debe especificar la entidad correspondiente montada por el script referenciado.

Variables locales

La variable local primitiva le permite crear variables que solo están disponibles en el bloque de código actual:

imagen-20240719171508081

Puede cambiar el nombre de una variable haciendo doble clic en el nombre de la variable:

imagen-20240719171540482

Un bloque de código es una secuencia continua de primitivas. Cabe destacar que la primitiva “if-else” en la clasificación condicional consta de dos bloques de código por defecto. Cada “if”, “else” y “else-if” es un bloque de código independiente.

imagen-20240722192115698

imagen-20240722192055277

Funciones personalizadas

En metascripts se admiten funciones con y sin valores de retorno.

Una función con un valor de retorno no puede vincularse a otras entidades al ser llamada. La entidad que la llama es el valor de retorno.

imagen-20240719180031043

imagen-20240719180117743

Las funciones sin valores de retorno se pueden vincular a otras primitivas cuando se las llama.

imagen-20240719180039563

imagen-20240719180134147

Esperar: cuando la primitiva es una función asincrónica, se bloqueará y la siguiente primitiva se ejecutará después de que se ejecute la función asincrónica.

Ejecución: Si la primitiva es una función asincrónica, no se bloqueará y la siguiente primitiva continuará ejecutándose.

Una función asincrónica es una función que utiliza primitivas que realizan un procesamiento asincrónico, como “esperar”.

imagen-20240722105341566

Nota: No se admite el uso de primitivas asincrónicas en funciones con valores de retorno.

imagen-20240806115625031

Si necesita una función asincrónica para devolver un valor, utilice una función vacía y use una variable de salida.

imagen-20240806115658582

Independientemente de si una función personalizada tiene un valor de retorno o no, puede utilizar la variable de salida de la función debajo del primitivo de llamada para obtener la salida.

imagen-20240806113746376

imagen-20240806121329099

Eventos personalizados

Además de los diversos eventos proporcionados oficialmente, también puedes activar la lógica a través de eventos personalizados.

imagen-20250630114130051

Haga clic en el botón para realizar una gestión de eventos personalizada:

image-20250630114142109

Haga clic derecho en la lista de eventos personalizados para administrar eventos personalizados:

imagen-20250630114340277

Haga clic en el botón + para crear un nuevo evento personalizado:

imagen-20250630114208389

Aquí debe configurar el nombre del evento personalizado, el tipo de objeto al que se envía la señal y los parámetros. Solo el tipo de objeto especificado puede recibir la señal que activa el evento.

imagen-20250121181204861

Envía un evento personalizado a todos los jugadores al comienzo de su turno

imagen-20250121181429023

El jugador activa la lógica después de recibir la señal de evento personalizada

Búsqueda y uso común de elementos gráficos

Introduzca palabras clave para buscar los elementos correspondientes

imagen-20240719181845696

En la interfaz de selección de elementos, haga clic derecho en un elemento para establecerlo como un elemento usado frecuentemente y luego podrá usar rápidamente el elemento en la categoría de elementos usados frecuentemente.

imagen-20240719182033312

imagen-20240719182130450

Ejemplo

Utilicemos un ejemplo sencillo para demostrar el uso del script:

El diseño es el siguiente:

  1. A cada jugador se le entregará un M4A1 al unirse al juego.
  2. Cuando un jugador dispara, se deducirá 1 punto de salud de su propia salud cada vez que dispare.

Crear script:

  1. El requisito es global. 2. Es para cada jugador. Por lo tanto, se necesita montar un script global y para cada jugador. El servidor necesita conocer la distribución de props y la deducción de vidas, por lo que ambos se crean como scripts de servidor.

imagen-20240719183317332

imagen-20240719183333435

Editar guión:

Para 1, cada jugador que se une al juego debe emitir apoyos una vez:

imagen-20240719183627320

Para agregar propiedades primitivas, se requieren tres parámetros: el objetivo para agregar propiedades, las propiedades que se agregarán y la cantidad de propiedades que se agregarán.

El objetivo de añadir accesorios es el jugador que activó el evento al unirse a la partida. El accesorio se selecciona como M4A1 a través del administrador de recursos y la cantidad es 1.

imagen-20240719183756275

Para 2, se debe realizar una deducción de salud cada vez que se dispara un tiro:

Descubrimos que a los primitivos en realidad no se les descuenta la salud:

imagen-20240719183925677

Completar números negativos en los parámetros del primitivo de recuperación de salud no deducirá salud

Sin embargo, como atributo del jugador, la salud se puede ajustar configurando propiedades:

imagen-20240719184034769

Para establecer el atributo primitivo, es necesario establecer la entidad, establecer el atributo y el valor, y calcular varios parámetros.

La entidad cuyos atributos se establecen es el jugador actual, por lo que puede usar esta entidad y hacer doble clic en la posición del parámetro para completar rápidamente esta entidad.

imagen-20240719184236329

El valor del atributo que debe cambiarse es el valor de salud actual, seleccione el valor de salud actual.

El valor establecido es el valor de salud actual menos 1, por lo que se debe obtener la salud actual.

imagen-20240719184443713

Utilice el método de resta en la clasificación de datos para reducirlos en uno y agregar parámetros:

imagen-20240719184604249

imagen-20240719184622223

También puede utilizar la operación de establecer primitivos de atributos directamente para implementar esta lógica:

imagen-20240719184700828

Ejecute el depurador para ver los resultados:

imagen-20240719184826220

A todos se les entregó un M4A1.

imagen-20240719184935284

Disparó 8 veces y perdió 8 puntos de salud.

Al disparar, se activa cada vez que se ejecuta una orden de disparo. Disparar un arma de ráfaga antes de bajarla se considera un solo disparo y solo se puede activar una vez.