Skip to content

ES Runtime Helpers D

Codex edited this page Oct 12, 2026 · 1 revision

uk · ru · en · de · fr · it · es · zh-tw · ja · ko

Funciones auxiliares D

Código interno de implementación; no es un script independiente.

ClassicUO.CSharp.CSharpCallbacks.Start

Comprueba las condiciones siguientes y devuelve el resultado indicado.

Parámetros: name, arguments

Origen: Project_Full/src/ClassicUO.CSharp/CSharpCallbacks.cs:175.

public bool Start(string name, params string[] arguments)

Resultado: bool.

Resultado: false; true.

Llamadas: Verify, (name ?? "").Trim, routines.TryGetValue, nameof, active.Any, active.Add, arguments.Clone, Task.Run.

Condiciones: !routines.TryGetValue(name, out routine!); active.Any(call => call.Name.Equals(name, StringComparison.OrdinalIgnoreCase)).

Llamadas:

Código interno de implementación; no es un script independiente.

public bool Start(string name, params string[] arguments)
    {
        Verify();
        name = (name ?? "").Trim();
        Routine routine;
        Invocation invocation;
        lock (sync)
        {
            Verify();
            if (!routines.TryGetValue(name, out routine!))
                throw new ArgumentException($"Register the C# routine '{name}' in this execution before calling it.", nameof(name));
            // Cancellation requests do not complete arbitrary user awaits or
            // finally blocks. Keep the name reserved until the worker's finally
            // removes its invocation, even though IsRunning already reports 0.
            if (active.Any(call => call.Name.Equals(name, StringComparison.OrdinalIgnoreCase))) return false;
            invocation = new Invocation(name, token);
            active.Add(invocation);
        }
        var values = (string[])arguments.Clone();
        _ = Task.Run(async () =>
        {
            using var context = BindWorker();
            currentInvocation.Value = invocation;
            try
            {
                Verify(); checkpoint(); Verify();
                await routine.Handler(values).ConfigureAwait(false);
                Verify();
            }
            catch (OperationCanceledException) when (token.IsCancellationRequested || invocation.Cancellation.IsCancellationRequested || IsDisposed) { }
            catch (Exception error) { if (!IsDisposed) failures.Enqueue(new(name, error)); }
            finally
            {
                currentInvocation.Value = null;
                lock (sync) active.Remove(invocation);
                invocation.Cancellation.Cancel();
                invocation.Cancellation.Dispose();
            }
        });
        return true;
    }

ClassicUO.Configuration.ProfileManager.UnLoadProfile

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Configuration/ProfileManager.cs:554.

public static void UnLoadProfile()

Resultado: void.

Llamadas: ClientFontManager.Invalidate.

Llamadas:

Código interno de implementación; no es un script independiente.

public static void UnLoadProfile()

        {

            GlobalProfile = null;

            CurrentProfile = null;

            ProfilePath = null;

            CurrentCharacterSerial = 0;

            CurrentServerIdentity = null;

            ClientFontManager.Invalidate();

        }

ClassicUO.Game.Data.StaticFilters.IsRock

Devuelve el valor de la expresión siguiente.

Parámetros: g

Origen: Project_Full/src/ClassicUO.Client/Game/Data/StaticFilters.cs:276.

public static bool IsRock(ushort g)

Resultado: bool.

Resultado: true; g >= 6001 && g <= 6012.

Código interno de implementación; no es un script independiente.

[MethodImpl(MethodImplOptions.AggressiveInlining)]
        public static bool IsRock(ushort g)
        {
            switch (g)
            {
                case 4945:
                case 4948:
                case 4950:
                case 4953:
                case 4955:
                case 4958:
                case 4959:
                case 4960:
                case 4962: return true;

                default: return g >= 6001 && g <= 6012;
            }
        }

ClassicUO.Game.GameActions.NormalizeLocalDisplayFont

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: text, font, unicode

Origen: Project_Full/src/ClassicUO.Client/Game/GameActions.cs:462.

private static void NormalizeLocalDisplayFont(string text, ref byte font, ref bool unicode)

Resultado: void.

Llamadas: ResolveLocalDisplayFont.

Condiciones: fonts == null.

Código interno de implementación; no es un script independiente.

private static void NormalizeLocalDisplayFont(string text, ref byte font, ref bool unicode)
        {
            var fonts = Client.UO?.FileManager?.Fonts;

            if (fonts == null)
                return;

            byte preferredFont = ProfileManager.CurrentProfile?.ChatFont ?? 0;
            (font, unicode) = ResolveLocalDisplayFont(
                text,
                font,
                unicode,
                preferredFont,
                fonts.UnicodeFontExists,
                fonts.FontCount
            );
        }

ClassicUO.Game.GameActions.RequestProfile

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: serial

Origen: Project_Full/src/ClassicUO.Client/Game/GameActions.cs:724.

public static void RequestProfile(uint serial)

Resultado: void.

Llamadas: Socket.Send_ProfileRequest.

Código interno de implementación; no es un script independiente.

public static void RequestProfile(uint serial)
        {
            Socket.Send_ProfileRequest(serial);
        }

ClassicUO.Game.GameActions.SendAbility

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: world, idx, primary

Origen: Project_Full/src/ClassicUO.Client/Game/GameActions.cs:918.

private static void SendAbility(World world, byte idx, bool primary)

Resultado: void.

Llamadas: Socket.Send_StunRequest, Socket.Send_DisarmRequest, Socket.Send_UseCombatAbility.

Condiciones: (world.ClientLockedFeatures.Flags & LockedFeatureFlags.AOS) == 0; primary.

Código interno de implementación; no es un script independiente.

private static void SendAbility(World world, byte idx, bool primary)
        {
            if ((world.ClientLockedFeatures.Flags & LockedFeatureFlags.AOS) == 0)
            {
                if (primary)
                    Socket.Send_StunRequest();
                else
                    Socket.Send_DisarmRequest();
            }
            else
            {
                Socket.Send_UseCombatAbility(world, idx);
            }
        }

ClassicUO.Game.GameObjects.Item.Create

Devuelve el valor de la expresión siguiente.

Parámetros: world, serial

Origen: Project_Full/src/ClassicUO.Client/Game/GameObjects/Item.cs:178.

public static Item Create(World world, uint serial)

Resultado: Item.

Resultado: i.

Código interno de implementación; no es un script independiente.

public static Item Create(World world, uint serial)
        {
            Item i = new Item(world); // _pool.GetOne();
            i.Serial = serial;

            return i;
        }

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.CancelWaitTarget

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1125.

public void CancelWaitTarget()

Resultado: void.

Llamadas: Invoke.

Llamadas:

Código interno de implementación; no es un script independiente.

public void CancelWaitTarget() => Invoke(_manager.ClearPendingTargets);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ClearChatUserIgnore

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1961.

public void ClearChatUserIgnore()

Resultado: void.

Llamadas: Invoke.

Llamadas:

Código interno de implementación; no es un script independiente.

public void ClearChatUserIgnore() => Invoke(JournalManager.ClearYokoIgnoredUsers);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ClearMapFigures

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2327.

public void ClearMapFigures()

Resultado: void.

Llamadas: Invoke.

Llamadas:

Código interno de implementación; no es un script independiente.

public void ClearMapFigures() => Invoke(WorldMapGump.ClearYokoMapFigures);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ClientTargetResponse

Devuelve el valor de la expresión siguiente.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:910.

public int[] ClientTargetResponse()

Resultado: int[].

Resultado: _clientTargetResponse.ToArray().

Llamadas: _clientTargetResponse.ToArray.

Código interno de implementación; no es un script independiente.

public int[] ClientTargetResponse() => _clientTargetResponse.ToArray();

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.FindQuantity

Devuelve el valor de la expresión siguiente.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2256.

public int FindQuantity()

Resultado: int.

Llamadas: Invoke.

Llamadas:

  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke: Invoke(() => { Item item = _world.Items.Get(unchecked((uint)_findItem)); if (item != null && !item.IsDestroyed) { return item.Amount; } Mobile mobile = _world.Mobiles.Get(unchecked((uint)_findItem)); return mobile != null && !mobile.IsDestroyed ? 1 : 0; }). Candidatos de sobrecarga: el origen no confirma cuál se selecciona.
  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke: Invoke(() => { Item item = _world.Items.Get(unchecked((uint)_findItem)); if (item != null && !item.IsDestroyed) { return item.Amount; } Mobile mobile = _world.Mobiles.Get(unchecked((uint)_findItem)); return mobile != null && !mobile.IsDestroyed ? 1 : 0; }). Candidatos de sobrecarga: el origen no confirma cuál se selecciona.

Código interno de implementación; no es un script independiente.

public int FindQuantity() => Invoke(() =>

        {

            Item item = _world.Items.Get(unchecked((uint)_findItem));

            if (item != null && !item.IsDestroyed)

            {

                return item.Amount;

            }



            Mobile mobile = _world.Mobiles.Get(unchecked((uint)_findItem));

            return mobile != null && !mobile.IsDestroyed ? 1 : 0;

        });

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetClilocById

Devuelve el valor de la expresión siguiente.

Parámetros: clilocId, parameters

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2463.

public string GetClilocById(int clilocId, string[] parameters)

Resultado: string.

Llamadas: Invoke.

Llamadas:

Código interno de implementación; no es un script independiente.

public string GetClilocById(int clilocId, string[] parameters) => Invoke(() =>

            Client.UO.FileManager?.Clilocs?.Translate(clilocId, string.Join("\t", parameters ?? Array.Empty<string>()))

            ?? string.Empty);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetIntelligence

Devuelve el valor de la expresión siguiente.

Parámetros: id

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:231.

public int GetIntelligence(int id)

Resultado: int.

Resultado: Invoke(() => _world.Player is { IsDestroyed: false } player && player.Serial == unchecked((uint)id) ? player.Intelligence : 0).

Llamadas: Invoke.

Llamadas:

Código interno de implementación; no es un script independiente.

public int GetIntelligence(int id) => Invoke(() => _world.Player is { IsDestroyed: false } player && player.Serial == unchecked((uint)id) ? player.Intelligence : 0);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetLastMenuCaption

Devuelve el valor de la expresión siguiente.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:675.

public string GetLastMenuCaption()

Resultado: string.

Resultado: Invoke(() => _world.ServerMenus.Snapshot().LastOrDefault()?.YokoCaption ?? string.Empty).

Llamadas: Invoke.

Llamadas:

Código interno de implementación; no es un script independiente.

public string GetLastMenuCaption() => Invoke(() => _world.ServerMenus.Snapshot().LastOrDefault()?.YokoCaption ?? string.Empty);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetMaxHP

Devuelve el valor de la expresión siguiente.

Parámetros: id

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:229.

public int GetMaxHP(int id)

Resultado: int.

Resultado: WithEntity(id, e => e.HitsMax).

Llamadas: WithEntity.

Llamadas:

Código interno de implementación; no es un script independiente.

public int GetMaxHP(int id) => WithEntity(id, e => e.HitsMax);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetMobiles

Devuelve el valor de la expresión siguiente.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2272.

public int[] GetMobiles()

Resultado: int[].

Llamadas: Invoke.

Llamadas:

Código interno de implementación; no es un script independiente.

public int[] GetMobiles() => Invoke(() => _world.Mobiles.Values

            .Where(mobile => !mobile.IsDestroyed)

            .Select(mobile => (int)mobile.Serial).ToArray());

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetMultiPartsAtPosition

Devuelve el valor de la expresión siguiente.

Parámetros: x, y

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2350.

public int[][] GetMultiPartsAtPosition(int x, int y)

Resultado: int[][].

Llamadas: Invoke.

Llamadas:

  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke: Invoke(() => _world.HouseManager.Houses .SelectMany(house => house.GetMultiAt(x, y) .Where(component => component != null && !component.IsDestroyed) .Select(component => new[] { (int)component.Graphic, (int)component.Hue, (int)component.X, (int)component.Y, (int)component.Z, component.MultiOffsetX, component.MultiOffsetY, component.MultiOffsetZ, unchecked((int)house.Serial) })) .ToArray()). Candidatos de sobrecarga: el origen no confirma cuál se selecciona.
  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke: Invoke(() => _world.HouseManager.Houses .SelectMany(house => house.GetMultiAt(x, y) .Where(component => component != null && !component.IsDestroyed) .Select(component => new[] { (int)component.Graphic, (int)component.Hue, (int)component.X, (int)component.Y, (int)component.Z, component.MultiOffsetX, component.MultiOffsetY, component.MultiOffsetZ, unchecked((int)house.Serial) })) .ToArray()). Candidatos de sobrecarga: el origen no confirma cuál se selecciona.

Código interno de implementación; no es un script independiente.

public int[][] GetMultiPartsAtPosition(int x, int y) => Invoke(() =>

            _world.HouseManager.Houses

                .SelectMany(house => house.GetMultiAt(x, y)

                    .Where(component => component != null && !component.IsDestroyed)

                    .Select(component => new[]

                    {

                        (int)component.Graphic,

                        (int)component.Hue,

                        (int)component.X,

                        (int)component.Y,

                        (int)component.Z,

                        component.MultiOffsetX,

                        component.MultiOffsetY,

                        component.MultiOffsetZ,

                        unchecked((int)house.Serial)

                    }))

                .ToArray());

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetScriptsCount

Devuelve el valor de la expresión siguiente.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:312.

public int GetScriptsCount()

Resultado: int.

Resultado: _manager.GetScriptsCount().

Llamadas: _manager.GetScriptsCount.

Llamadas:

Código interno de implementación; no es un script independiente.

public int GetScriptsCount() => _manager.GetScriptsCount();

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetStaticTiles

Devuelve el valor de la expresión siguiente.

Parámetros: x, y, map

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:3310.

public int[] GetStaticTiles(int x, int y, int map)

Resultado: int[].

Llamadas: Invoke.

Llamadas:

  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke: Invoke(() => { if (_world.Map == null || map != _world.MapIndex) { Error($"UO.GetStaticTiles: map {map} is not the currently loaded map {_world.MapIndex}"); return Array.Empty<int>(); } var result = new List<int>(); for (GameObject tile = _world.Map.GetTile(x, y); tile != null; tile = tile.TNext) { if (tile is Static or Multi or Item) { result.Add(tile.Graphic); result.Add(tile.Z); result.Add(tile.Hue); } } return result.ToArray(); }). Candidatos de sobrecarga: el origen no confirma cuál se selecciona.
  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke: Invoke(() => { if (_world.Map == null || map != _world.MapIndex) { Error($"UO.GetStaticTiles: map {map} is not the currently loaded map {_world.MapIndex}"); return Array.Empty<int>(); } var result = new List<int>(); for (GameObject tile = _world.Map.GetTile(x, y); tile != null; tile = tile.TNext) { if (tile is Static or Multi or Item) { result.Add(tile.Graphic); result.Add(tile.Z); result.Add(tile.Hue); } } return result.ToArray(); }). Candidatos de sobrecarga: el origen no confirma cuál se selecciona.
  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Error: Error($"UO.GetStaticTiles: map {map} is not the currently loaded map {_world.MapIndex}").

Código interno de implementación; no es un script independiente.

public int[] GetStaticTiles(int x, int y, int map) => Invoke(() =>

        {

            if (_world.Map == null || map != _world.MapIndex)

            {

                Error($"UO.GetStaticTiles: map {map} is not the currently loaded map {_world.MapIndex}");

                return Array.Empty<int>();

            }

            var result = new List<int>();

            for (GameObject tile = _world.Map.GetTile(x, y); tile != null; tile = tile.TNext)

            {

                if (tile is Static or Multi or Item)

                {

                    result.Add(tile.Graphic);

                    result.Add(tile.Z);

                    result.Add(tile.Hue);

                }

            }

            return result.ToArray();

        });

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetStatus

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: id

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:812.

public void GetStatus(int id)

Resultado: void.

Llamadas: Invoke.

Llamadas:

Código interno de implementación; no es un script independiente.

public void GetStatus(int id)

        {

            Invoke(() => GameActions.RequestMobileStatus(_world, (uint)id, true));

        }

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetTileDataProperties

Devuelve el valor de la expresión siguiente.

Parámetros: group, tileId

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:3525.

public int[] GetTileDataProperties(int group, int tileId)

Resultado: int[].

Llamadas: Invoke.

Llamadas:

  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke: Invoke(() => { if (group == 0 && tileId >= 0 && tileId < Client.UO.FileManager.TileData.LandData.Length) { ref LandTiles data = ref Client.UO.FileManager.TileData.LandData[tileId]; return new[] { (int)data.TexID, data.IsWet ? 1 : 0, data.IsImpassable ? 1 : 0, data.IsNoDiagonal ? 1 : 0 }; } if (group != 0 && tileId >= 0 && tileId < Client.UO.FileManager.TileData.StaticData.Length) { ref StaticTiles data = ref Client.UO.FileManager.TileData.StaticData[tileId]; return new[] { (int)data.Weight, (int)data.Layer, data.Count, (int)data.AnimID, (int)data.Hue, (int)data.LightIndex, (int)data.Height, data.IsWet ? 1 : 0, data.IsImpassable ? 1 : 0, data.IsSurface ? 1 : 0, data.IsFoliage ? 1 : 0, data.IsDoor ? 1 : 0, data.IsWall ? 1 : 0, data.IsContainer ? 1 : 0 }; } return Array.Empty<int>(); }). Candidatos de sobrecarga: el origen no confirma cuál se selecciona.
  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke: Invoke(() => { if (group == 0 && tileId >= 0 && tileId < Client.UO.FileManager.TileData.LandData.Length) { ref LandTiles data = ref Client.UO.FileManager.TileData.LandData[tileId]; return new[] { (int)data.TexID, data.IsWet ? 1 : 0, data.IsImpassable ? 1 : 0, data.IsNoDiagonal ? 1 : 0 }; } if (group != 0 && tileId >= 0 && tileId < Client.UO.FileManager.TileData.StaticData.Length) { ref StaticTiles data = ref Client.UO.FileManager.TileData.StaticData[tileId]; return new[] { (int)data.Weight, (int)data.Layer, data.Count, (int)data.AnimID, (int)data.Hue, (int)data.LightIndex, (int)data.Height, data.IsWet ? 1 : 0, data.IsImpassable ? 1 : 0, data.IsSurface ? 1 : 0, data.IsFoliage ? 1 : 0, data.IsDoor ? 1 : 0, data.IsWall ? 1 : 0, data.IsContainer ? 1 : 0 }; } return Array.Empty<int>(); }). Candidatos de sobrecarga: el origen no confirma cuál se selecciona.

Código interno de implementación; no es un script independiente.

public int[] GetTileDataProperties(int group, int tileId) => Invoke(() =>

        {

            if (group == 0 && tileId >= 0 && tileId < Client.UO.FileManager.TileData.LandData.Length)

            {

                ref LandTiles data = ref Client.UO.FileManager.TileData.LandData[tileId];

                return new[] { (int)data.TexID, data.IsWet ? 1 : 0, data.IsImpassable ? 1 : 0, data.IsNoDiagonal ? 1 : 0 };

            }

            if (group != 0 && tileId >= 0 && tileId < Client.UO.FileManager.TileData.StaticData.Length)

            {

                ref StaticTiles data = ref Client.UO.FileManager.TileData.StaticData[tileId];

                return new[]

                {

                    (int)data.Weight, (int)data.Layer, data.Count, (int)data.AnimID, (int)data.Hue, (int)data.LightIndex,

                    (int)data.Height, data.IsWet ? 1 : 0, data.IsImpassable ? 1 : 0, data.IsSurface ? 1 : 0,

                    data.IsFoliage ? 1 : 0, data.IsDoor ? 1 : 0, data.IsWall ? 1 : 0, data.IsContainer ? 1 : 0

                };

            }

            return Array.Empty<int>();

        });

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetTitle

Devuelve el valor de la expresión siguiente.

Parámetros: id

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:238.

public string GetTitle(int id)

Resultado: string.

Resultado: Invoke(() => (_world.Get(unchecked((uint)id)) as Mobile)?.Title ?? string.Empty).

Llamadas: Invoke.

Llamadas:

Código interno de implementación; no es un script independiente.

public string GetTitle(int id) => Invoke(() => (_world.Get(unchecked((uint)id)) as Mobile)?.Title ?? string.Empty);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.HideLocally

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: entity

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1658.

private static void HideLocally(Entity entity)

Resultado: void.

Llamadas: ReferenceEquals, UIManager.GetGump<PaperDollGump>, .RequestUpdateContents.

Condiciones: ReferenceEquals(SelectedObject.Object, entity); entity is Item item.

Llamadas:

Código interno de implementación; no es un script independiente.

private static void HideLocally(Entity entity)

        {

            entity.IsLocallyHiddenByScript = true;

            entity.AllowedToDraw = false;

            if (ReferenceEquals(SelectedObject.Object, entity)) SelectedObject.Object = null;

            // Rebuild coverage as well: a hidden robe must expose the shirt below.

            if (entity is Item item)

                UIManager.GetGump<PaperDollGump>(item.Container)?.RequestUpdateContents();

        }

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.JournalColor

Devuelve el valor de la expresión siguiente.

Parámetros: index

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1968.

public string JournalColor(int index)

Resultado: string.

Resultado: GetJournalEntry(index) is JournalEntry entry ? $"0x{entry.Hue:X4}" : "0x0000".

Llamadas: GetJournalEntry.

Llamadas:

Código interno de implementación; no es un script independiente.

public string JournalColor(int index) => GetJournalEntry(index) is JournalEntry entry ? $"0x{entry.Hue:X4}" : "0x0000";

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.JournalSerial

Devuelve el valor de la expresión siguiente.

Parámetros: index

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1965.

public string JournalSerial(int index)

Resultado: string.

Resultado: GetJournalEntry(index) is JournalEntry entry ? $"0x{entry.Serial:X8}" : "0x00000000".

Llamadas: GetJournalEntry.

Llamadas:

Código interno de implementación; no es un script independiente.

public string JournalSerial(int index) => GetJournalEntry(index) is JournalEntry entry ? $"0x{entry.Serial:X8}" : "0x00000000";

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ObjAtLayer

Devuelve el valor de la expresión siguiente.

Parámetros: layer

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2052.

public int ObjAtLayer(int layer)

Resultado: int.

Llamadas: Invoke.

Llamadas:

Código interno de implementación; no es un script independiente.

public int ObjAtLayer(int layer) => Invoke(() =>

            layer > (int)Layer.Invalid && layer <= (int)Layer.Bank

                ? (int)(_world.Player?.FindItemByLayer((Layer)layer)?.Serial ?? 0)

                : 0);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.OpenDoor

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1412.

public void OpenDoor()

Resultado: void.

Llamadas: Invoke.

Llamadas:

Código interno de implementación; no es un script independiente.

public void OpenDoor() => Invoke(GameActions.OpenDoor);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.QuestRequest

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1442.

public void QuestRequest()

Resultado: void.

Llamadas: Invoke.

Llamadas:

Código interno de implementación; no es un script independiente.

public void QuestRequest() => Invoke(() => GameActions.RequestQuestMenu(_world));

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.RequestContextMenu

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: id

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:700.

public void RequestContextMenu(int id)

Resultado: void.

Llamadas: Invoke.

Llamadas:

Código interno de implementación; no es un script independiente.

public void RequestContextMenu(int id) => Invoke(() => GameActions.OpenPopupMenu((uint)id));

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.RequestInteractiveObjectInfoTarget

Comprueba las condiciones siguientes y devuelve el resultado indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:922.

public int RequestInteractiveObjectInfoTarget()

Resultado: int.

Resultado: 0.

Llamadas: Invoke.

Condiciones: !_interactiveCommands.

Llamadas:

Código interno de implementación; no es un script independiente.

public int RequestInteractiveObjectInfoTarget()

        {

            if (!_interactiveCommands)

                return 0;



            return Invoke(() =>

            {

                _world.TargetManager.SetTargeting(selected =>

                {

                    bool valid = selected is Entity;

                    string result = valid

                        ? FormatObjectInfo((Entity)selected)

                        : "UO.Info: select an item or mobile; the selected target is not an object.";

                    if (valid)

                        OpenInteractiveInfoGump("C# Object Information", result);

                    PrintInteractiveResult(result);

                }, 0, TargetType.Neutral);

                PrintInteractiveResult("UO.Info: target an item or mobile.");

                return 1;

            });

        }

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ResetFindResults

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:3753.

private void ResetFindResults()

Resultado: void.

Llamadas: _foundItems.Clear.

Código interno de implementación; no es un script independiente.

private void ResetFindResults()

        {

            _findItem = 0;

            _findCount = 0;

            _findFullQuantity = 0;

            _foundItems.Clear();

        }

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Resync

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1667.

public void Resync()

Resultado: void.

Llamadas: Invoke.

Llamadas:

Código interno de implementación; no es un script independiente.

public void Resync() => Invoke(() => NetClient.Socket.Send_Resync());

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.SelectObject

Comprueba las condiciones siguientes y devuelve el resultado indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:747.

private GameObject SelectObject()

Resultado: GameObject.

Resultado: selected.Task.GetAwaiter().GetResult().

Llamadas: Invoke, selected.Task.Wait, selected.TrySetResult, _cancellationToken.ThrowIfCancellationRequested, selected.Task.GetAwaiter().GetResult, selected.Task.GetAwaiter, _manager.ReleaseObjectSelection.

Condiciones: !Invoke(() => _world.TargetManager.IsCallbackTarget(callback)).

Llamadas:

Código interno de implementación; no es un script independiente.

private GameObject SelectObject()

        {

            var selected = new TaskCompletionSource<GameObject>(TaskCreationOptions.RunContinuationsAsynchronously);

            Action<GameObject> callback = obj => selected.TrySetResult(obj);

            try

            {

                Invoke(() => _world.TargetManager.SetTargeting(callback, 0, TargetType.Neutral));

                while (!selected.Task.Wait(50, _cancellationToken))

                {

                    // Another script or a server target may replace this cursor.

                    if (!Invoke(() => _world.TargetManager.IsCallbackTarget(callback)))

                        selected.TrySetResult(null);

                }

                _cancellationToken.ThrowIfCancellationRequested();

                return selected.Task.GetAwaiter().GetResult();

            }

            finally

            {

                // Do not wait for the game thread during emergency cancellation.

                // Ownership prevents this cleanup from clearing a newer cursor.

                _manager.ReleaseObjectSelection(callback);

            }



        }

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.SetAutoSellRule

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: type, color, quantity

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:3580.

public void SetAutoSellRule(int type, int color, int quantity)

Resultado: void.

Llamadas: Invoke.

Llamadas:

Código interno de implementación; no es un script independiente.

public void SetAutoSellRule(int type, int color, int quantity) =>

            Invoke(() => SetAutoShopRule(ProfileManager.CurrentProfile?.BackNewbieAutoSellRules, false, type, color, quantity, 0, string.Empty));

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.SetReceivingContainer

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: id

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1133.

public void SetReceivingContainer(int id)

Resultado: void.

Código interno de implementación; no es un script independiente.

public void SetReceivingContainer(int id) => State.ReceivingContainer = id;

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.UseSkill

Comprueba las condiciones siguientes y devuelve el resultado indicado.

Parámetros: skillId

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2065.

public int UseSkill(int skillId)

Resultado: int.

Resultado: 0; 1.

Llamadas: IsOnline, Invoke.

Condiciones: skillId <= 0 || IsOnline() == 0.

Llamadas:

Código interno de implementación; no es un script independiente.

public int UseSkill(int skillId)

        {

            if (skillId <= 0 || IsOnline() == 0)

                return 0;

            Invoke(() => GameActions.UseSkill(skillId - 1));

            return 1;

        }

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.WaitGumpSelect

Comprueba las condiciones siguientes y devuelve el resultado indicado.

Parámetros: triggerId, timeoutMs

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2737.

public int WaitGumpSelect(int triggerId, int timeoutMs)

Resultado: int.

Resultado: 1; 0.

Llamadas: Invoke, DateTime.UtcNow.AddMilliseconds, Math.Max, Wait, Error.

Condiciones: sent != 0; DateTime.UtcNow >= timeout.

Llamadas:

Código interno de implementación; no es un script independiente.

public int WaitGumpSelect(int triggerId, int timeoutMs)

        {

            HashSet<Gump> existing = Invoke(() => ServerGumpsUnsafe().ToHashSet());

            DateTime timeout = DateTime.UtcNow.AddMilliseconds(Math.Max(0, timeoutMs));

            do

            {

                int sent = Invoke(() => SendGumpButtonUnsafe(ServerGumpsUnsafe().FirstOrDefault(g => !existing.Contains(g)), triggerId, string.Empty));

                if (sent != 0)

                    return 1;

                if (DateTime.UtcNow >= timeout)

                    break;

                Wait(50);

            }

            while (true);

            Error($"UO.WaitGump: timeout waiting to select button {triggerId}");

            return 0;

        }

ClassicUO.Game.Managers.UIManager.GetGump

Comprueba las condiciones siguientes y devuelve el resultado indicado.

Parámetros: serial

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/UIManager.cs:307.

public static Gump GetGump(uint serial)

Resultado: Gump.

Resultado: c as Gump; null.

Condiciones: !c.IsDisposed && c.LocalSerial == serial.

Código interno de implementación; no es un script independiente.

public static Gump GetGump(uint serial)
        {
            for (LinkedListNode<Gump> last = Gumps.Last; last != null; last = last.Previous)
            {
                Control c = last.Value;

                if (!c.IsDisposed && c.LocalSerial == serial)
                {
                    return c as Gump;
                }
            }

            return null;
        }

ClassicUO.Game.Managers.YokoInjectionManager.ApplyDisconnectPauseState

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: paused

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/YokoInjectionManager.cs:891.

private void ApplyDisconnectPauseState(bool paused)

Resultado: void.

Llamadas: Interlocked.Exchange, script.SetDisconnectPause, MarkRuntimeStateChanged.

Condiciones: Interlocked.Exchange(ref _appliedDisconnectPause, desired) == desired; changedRunningState.

Código interno de implementación; no es un script independiente.

private void ApplyDisconnectPauseState(bool paused)
        {
            int desired = paused ? 1 : 0;
            if (Interlocked.Exchange(ref _appliedDisconnectPause, desired) == desired)
                return;

            bool changedRunningState = false;
            foreach (YokoRunningScript script in _running.Values)
            {
                script.SetDisconnectPause(paused);
                changedRunningState = true;
            }

            if (changedRunningState)
                MarkRuntimeStateChanged();
        }

ClassicUO.Game.Managers.YokoInjectionManager.CancelNextServerTarget

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: owner

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/YokoInjectionManager.cs:3311.

internal void CancelNextServerTarget(CancellationToken owner)

Resultado: void.

Llamadas: owner.ThrowIfCancellationRequested, _pendingTargets.TryDequeue, HasServerTargetCursor, _world.TargetManager.CancelTarget, _pendingTargets.Enqueue.

Condiciones: HasServerTargetCursor().

Llamadas:

Código interno de implementación; no es un script independiente.

internal void CancelNextServerTarget(CancellationToken owner)
        {
            lock (_pendingTargetLock)
            {
                owner.ThrowIfCancellationRequested();
                while (_pendingTargets.TryDequeue(out _)) { }
                if (HasServerTargetCursor()) _world.TargetManager.CancelTarget();
                else _pendingTargets.Enqueue(new PendingTarget(0, owner, cancel: true));
            }
        }

ClassicUO.Game.Managers.YokoInjectionManager.FindProcedure

Comprueba las condiciones siguientes y devuelve el resultado indicado.

Parámetros: key

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/YokoInjectionManager.cs:3871.

internal YokoProcedureInfo FindProcedure(string key)

Resultado: YokoProcedureInfo.

Resultado: null; indexed; exact; byName.Length == 1 ? byName[0] : null.

Llamadas: string.IsNullOrWhiteSpace, key.Trim, lookup.StartsWith, lookup.Substring(5).Trim, lookup.Substring, lookup.EndsWith, lookup.Substring(0, lookup.Length - 2).Trim, lookup.IndexOf.

Condiciones: string.IsNullOrWhiteSpace(key); lookup.StartsWith("exec ", StringComparison.OrdinalIgnoreCase); lookup.EndsWith("()", StringComparison.Ordinal); subIndex >= 0.

Código interno de implementación; no es un script independiente.

internal YokoProcedureInfo FindProcedure(string key)
        {
            if (string.IsNullOrWhiteSpace(key))
            {
                return null;
            }

            string lookup = key.Trim();
            if (lookup.StartsWith("exec ", StringComparison.OrdinalIgnoreCase))
            {
// …
            if (lookup.EndsWith("()", StringComparison.Ordinal))
// …
            if (subIndex >= 0)
// …
                if (nameEnd > nameStart)
// …
                if (_proceduresByKey.TryGetValue(lookup, out YokoProcedureInfo indexed))
                    return indexed;
// …
                if (exact != null)
// …
                    return exact;
// …
                if (byName.Length != 0) return byName.Length == 1 ? byName[0] : null;
// …
            if (TryGetSelectedAutoloadActionProcedures(RequestedAutoloadPath(), out var selected))
// …
                if (exact != null) return exact;
// …
                return byName.Length == 1 ? byName[0] : null;
// …
            return null;
// …

El archivo de origen contiene el código completo; siguen extractos exactos.

ClassicUO.Game.Managers.YokoInjectionManager.MatchesProcedureSelector

Comprueba las condiciones siguientes y devuelve el resultado indicado.

Parámetros: selector, key, name

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/YokoExecutionControl.cs:93.

private static bool MatchesProcedureSelector(string selector, string key, string name = null)

Resultado: bool.

Resultado: true; false; string.Equals(selector, declaredName, StringComparison.OrdinalIgnoreCase).

Llamadas: string.Equals, string.IsNullOrEmpty, selector.Contains, key.LastIndexOf, key.Substring, declaredName.LastIndexOf, declaredName.Substring.

Condiciones: string.Equals(selector, key, StringComparison.OrdinalIgnoreCase) || string.Equals(selector, name, StringComparison.OrdinalIgnoreCase); string.IsNullOrEmpty(key) || selector.Contains("::", StringComparison.Ordinal); split < 0; occurrence > 0.

Código interno de implementación; no es un script independiente.

private static bool MatchesProcedureSelector(string selector, string key, string name = null)
        {
            if (string.Equals(selector, key, StringComparison.OrdinalIgnoreCase)
                || string.Equals(selector, name, StringComparison.OrdinalIgnoreCase))
                return true;
            if (string.IsNullOrEmpty(key) || selector.Contains("::", StringComparison.Ordinal))
                return false;
            int split = key.LastIndexOf("::", StringComparison.Ordinal);
            if (split < 0)
                return false;
            string declaredName = key.Substring(split + 2);
            int occurrence = declaredName.LastIndexOf('#');
            if (occurrence > 0)
                declaredName = declaredName.Substring(0, occurrence);
            return string.Equals(selector, declaredName, StringComparison.OrdinalIgnoreCase);
        }

ClassicUO.Game.Managers.YokoInjectionManager.PrepareForReconnect

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: Sin parámetros.

Origen: Project_Full/src/ClassicUO.Client/Game/Managers/YokoInjectionManager.cs:767.

internal void PrepareForReconnect()

Resultado: void.

Llamadas: ApplyDisconnectPauseState.

Llamadas:

Código interno de implementación; no es un script independiente.

internal void PrepareForReconnect()
        {
            bool pause = PauseScriptsOnDisconnect;
            _pauseScriptsOnDisconnect = pause;
            // Disconnect is deferred until World.Update returns. Keep the gate
            // closed during that frame, while World.InGame is still true.
            _disconnectTransitionPending = true;
            ApplyDisconnectPauseState(pause);
        }

InjectionScript.Runtime.InjectionApi.Wait

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: milliseconds

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApi.cs:55.

public void Wait(int milliseconds)

Resultado: void.

Llamadas: nameof, .Invoke, timerWait, bridge.Wait, Thread.Sleep.

Condiciones: milliseconds<0; timerWait!=null; bridge!=null.

Llamadas:

Código interno de implementación; no es un script independiente.

public void Wait(int milliseconds)
        {
            if(milliseconds<0)throw new ArgumentOutOfRangeException(nameof(milliseconds));
            checkpoint?.Invoke();
            if(timerWait!=null)timerWait(milliseconds);else if(bridge!=null)bridge.Wait(milliseconds);else Thread.Sleep(milliseconds);
            checkpoint?.Invoke();
        }

InjectionScript.Runtime.InjectionApiUO.Attack

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: id

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3924.

public void Attack(string id)

Resultado: void.

Llamadas: Attack, GetObject.

Llamadas:

Código interno de implementación; no es un script independiente.

public void Attack(string id) => Attack(GetObject(id));

InjectionScript.Runtime.InjectionApiUO.CaptureLegacyEventSnapshot

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: subscription

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:6070.

private void CaptureLegacyEventSnapshot(LegacyEventSubscription subscription)

Resultado: void.

Llamadas: bridge.GetHP, bridge.Dead, subscription.KnownMobiles.Clear, bridge.GetMobiles, Array.Empty<int>, subscription.KnownMobiles.Add.

Condiciones: serial != 0 && serial != bridge.Self.

Llamadas:

Código interno de implementación; no es un script independiente.

private void CaptureLegacyEventSnapshot(LegacyEventSubscription subscription)

        {

            subscription.LastHp = bridge.GetHP(bridge.Self);

            subscription.LastMana = bridge.Mana;

            subscription.LastStamina = bridge.Stamina;

            subscription.LastDead = bridge.Dead();

            subscription.KnownMobiles.Clear();

            foreach (int serial in bridge.GetMobiles() ?? Array.Empty<int>())

                if (serial != 0 && serial != bridge.Self)

                    subscription.KnownMobiles.Add(serial);

        }

InjectionScript.Runtime.InjectionApiUO.CircleTrans

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: enabled

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3785.

public void CircleTrans(int enabled)

Resultado: void.

Llamadas: bridge.CircleTrans.

Llamadas:

Código interno de implementación; no es un script independiente.

public void CircleTrans(int enabled) => bridge.CircleTrans(enabled);

InjectionScript.Runtime.InjectionApiUO.CompactFindList::AddEntry

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: typeValue, colorValue

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3411.

void AddEntry(InjectionValue typeValue, InjectionValue colorValue)

Resultado: void.

Llamadas: types.Add, ResolveType, colors.Add, NumberConversions.ToInt.

Llamadas:

Código interno de implementación; no es un script independiente.

void AddEntry(InjectionValue typeValue, InjectionValue colorValue)

            {

                types.Add(ResolveType(typeValue));

                colors.Add(NumberConversions.ToInt(colorValue));

            }

InjectionScript.Runtime.InjectionApiUO.CompactFindType

Comprueba las condiciones siguientes y devuelve el resultado indicado.

Parámetros: typeValue, colorValue, containerValue, distanceValue, notorietyValue, nearestValue

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:4739.

`private InjectionValue CompactFindType(InjectionValue typeValue, InjectionValue colorValue,

        InjectionValue containerValue, InjectionValue distanceValue, InjectionValue notorietyValue,

        InjectionValue nearestValue)`

Resultado: InjectionValue.

Resultado: serial == 0 ? new InjectionValue(string.Empty) : new InjectionValue(NumberConversions.ToHex(serial)); fallback == 0 ? new InjectionValue(string.Empty) : new InjectionValue(NumberConversions.ToHex(fallback)).

Llamadas: ResolveType, NumberConversions.ToInt, ConvertContainer, ResolveCompactDistance, ToBoolean, ParseIntMask, FindFilteredMobileSerial, bridge.GetFindVertical.

Condiciones: container <= 1 || hasNotorietyFilter; serial != 0 || hasNotorietyFilter.

Llamadas:

Código interno de implementación; no es un script independiente.

private InjectionValue CompactFindType(InjectionValue typeValue, InjectionValue colorValue,

            InjectionValue containerValue, InjectionValue distanceValue, InjectionValue notorietyValue,

            InjectionValue nearestValue)

        {

            int type = ResolveType(typeValue);

            int color = NumberConversions.ToInt(colorValue);

            int container = ConvertContainer(containerValue);

            int distance = ResolveCompactDistance(distanceValue);

            bool nearest = ToBoolean(nearestValue);



            // Notoriety only exists on Mobile.  Extended FindType therefore scans

            // World.Mobiles when a notoriety filter is supplied (or when the type

            // itself resolves to a mobile body on the ground/default world scope).

            HashSet<int> notorieties = ParseIntMask(notorietyValue);

            bool hasNotorietyFilter = notorieties.Count > 0;

            if (container <= 1 || hasNotorietyFilter)

            {

                int serial = FindFilteredMobileSerial(type, notorietyValue, distance, nearest,

                    bridge.GetFindVertical(), color, false);

                if (serial != 0 || hasNotorietyFilter)

                    return serial == 0 ? new InjectionValue(string.Empty) : new InjectionValue(NumberConversions.ToHex(serial));

            }



            // Preserve legacy item/container behavior when no mobile matched.

            int fallback = bridge.FindType(type, color, container, distance, false);

            return fallback == 0 ? new InjectionValue(string.Empty) : new InjectionValue(NumberConversions.ToHex(fallback));

        }

InjectionScript.Runtime.InjectionApiUO.EquipmentClassRule.Matches

Devuelve el valor de la expresión siguiente.

Parámetros: worn

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.ClassMasks.cs:20.

internal bool Matches(HashSet<int> worn)

Resultado: bool.

Resultado: worn.Count > 0 && !Forbidden.Overlaps(worn) && Required.All(group => group.Overlaps(worn)).

Llamadas: Forbidden.Overlaps, Required.All.

Código interno de implementación; no es un script independiente.

internal bool Matches(HashSet<int> worn)
                => worn.Count > 0 && !Forbidden.Overlaps(worn) && Required.All(group => group.Overlaps(worn));

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1662.

Resultado: CastAtTarget(arguments[0], arguments[1]) != 0 ? InjectionValue.True : InjectionValue.False; InjectionValue.True; InjectionValue.False.

Condiciones: arguments[0].Kind == InjectionValueKind.String; castAccepted != 0.

Llamadas:

Código interno de implementación; no es un script independiente.

case "casttoobject":

                    if (arguments[0].Kind == InjectionValueKind.String)

                        return CastAtTarget(arguments[0], arguments[1]) != 0 ? InjectionValue.True : InjectionValue.False;



                    WaitTargetObject(Arg(1));

                    int castAccepted = bridge.Cast(Arg(0));

                    if (castAccepted != 0)

                    {

                        ticksSpell = Timer();

                        return InjectionValue.True;

                    }



                    bridge.CancelTarget();

                    return InjectionValue.False;

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1644.

Resultado: InjectionValue.Unit.

Llamadas:

Código interno de implementación; no es un script independiente.

case "clientrequesttiletarget": bridge.RequestClientTarget(true); return InjectionValue.Unit;

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1547.

Resultado: InjectionValue.Unit; new InjectionValue(bridge.GetDropDelay()).

Condiciones: arguments.Length > 0.

Llamadas:

Código interno de implementación; no es un script independiente.

case "dropdelay":

                    if (arguments.Length > 0) { bridge.SetDropDelay(Arg(0)); return InjectionValue.Unit; }

                    return new InjectionValue(bridge.GetDropDelay());

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1637.

Resultado: InjectionValue.Unit.

Llamadas:

Código interno de implementación; no es un script independiente.

case "equiplastweapon": bridge.EquipLastWeapon(); return InjectionValue.Unit;

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1261.

Resultado: new InjectionValue(arguments[0].Kind == InjectionValueKind.String ? Equip(Text(0), Arg(1)) : bridge.Equip(Arg(0), Arg(1))).

Llamadas:

Código interno de implementación; no es un script independiente.

case "equip":

                    return new InjectionValue(arguments[0].Kind == InjectionValueKind.String ? Equip(Text(0), Arg(1)) : bridge.Equip(Arg(0), Arg(1)));

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1575.

Resultado: new InjectionValue(bridge.GetDir(Arg(0))).

Llamadas:

Código interno de implementación; no es un script independiente.

case "getdirection": return new InjectionValue(bridge.GetDir(Arg(0)));

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1592.

Resultado: StringArray(bridge.GetLastMenuItems()).

Llamadas:

Código interno de implementación; no es un script independiente.

case "getlastmenuitems": return StringArray(bridge.GetLastMenuItems());

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1342.

Resultado: new InjectionValue(state.RunUnmountTimer).

Código interno de implementación; no es un script independiente.

case "getrununmounttimer": return new InjectionValue(state.RunUnmountTimer);

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1459.

Resultado: new InjectionValue(bridge.GetSurfaceZ(Arg(0), Arg(1), Arg(2))).

Llamadas:

Código interno de implementación; no es un script independiente.

case "getsurfacez":

                    return new InjectionValue(bridge.GetSurfaceZ(Arg(0), Arg(1), Arg(2)));

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2036.

Resultado: new InjectionValue(bridge.JournalEntryCount() == 0 ? -1 : bridge.JournalEntryCount() - 1).

Llamadas:

Código interno de implementación; no es un script independiente.

case "highjournal": return new InjectionValue(bridge.JournalEntryCount() == 0 ? -1 : bridge.JournalEntryCount() - 1);

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1375.

Resultado: new InjectionValue(bridge.Mana).

Llamadas:

Código interno de implementación; no es un script independiente.

case "mana": return new InjectionValue(bridge.Mana);

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1588.

Resultado: new InjectionValue(bridge.MenuPresent()).

Llamadas:

Código interno de implementación; no es un script independiente.

case "menupresent": return new InjectionValue(bridge.MenuPresent());

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1584.

Resultado: InjectionValue.Unit.

Llamadas:

Código interno de implementación; no es un script independiente.

case "setstatlockstate":

                case "setstatstate": bridge.SetStatLockState(Arg(0), Arg(1)); return InjectionValue.Unit;

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1527.

Resultado: InjectionValue.Unit.

Llamadas:

Código interno de implementación; no es un script independiente.

case "stopscript": bridge.StopScript(Arg(0)); return InjectionValue.Unit;

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1311.

Resultado: new InjectionValue((bridge as IProxyMetadataBridge)?.UsesProxy == true ? 1 : 0).

Código interno de implementación; no es un script independiente.

case "useproxy": return new InjectionValue((bridge as IProxyMetadataBridge)?.UsesProxy == true ? 1 : 0);

InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias::Text

Devuelve el valor de la expresión siguiente.

Parámetros: index

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2825.

string Text(int index)

Resultado: string.

Resultado: index < arguments.Length ? arguments[index].ToString() : string.Empty.

Llamadas: arguments[index].ToString.

Llamadas:

Código interno de implementación; no es un script independiente.

string Text(int index) => index < arguments.Length ? arguments[index].ToString() : string.Empty;

InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2946.

Condiciones: arguments.Length > 1; arguments.Length > 0.

Llamadas:

Código interno de implementación; no es un script independiente.

case "easyobject":

                    if (arguments.Length > 1) state.Objects.Set(Text(0), Arg(1));

                    else if (arguments.Length > 0) state.Objects.Set(Text(0), bridge.GetLastObject());

                    break;

InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2954.

Llamadas:

Código interno de implementación; no es un script independiente.

case "filterweather": state.WeatherFilter = arguments.Length == 0 || Arg(0) != 0 ? 1 : 0; bridge.SetWeatherFilter(state.WeatherFilter); break;

InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias

Esta rama solo maneja el nombre de comando indicado.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2950.

Condiciones: arguments.Length > 0.

Llamadas:

Código interno de implementación; no es un script independiente.

case "forget": if (arguments.Length > 0) state.Objects.Remove(Text(0)); break;

InjectionScript.Runtime.InjectionApiUO.FindMobile

Devuelve el valor de la expresión siguiente.

Parámetros: stateFilter

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3657.

public int FindMobile(InjectionValue stateFilter)

Resultado: int.

Llamadas: FindMobile.

Llamadas:

Código interno de implementación; no es un script independiente.

public int FindMobile(InjectionValue stateFilter) => FindMobile(stateFilter, new InjectionValue("all"),

            new InjectionValue("all"), new InjectionValue("all"));

InjectionScript.Runtime.InjectionApiUO.GListSize

Devuelve el valor de la expresión siguiente.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3283.

public int GListSize()

Resultado: int.

Resultado: globalList.Count.

Código interno de implementación; no es un script independiente.

public int GListSize() => globalList.Count;

InjectionScript.Runtime.InjectionApiUO.GetPing

Devuelve el valor de la expresión siguiente.

Parámetros: timeout

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3745.

public int GetPing(InjectionValue timeout)

Resultado: int.

Resultado: bridge.GetPing(Math.Max(0, NumberConversions.ToInt(timeout))).

Llamadas: bridge.GetPing, Math.Max, NumberConversions.ToInt.

Llamadas:

Código interno de implementación; no es un script independiente.

public int GetPing(InjectionValue timeout) => bridge.GetPing(Math.Max(0, NumberConversions.ToInt(timeout)));

InjectionScript.Runtime.InjectionApiUO.GetQuantity

Devuelve el valor de la expresión siguiente.

Parámetros: id

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3737.

public int GetQuantity(int id)

Resultado: int.

Resultado: bridge.GetQuantity(id).

Llamadas: bridge.GetQuantity.

Llamadas:

Código interno de implementación; no es un script independiente.

public int GetQuantity(int id) => bridge.GetQuantity(id);

InjectionScript.Runtime.InjectionApiUO.GetX

Devuelve el valor de la expresión siguiente.

Parámetros: id

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3561.

public int GetX(int id)

Resultado: int.

Resultado: bridge.GetX(id).

Llamadas: bridge.GetX.

Llamadas:

Código interno de implementación; no es un script independiente.

public int GetX(int id) => bridge.GetX(id);

InjectionScript.Runtime.InjectionApiUO.GumpExists

Devuelve el valor de la expresión siguiente.

Parámetros: id

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3228.

public int GumpExists(InjectionValue id)

Resultado: int.

Resultado: bridge.GumpExists(NumberConversions.ToInt(id), -1).

Llamadas: bridge.GumpExists, NumberConversions.ToInt.

Llamadas:

Código interno de implementación; no es un script independiente.

public int GumpExists(InjectionValue id) => bridge.GumpExists(NumberConversions.ToInt(id), -1);

InjectionScript.Runtime.InjectionApiUO.InJournalBetweenTimes

Devuelve el valor de la expresión siguiente.

Parámetros: pattern, startTime, endTime, limit

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5382.

public int InJournalBetweenTimes(string pattern, int startTime, int endTime, int limit)

Resultado: int.

Llamadas: InJournalBetweenTimesCore, Math.Max.

Llamadas:

Código interno de implementación; no es un script independiente.

public int InJournalBetweenTimes(string pattern, int startTime, int endTime, int limit)

            => InJournalBetweenTimesCore(pattern, startTime, endTime,

                limit == -1 ? -1 : Math.Max(0, limit), ignoreCase: limit == -1);

InjectionScript.Runtime.InjectionApiUO.JournalEntryTime

Comprueba las condiciones siguientes y devuelve el resultado indicado.

Parámetros: timestamp

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5515.

private int JournalEntryTime(double timestamp)

Resultado: int.

Resultado: -1; 0; milliseconds >= int.MaxValue ? int.MaxValue : (int)milliseconds.

Llamadas: DateTime.FromOADate.

Condiciones: timestamp <= 0d; milliseconds <= 0d.

Código interno de implementación; no es un script independiente.

private int JournalEntryTime(double timestamp)

        {

            if (timestamp <= 0d)

                return -1;



            try

            {

                double milliseconds = (DateTime.FromOADate(timestamp) - runtimeStartTime).TotalMilliseconds;

                if (milliseconds <= 0d)

                    return 0;

                return milliseconds >= int.MaxValue ? int.MaxValue : (int)milliseconds;

            }

            catch (ArgumentException)

            {

                return -1;

            }

        }

InjectionScript.Runtime.InjectionApiUO.QueueGumpControl

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: kind, id, value

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3123.

private void QueueGumpControl(string kind, int id, string value)

Resultado: void.

Llamadas: automation.QueueGumpControl, bridge.SetGumpValue.

Condiciones: bridge is IApiGumpAutomation automation.

Llamadas:

Código interno de implementación; no es un script independiente.

private void QueueGumpControl(string kind, int id, string value)

        {

            if (bridge is IApiGumpAutomation automation) automation.QueueGumpControl(kind, id, value);

            else bridge.SetGumpValue(-1, kind, id, value);

        }

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases::IsDeadState

Estas funciones registran la API. No se ejecutan de nuevo en cada llamada al comando.

Parámetros: serial

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1017.

int IsDeadState(int serial)

Resultado: int.

Resultado: 0; serial == bridge.Self ? bridge.Dead() : bridge.IsDead(serial).

Llamadas: bridge.Dead, bridge.IsDead.

Condiciones: serial <= 0.

Llamadas:

Código interno de implementación; no es un script independiente.

int IsDeadState(int serial)

            {

                if (serial <= 0)

                    return 0;

                return serial == bridge.Self ? bridge.Dead() : bridge.IsDead(serial);

            }

InjectionScript.Runtime.InjectionApiUO.SaveConfig

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5970.

public void SaveConfig()

Resultado: void.

Llamadas: bridge.SaveConfig.

Llamadas:

Código interno de implementación; no es un script independiente.

public void SaveConfig() => bridge.SaveConfig();

InjectionScript.Runtime.InjectionApiUO.Snap

Devuelve el valor de la expresión siguiente.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5920.

public int Snap()

Resultado: int.

Resultado: bridge.Snap(null, 100, true).

Llamadas: bridge.Snap.

Llamadas:

Código interno de implementación; no es un script independiente.

public int Snap() => bridge.Snap(null, 100, true);

InjectionScript.Runtime.InjectionApiUO.Snap

Devuelve el valor de la expresión siguiente.

Parámetros: name

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5921.

public int Snap(string name)

Resultado: int.

Resultado: bridge.Snap(name, 100, true).

Llamadas: bridge.Snap.

Llamadas:

Código interno de implementación; no es un script independiente.

public int Snap(string name) => bridge.Snap(name, 100, true);

InjectionScript.Runtime.InjectionApiUO.StringArray

Devuelve el valor de la expresión siguiente.

Parámetros: values

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2514.

private static InjectionValue StringArray(IEnumerable<string> values)

Resultado: InjectionValue.

Resultado: new InjectionValue((values ?? Array.Empty<string>()).Select(value => new InjectionValue(value)).ToArray()).

Llamadas: (values ?? Array.Empty<string>()).Select(value => new InjectionValue(value)).ToArray, (values ?? Array.Empty<string>()).Select, Array.Empty<string>.

Código interno de implementación; no es un script independiente.

private static InjectionValue StringArray(IEnumerable<string> values)

            => new InjectionValue((values ?? Array.Empty<string>()).Select(value => new InjectionValue(value)).ToArray());

InjectionScript.Runtime.InjectionApiUO.Timer

Devuelve el valor de la expresión siguiente.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5926.

public int Timer()

Resultado: int.

Resultado: (int)Math.Max(0d, Math.Min(int.MaxValue, timeSource.SinceStart.TotalMilliseconds / 100d)).

Llamadas: Math.Max, Math.Min.

Código interno de implementación; no es un script independiente.

public int Timer() => (int)Math.Max(0d, Math.Min(int.MaxValue, timeSource.SinceStart.TotalMilliseconds / 100d));

InjectionScript.Runtime.InjectionApiUO.ToBoolean

Comprueba las condiciones siguientes y devuelve el resultado indicado.

Parámetros: value

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5105.

private static bool ToBoolean(InjectionValue value)

Resultado: bool.

Resultado: flag; NumberConversions.ToInt(value) != 0.

Llamadas: (value.String ?? string.Empty).Trim, bool.TryParse, NumberConversions.ToInt.

Condiciones: value.Kind == InjectionValueKind.String; bool.TryParse(text, out bool flag).

Llamadas:

Código interno de implementación; no es un script independiente.

private static bool ToBoolean(InjectionValue value)

        {

            if (value.Kind == InjectionValueKind.String)

            {

                string text = (value.String ?? string.Empty).Trim();

                if (bool.TryParse(text, out bool flag))

                    return flag;

            }

            return NumberConversions.ToInt(value) != 0;

        }

InjectionScript.Runtime.InjectionApiUO.TryGetObject

Comprueba las condiciones siguientes y devuelve el resultado indicado.

Parámetros: name, id

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3853.

public bool TryGetObject(string name, out int id)

Resultado: bool.

Resultado: true; false.

Llamadas: name.Equals, bridge.GetLastObject, bridge.GetLastContainer, objects.TryGet, NumberConversions.TryStr2Int.

Condiciones: name.Equals("finditem", StringComparison.OrdinalIgnoreCase) && bridge.FindItem != 0; name.Equals("self", StringComparison.OrdinalIgnoreCase); name.Equals("lastcorpse", StringComparison.OrdinalIgnoreCase); name.Equals("lasttarget", StringComparison.OrdinalIgnoreCase).

Llamadas:

Código interno de implementación; no es un script independiente.

public bool TryGetObject(string name, out int id)

        {

            id = -1;

            if (name.Equals("finditem", StringComparison.OrdinalIgnoreCase) && bridge.FindItem != 0)

                id = bridge.FindItem;

            if (name.Equals("self", StringComparison.OrdinalIgnoreCase))

                id = bridge.Self;

            if (name.Equals("lastcorpse", StringComparison.OrdinalIgnoreCase))

                id = bridge.LastCorpse;

            if (name.Equals("lasttarget", StringComparison.OrdinalIgnoreCase))

                id = bridge.LastTarget;

            if (name.Equals("lastattack", StringComparison.OrdinalIgnoreCase))

                id = bridge.LastAttack;

            if (name.Equals("lastobject", StringComparison.OrdinalIgnoreCase))

                id = bridge.GetLastObject();

            if (name.Equals("lastcontainer", StringComparison.OrdinalIgnoreCase))

                id = bridge.GetLastContainer();

            if (name.Equals("laststatus", StringComparison.OrdinalIgnoreCase))

                id = bridge.LastStatus;

            if (name.Equals("backpack", StringComparison.OrdinalIgnoreCase))

                id = bridge.Backpack;



            if (objects.TryGet(name, out var value))

                id = value;



            if (NumberConversions.TryStr2Int(name, out value))

                id = value;



            if (id > -1)

                return true;



            id = 0;

            return false;

        }

InjectionScript.Runtime.InjectionApiUO.TryResolveClassRules

Comprueba las condiciones siguientes y devuelve el resultado indicado.

Parámetros: mask, rules

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.ClassMasks.cs:98.

private bool TryResolveClassRules(InjectionValue mask, out EquipmentClassRule[] rules)

Resultado: bool.

Resultado: true; false.

Llamadas: (mask.String ?? string.Empty).Trim, raw.Equals, raw.Split(new[] { '|', ',', ';' }, StringSplitOptions.None) .Select(s => new InjectionValue(s.Trim())).ToArray, raw.Split(new[] { '|', ',', ';' }, StringSplitOptions.None) .Select, raw.Split, classRules.TryGetValue, (value.String ?? string.Empty).Trim, resolved.Contains.

Condiciones: mask.Kind == InjectionValueKind.Unit || mask.Kind == InjectionValueKind.Any || mask.Kind == InjectionValueKind.Integer && mask.Integer == -1; mask.Kind == InjectionValueKind.String; raw.Length == 0 || raw == "-1" || raw.Equals("any", StringComparison.OrdinalIgnoreCase) || raw.Equals("all", StringComparison.OrdinalIgnoreCase); mask.Kind != InjectionValueKind.Array || mask.Array.Length == 0.

Código interno de implementación; no es un script independiente.

private bool TryResolveClassRules(InjectionValue mask, out EquipmentClassRule[] rules)
        {
            rules = null;
            if (mask.Kind == InjectionValueKind.Unit || mask.Kind == InjectionValueKind.Any
                || mask.Kind == InjectionValueKind.Integer && mask.Integer == -1) return true;
            if (mask.Kind == InjectionValueKind.String)
            {
                string raw = (mask.String ?? string.Empty).Trim();
                if (raw.Length == 0 || raw == "-1" || raw.Equals("any", StringComparison.OrdinalIgnoreCase)
                    || raw.Equals("all", StringComparison.OrdinalIgnoreCase)) return true;
                mask = new InjectionValue(raw.Split(new[] { '|', ',', ';' }, StringSplitOptions.None)
                    .Select(s => new InjectionValue(s.Trim())).ToArray());
            }
            if (mask.Kind != InjectionValueKind.Array || mask.Array.Length == 0) return false;
            var resolved = new List<EquipmentClassRule>();
            lock (classRulesSync)
            {
                foreach (InjectionValue value in mask.Array)
                {
                    if (value.Kind != InjectionValueKind.String
                        || !classRules.TryGetValue((value.String ?? string.Empty).Trim(), out EquipmentClassRule rule)) return false;
                    if (!resolved.Contains(rule)) resolved.Add(rule);
                }
            }
            rules = resolved.ToArray();
            return true;
        }

InjectionScript.Runtime.InjectionApiUO.UseType

Devuelve el valor de la expresión siguiente.

Parámetros: type

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3974.

public int UseType(int type)

Resultado: int.

Resultado: UseType(type, -1).

Llamadas: UseType.

Llamadas:

Código interno de implementación; no es un script independiente.

public int UseType(int type) => UseType(type, -1);

InjectionScript.Runtime.InjectionApiUO.WaitGump

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: triggerId

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3105.

public void WaitGump(string triggerId)

Resultado: void.

Llamadas: (triggerId ?? string.Empty).Trim, text.Contains, `text.Split(new[] { '|', ',' }, StringSplitOptions.RemoveEmptyEntries)

                .Select(value => new InjectionValue(value.Trim())).ToArray`, `text.Split(new[] { '|', ',' }, StringSplitOptions.RemoveEmptyEntries)

                .Select`, `text.Split`, `CompactWaitGump`, `WaitGump`, `NumberConversions.ToInt`.

Condiciones: text.Contains('|') || text.Contains(',').

Llamadas:

Código interno de implementación; no es un script independiente.

public void WaitGump(string triggerId)

        {

            string text = (triggerId ?? string.Empty).Trim();

            if (text.Contains('|') || text.Contains(','))

            {

                InjectionValue[] chain = text.Split(new[] { '|', ',' }, StringSplitOptions.RemoveEmptyEntries)

                    .Select(value => new InjectionValue(value.Trim())).ToArray();

                CompactWaitGump(chain);

                return;

            }

            WaitGump(NumberConversions.ToInt(triggerId));

        }

InjectionScript.Runtime.InjectionApiUO.WaitTargetSelf

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:4181.

public void WaitTargetSelf()

Resultado: void.

Llamadas: WaitTargetObject.

Llamadas:

Código interno de implementación; no es un script independiente.

public void WaitTargetSelf() => WaitTargetObject("self");

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases [GetPetsCurrent]

La llamada ejecuta el delegate del controlador guardado. El método de registro crea ese delegate al construir la API.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1048.

Resultado: bridge.Followers.

Llamadas:

Código interno de implementación; no es un script independiente.

() => bridge.Followers

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases [GetPoisoned]

La llamada ejecuta el delegate del controlador guardado. El método de registro crea ese delegate al construir la API.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1062.

serial

Resultado: serial.

Resultado: bridge.Poisoned(serial).

Llamadas: bridge.Poisoned.

Llamadas:

Código interno de implementación; no es un script independiente.

serial => bridge.Poisoned(serial)

InjectionScript.Runtime.InjectionApiUO.Register [NewMoveXY]

La llamada ejecuta el delegate del controlador guardado. El método de registro crea ese delegate al construir la API.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:841.

values

Resultado: values.

Resultado: new InjectionValue(CompactNewMoveXY(values)).

Llamadas: CompactNewMoveXY.

Llamadas:

Código interno de implementación; no es un script independiente.

values => new InjectionValue(CompactNewMoveXY(values))

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases

Devuelve el valor de la expresión siguiente.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1007.

Resultado: getter(bridge.Self).

Llamadas:

Código interno de implementación; no es un script independiente.

() => getter(bridge.Self)

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases

Devuelve el valor de la expresión siguiente.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1007.

Resultado: getter(bridge.Self).

Llamadas:

Código interno de implementación; no es un script independiente.

() => getter(bridge.Self)

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases

Devuelve el valor de la expresión siguiente.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1007.

Resultado: getter(bridge.Self).

Llamadas:

Código interno de implementación; no es un script independiente.

() => getter(bridge.Self)

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases

Devuelve el valor de la expresión siguiente.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1007.

Resultado: getter(bridge.Self).

Llamadas:

Código interno de implementación; no es un script independiente.

() => getter(bridge.Self)

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases

Devuelve el valor de la expresión siguiente.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1007.

Resultado: getter(bridge.Self).

Llamadas:

Código interno de implementación; no es un script independiente.

() => getter(bridge.Self)

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases

Devuelve el valor de la expresión siguiente.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1013.

value

Resultado: value.

Resultado: getter(GetObject(value)).

Llamadas: getter, GetObject.

Llamadas:

Código interno de implementación; no es un script independiente.

value => getter(GetObject(value))

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases

Devuelve el valor de la expresión siguiente.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1007.

Resultado: getter(bridge.Self).

Llamadas:

Código interno de implementación; no es un script independiente.

() => getter(bridge.Self)

InjectionScript.Runtime.InjectionRuntime.Checkpoint

Ejecuta las llamadas y actualizaciones de estado indicadas.

Parámetros: Sin parámetros.

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionRuntime.cs:34.

private void Checkpoint()

Resultado: void.

Llamadas: .Invoke, .ThrowIfCancellationRequested.

Código interno de implementación; no es un script independiente.

private void Checkpoint(){cancellation?.Invoke()?.ThrowIfCancellationRequested();checkpoint?.Invoke();cancellation?.Invoke()?.ThrowIfCancellationRequested();}

InjectionScript.Runtime.InjectionValue.ConvertTo

Devuelve el valor de la expresión siguiente.

Parámetros: targetKind

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionValue.cs:93.

internal object ConvertTo(InjectionValueKind targetKind)

Resultado: object.

Resultado: this; (int)this; (double)this; (string)this; (InjectionValue[])this; (InjectionObject)this.

Código interno de implementación; no es un script independiente.

internal object ConvertTo(InjectionValueKind targetKind)

        {

            switch (targetKind)

            {

                case InjectionValueKind.Any:

                    return this;

                case InjectionValueKind.Integer:

                    return (int)this;

                case InjectionValueKind.Decimal:

                    return (double)this;

                case InjectionValueKind.String:

                    return (string)this;

                case InjectionValueKind.Array:

                    return (InjectionValue[])this;

                case InjectionValueKind.Object:

                    return (InjectionObject)this;

                case InjectionValueKind.Unit:

                    return null;

                default:

                    throw new InvalidCastException($"Cannot convert {this.Kind} to {targetKind}.");

            }

        }

InjectionScript.Runtime.Metadata.NativeSubrutineExists

Devuelve el valor de la expresión siguiente.

Parámetros: name, argumentCount

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/Metadata.cs:21.

public bool NativeSubrutineExists(string name,int argumentCount)

Resultado: bool.

Resultado: nativeSubrutines.Exists(name,argumentCount).

Llamadas: nativeSubrutines.Exists.

Llamadas:

Código interno de implementación; no es un script independiente.

public bool NativeSubrutineExists(string name,int argumentCount) => nativeSubrutines.Exists(name,argumentCount);

InjectionScript.Runtime.NativeSubrutineMetadata.Exists

Devuelve el valor de la expresión siguiente.

Parámetros: name, argumentCount

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/NativeSubrutineMetadata.cs:69.

internal bool Exists(string name, int argumentCount)

Resultado: bool.

Resultado: byName.TryGetValue(name, out var arities) && arities.ContainsKey(argumentCount).

Llamadas: byName.TryGetValue, arities.ContainsKey.

Código interno de implementación; no es un script independiente.

internal bool Exists(string name, int argumentCount)
            => byName.TryGetValue(name, out var arities) && arities.ContainsKey(argumentCount);

InjectionScript.Runtime.State.NamedIgnoreLists.FilterFor

Devuelve el valor de la expresión siguiente.

Parámetros: name

Origen: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/State/NamedIgnoreLists.cs:26.

public IgnoreTypeFilter FilterFor(string name)

Resultado: IgnoreTypeFilter.

Resultado: !string.IsNullOrWhiteSpace(name) && lists.TryGetValue(name.Trim(), out var filter) ? filter : IgnoreTypeFilter.Empty.

Llamadas: string.IsNullOrWhiteSpace, lists.TryGetValue, name.Trim.

Código interno de implementación; no es un script independiente.

public IgnoreTypeFilter FilterFor(string name)
        {
            lock (sync)
                return !string.IsNullOrWhiteSpace(name) && lists.TryGetValue(name.Trim(), out var filter) ? filter : IgnoreTypeFilter.Empty;
        }

Clone this wiki locally