M MY Multiplayer: Wiki
Lado
Tipo

import

Compartido

Ejecuta un módulo de un recurso en el estado Lua de este script, una vez por estado, y da lo que devolvió. Las globales que definió el módulo pasan a ser de este script.

any import(string|table module)

Parámetros

NombreTipoDescripción
modulestring|table"@recurso/modulo", o "@recurso" para su módulo main. Una tabla de nombres de globales limita lo que se pasa a esos nombres: import { "a", "b" } "@recurso/modulo".

Retorno

Lo que devolvió el módulo, o true si no devolvió nada. Con una tabla, una función que recibe el nombre del módulo y hace el import.

Todo *.lua dentro de modules/ de un recurso es un módulo, sin nada en meta.xml. Los de modules/server/ son solo del servidor y nunca se envían, los de modules/client/ solo del cliente, y el resto es compartido. El nombre es la ruta dentro de modules/ sin .lua y sin el server/ o client/ inicial; el archivo del propio lado gana a uno compartido del mismo nombre.

En el servidor, importar un recurso que no está en marcha lo inicia antes. En el cliente, el recurso ya tiene que estar cargado en este cliente. Un segundo import del mismo módulo en el mismo estado no lo vuelve a ejecutar; solo vuelve a pasar las globales y el valor de retorno.

Ejemplo

local sql = import "@lp_database/sql"

import { "formatMoney" } "@utils"

outputDebugString(formatMoney(1500))
AtenciónLos problemas lanzan errores, no false: un recurso o módulo que no existe, un módulo del otro lado, uno que no compila, uno importado otra vez mientras se ejecuta, o un nombre de la tabla que el módulo no define.

Ver también