buffer

Mostrar obsoleto

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

Un tamper es un objeto que representa un bloque de memoria de tamaño fijo y mutable. La biblioteca de tamper proporciona funciones para la creación y manipulación de objetos de tamper, proporcionando todas sus funciones dentro de la variable global buffer .

El tamano es una estructura de almacenamiento de datos binarios de nivel bajo que reemplaza el uso de string.pack() y string.unpack() . Los casos de uso incluyen la lectura y escritura de formatos binarios existentes, trabajar con datos en una forma más compacta, serializar a formatos binarios personalizados y general trabajar con tipos de memoria nativos como números de longitud fijos y flotas.

Cuando se pasa a través de las API de Roblox, incluida la enviar de un buffer a través de eventos personalizados, el ID del objeto de buffer no se mantiene y el objetivo recibirá una copia. Como con otras limitaciones, el mismo objeto de buffer no se puede usar desde múltiples scripts Actor (Parallel Luau).

Muchas de las funciones aceptan un desplazamiento en bytes desde el comienzo del tamano de memoria. El desplazamiento de 0 desde el comienzo del tamano de memoria accede al primer bytes. Todos los desplazamientos, contados y tamaños deben ser números enteros positivos. Si los bytes que son accedidos por cualquier operación de lectura o escritura están fuera del tamano de memoria, se produce un error.

Los métodos read y write que trabajan con números enteros y flotantes usan la codificación little-endian.

Resumen

Funciones

Funciones

create

Crea un tamano de solicitud con todos los bytes inicializados a 0. El límite de tamaño es 1 GiB, o 1,073,741,824 bytes. Tenga en cuenta que mayores tamanos pueden fallar al asignar si el dispositivo está bajo de memoria.

Parámetros

size: number

Tamaño del tamano de버ф.

Devuelve

fromstring

Crea un tamano inicializado para el contenido de la cadena. El tamaño del tamano es la longitud de la cadena.

Parámetros

str: string

Devuelve

tostring

Devuelve los datos del tamano como una cadena.

Parámetros

Devuelve

Devuelve el tamaño del tamano en bytes.

Parámetros

Devuelve

readi8

Lee los datos del tamano de memoria al reinterpretar los bytes en el desplazamiento como un número de signo de 8 bits y convirtiéndolo en un número.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

Devuelve

readu8

Lee los datos del tamano de memoria al reinterpretar los bytes en el desplazamiento como un número desfirmado de 8 bits y convertirlo en un número.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

Devuelve

readi16

Lee los datos del tamano de memoria al reinterpretar los bytes en el desplazamiento como un número de signo de 16 bits y convertirlo en un número.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

Devuelve

readu16

Lee los datos del tamano de memoria al reinterpretar los bytes en el desplazamiento como un número de signo de 16 bits y convertirlo en un número.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

Devuelve

readi32

Lee los datos del tamano de memoria al reinterpretar los bytes en el desplazamiento como un número de signo de 32 bits y convertirlo en un número.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

Devuelve

readu32

Lee los datos del tamano de memoria al reinterpretar los bytes en el desplazamiento como un número desfirmado de 32 bits y convertirlos en un número.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

Devuelve

readf32

Lee los datos del tamano al reinterpretar los bytes en el desplazamiento como un valor de punto flotante de 32 bits y convertirlos en un número. Si el valor de punto flotante coincide con cualquier patrón de bit que representa NaN (no un número), el valor devuelto puede ser convertido en una representación de punto de datos diferente.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

Devuelve

readf64

Lee los datos del tamano al reinterpretar los bytes en el desplazamiento como un valor de punto flotante de 64 bits y convertirlos en un número. Si el valor de punto flotante coincide con cualquier patrón de bit que representa NaN (no un número), el valor devuelto puede ser convertido en una representación de punto de NaN diferente.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

Devuelve

writei8

void

Escribe datos en el tamano al convertir el número en un número parado a 8 bits y escribir un solo bit.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

value: number

Un número entero en el rango [-128, 127].

Devuelve

void

writeu8

void

Escribe datos en el tamano al convertir el número en un número parcialmente signado de 8 bits y escribir un solo bit.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

value: number

Un número entero en el rango [0, 255].

Devuelve

void

writei16

void

Escribe datos en el tamano al convertir el número en un número entero de 16 bits y reinterpretarlo como unidades individuales.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

value: number

Un número entero en el rango [-32,768, 32,767].

Devuelve

void

writeu16

void

Escribe datos en el tamano al convertir el número en un número entero de 16 bits y reinterpretarlo como unidades individuales.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

value: number

Un número entero en el rango [0, 65,536].

Devuelve

void

writei32

void

Escribe datos en el tamano al convertir el número en un número entero de 32 bits y reinterpretarlo como unidades individuales.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

value: number

Un número entero en el rango [-2,147,483,648, 2,147,483,647].

Devuelve

void

writeu32

void

Escribe datos en el tamano al convertir el número en un número entero de 32 bits y reinterpretarlo como unidades individuales.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

value: number

Un número entero en el rango [0, 4,294,967,295].

Devuelve

void

writef32

void

Escribe datos en el tamano al convertir el número en un valor de punto flotante de 32 bits y reinterpretarlo como unidades individuales.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

value: number

Un solo punto flotante de precisión.

Devuelve

void

writef64

void

Escribe datos en el tamano al convertir el número en un valor de punto flotante de 64 bits y reinterpretarlo como unidades individuales.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

value: number

Un par de números de punto flotante de precisión doble.

Devuelve

void

readstring

Lee una cadena de longitud count de la memoria almacenamiento en el modo especificado offset .

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

count: number

Longitud para leído.

Devuelve

writestring

void

Escribe datos de una cadena en el tamano de memoria especificado offset . Si se especifica un tamano de memoria opcional count, solo se toman count bytes de la cadena.

Parámetros

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

value: string

Datos para escribir.

count: number

Número de bytes para tomar de la cadena. Este valor no puede ser mayor que la longitud de la cadena.

Devuelve

void

copy

void

Copia count bytes desde source comenzando desde el desplazamiento sourceOffset hasta el desplazamiento 1> target1> en el desplazamiento 4> targetOffset4> .

Es posible que source y target sean idénticas. Copiar una región conectada dentro del mismo buffer actúa como si la región de origen se copiara en un buffer temporal y luego ese buffer se copia sobre el objetivo.

Parámetros

target: buffer

Búfer para copiar datos.

targetOffset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

source: buffer

Puffer para tomar los datos.

sourceOffset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

Valor predeterminado: 0
count: number

Número de bytes para copiar. Si se omite, toda la información de source comienza con sourceOffset .

Devuelve

void

fill

void

Establece count bytes en el tamano de inicio del buffer comenzando en el offset especificado para value .

Parámetros

Búfer para escribir los datos.

offset: number

Desplazarse desde el comienzo de la memoria del tamano, empezando por 0.

value: number

Un número entero en el rango [0, 255].

count: number

Número de bytes para escribir. Si se omitió, todos los bytes después del desplazamiento especificado se establecer.

Devuelve

void