-
Notifications
You must be signed in to change notification settings - Fork 0
API UO GetArrayLength es
Русский · English · Українська · Deutsch · Français · Italiano · Español · 繁體中文 · 日本語 · 한국어
ClassicUO • Runtime API
Cuenta las casillas directas de un Array para recorrerlo y acceder a índices con seguridad.
UO.GetArrayLength(arg:Any) -> Any
-
arg— Cualquier valor BASIC. Array devuelve Length exterior; String, número, Object y Unit devuelven 0.
Integer >= 0. Array vacío y otro tipo devuelven 0: no valida el tipo. Es cantidad, no Boolean ni último índice.
- Consulta local sin servidor, movimiento de objetos ni cambios en el array. Los ejemplos usan datos fijos, no el inventario real.
- Comprueba el tipo y lee Array.Length sin recorrer ni sumar. DIM values(2) crea tres casillas 0..2, incluso sin inicializar.
- No cuenta recursivamente. Para String usar Len; para List/Dictionary su Count. UO.GetArrayLength es el nombre compatible de la misma consulta local.
Comprueba el tipo y lee Array.Length sin recorrer ni sumar. DIM values(2) crea tres casillas 0..2, incluso sin inicializar.
Comprueba el tipo y lee Array.Length sin recorrer ni sumar. DIM values(2) crea tres casillas 0..2, incluso sin inicializar.
Integer >= 0. Array vacío y otro tipo devuelven 0: no valida el tipo. Es cantidad, no Boolean ni último índice.
Código del proyecto: external/InjectionScript/src/InjectionScript/Runtime/InternalSubrutines.cs; función GetArrayLength.
No cuenta recursivamente. Para String usar Len; para List/Dictionary su Count. UO.GetArrayLength es el nombre compatible de la misma consulta local.
# Sumar cantidades
#
# Cuenta las casillas directas de un Array para recorrerlo y acceder a índices con seguridad.
#
# Integer >= 0. Array vacío y otro tipo devuelven 0: no valida el tipo. Es cantidad, no Boolean
# ni último índice.
SUB Main()
# El bucle recorre tres entradas 0..2 y devuelve 150. El bucle suma, no GetArrayLength.
# Consulta local sin servidor, movimiento de objetos ni cambios en el array. Los ejemplos usan
# datos fijos, no el inventario real.
Dim amounts(2)
amounts[0] = 50
amounts[1] = 75
amounts[2] = 25
Dim total = 0
For index = 0 To UO.GetArrayLength(amounts) - 1
total += amounts[index]
Next
Return total
END SUBExplicación de los parámetros y la ejecución:
- El bucle recorre tres entradas 0..2 y devuelve 150. El bucle suma, no GetArrayLength.
- Consulta local sin servidor, movimiento de objetos ni cambios en el array. Los ejemplos usan datos fijos, no el inventario real.
# Separar puntos y coordenadas
#
# Cuenta las casillas directas de un Array para recorrerlo y acceder a índices con seguridad.
#
# Integer >= 0. Array vacío y otro tipo devuelven 0: no valida el tipo. Es cantidad, no Boolean
# ni último índice.
SUB Main()
# Dos puntos con tres campos cada uno: resultado 2|3, no seis. No mueve al personaje.
# Consulta local sin servidor, movimiento de objetos ni cambios en el array. Los ejemplos usan
# datos fijos, no el inventario real.
Dim first(2)
first[0] = 100
first[1] = 200
first[2] = 0
Dim second(2)
second[0] = 101
second[1] = 200
second[2] = 0
Dim route(1)
route[0] = first
route[1] = second
Return CStr(UO.GetArrayLength(route)) & "|" & CStr(UO.GetArrayLength(route[0]))
END SUBExplicación de los parámetros y la ejecución:
- Dos puntos con tres campos cada uno: resultado 2|3, no seis. No mueve al personaje.
- Consulta local sin servidor, movimiento de objetos ni cambios en el array. Los ejemplos usan datos fijos, no el inventario real.
# Proteger el primer índice
#
# Cuenta las casillas directas de un Array para recorrerlo y acceder a índices con seguridad.
#
# Integer >= 0. Array vacío y otro tipo devuelven 0: no valida el tipo. Es cantidad, no Boolean
# ni último índice.
SUB Main()
# String devuelve 0: retorna no route antes del acceso. La misma comprobación admite un Array
# vacío sin distinguir ambos casos.
# Consulta local sin servidor, movimiento de objetos ni cambios en el array. Los ejemplos usan
# datos fijos, no el inventario real.
Dim route = "not an array"
If UO.GetArrayLength(route) = 0 Then
Return "no route"
End If
Return route[0]
END SUBExplicación de los parámetros y la ejecución:
- String devuelve 0: retorna no route antes del acceso. La misma comprobación admite un Array vacío sin distinguir ambos casos.
- Consulta local sin servidor, movimiento de objetos ni cambios en el array. Los ejemplos usan datos fijos, no el inventario real.
ClassicUO
Bad Newbie & Basic IDE
Найти в справочнике
Клиент и скрипты
Каталоги значений
Разработка и помощь