Skip to content

IT Runtime Helpers 6

Codex edited this page Oct 12, 2026 · 1 revision

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

Funzioni ausiliarie 6

Codice interno di implementazione; non è uno script autonomo.

ClassicUO.CSharp.CSharpCallbacks.Remove

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: listener

Origine: Project_Full/src/ClassicUO.CSharp/CSharpCallbacks.cs:239.

private void Remove(Listener listener)

Risultato: void.

Chiamate: listeners.Remove, listener.Source.Dispose.

Condizioni: listener.Closed.

Codice interno di implementazione; non è uno script autonomo.

private void Remove(Listener listener)
    {
        lock (sync) { if (listener.Closed) return; listener.Closed = true; listeners.Remove(listener); }
        listener.Source.Dispose();
    }

ClassicUO.CSharp.CSharpCallbacks.RemoveState

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: name

Origine: Project_Full/src/ClassicUO.CSharp/CSharpCallbacks.cs:386.

private void RemoveState(string name)

Risultato: void.

Chiamate: stateEvents.Remove, .Dispose.

Codice interno di implementazione; non è uno script autonomo.

private void RemoveState(string name)
    {
        StateEvent? state;
        lock (sync) { stateEvents.Remove(name, out state); }
        state?.Subscription?.Dispose();
    }

ClassicUO.CSharp.CSharpExecutionScope.VerifyActive

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: Nessun parametro.

Origine: Project_Full/src/ClassicUO.CSharp/CSharpScriptEngine.cs:576.

internal static void VerifyActive()

Risultato: void.

Chiamate: .Verify.

Condizioni: CurrentFinalization.Value?.IsActive == true.

Codice interno di implementazione; non è uno script autonomo.

internal static void VerifyActive()
    {
        Current.Value?.Verify();
        if (CurrentFinalization.Value?.IsActive == true)
            throw new InvalidOperationException("Game API calls are unavailable from a CLR finalizer.");
    }

ClassicUO.Configuration.ProfileManager.EncodePathSegment

Verifica le condizioni seguenti e restituisce il risultato mostrato.

Parametri: value

Origine: Project_Full/src/ClassicUO.Client/Configuration/ProfileManager.cs:311.

private static string EncodePathSegment(string value)

Risultato: string.

Risultato: "UnknownServer"; result.

Chiamate: string.IsNullOrWhiteSpace, IsWindowsTrimmedSuffix, builder.Append('~').Append, builder.Append, ((int)character).ToString, builder.ToString, result.Split, baseName.Equals.

Condizioni: string.IsNullOrWhiteSpace(value); windowsInvalid || windowsTrimmedAtEnd; `baseName.Equals("CON", StringComparison.OrdinalIgnoreCase)

            || baseName.Equals("PRN", StringComparison.OrdinalIgnoreCase)

            || baseName.Equals("AUX", StringComparison.OrdinalIgnoreCase)

            || baseName.Equals("NUL", StringComparison.OrdinalIgnoreCase)

            || baseName.Length == 4

            && (baseName.StartsWith("COM", StringComparison.OrdinalIgnoreCase)

                || baseName.StartsWith("LPT", StringComparison.OrdinalIgnoreCase))

            && baseName[3] is >= '1' and <= '9'`.

Codice interno di implementazione; non è uno script autonomo.

private static string EncodePathSegment(string value)

        {

            if (string.IsNullOrWhiteSpace(value))

                return "UnknownServer";



            var builder = new StringBuilder(value.Length);



            for (int index = 0; index < value.Length; index++)

            {

                char character = value[index];

                bool windowsInvalid = character < 32

                                      || character is '<' or '>' or ':' or '"' or '/' or '\\' or '|' or '?' or '*' or '~';

                bool windowsTrimmedAtEnd = (character == '.' || character == ' ')

                                           && IsWindowsTrimmedSuffix(value, index);



                if (windowsInvalid || windowsTrimmedAtEnd)

                    builder.Append('~').Append(((int)character).ToString("X4"));

                else

                    builder.Append(character);

            }



            string result = builder.Length == 0 ? "UnknownServer" : builder.ToString();

            string baseName = result.Split('.')[0];



            if (baseName.Equals("CON", StringComparison.OrdinalIgnoreCase)

                || baseName.Equals("PRN", StringComparison.OrdinalIgnoreCase)

                || baseName.Equals("AUX", StringComparison.OrdinalIgnoreCase)

                || baseName.Equals("NUL", StringComparison.OrdinalIgnoreCase)

                || baseName.Length == 4

                && (baseName.StartsWith("COM", StringComparison.OrdinalIgnoreCase)

                    || baseName.StartsWith("LPT", StringComparison.OrdinalIgnoreCase))

                && baseName[3] is >= '1' and <= '9')

            {

                result = "~005F" + result;

            }



            return result;

        }

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ActivateHandle

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: Nessun parametro.

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1388.

public void ActivateHandle()

Risultato: void.

Chiamate: Invoke.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void ActivateHandle() => Invoke(() => SDL3.SDL.SDL_RaiseWindow(RequireGameView("ActivateHandle").Window.Handle));

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.AddChatUserIgnore

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: name

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1960.

public void AddChatUserIgnore(string name)

Risultato: void.

Chiamate: Invoke.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void AddChatUserIgnore(string name) => Invoke(() => JournalManager.AddYokoIgnoredUser(name));

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.AddMenuHook

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: caption, item, persistent

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:693.

public void AddMenuHook(string caption, string item, bool persistent)

Risultato: void.

Chiamate: Invoke.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void AddMenuHook(string caption, string item, bool persistent) => Invoke(() => _manager.AddMenuHook(caption, item, persistent));

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.CloseClientWindow

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: uiWindowType, id

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2860.

public void CloseClientWindow(int uiWindowType, int id)

Risultato: void.

Chiamate: Invoke.

Chiamate:

  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke: Invoke(() => { if (uiWindowType == 2) _world.CharacterPanels.Profile(unchecked((uint)id))?.Close(true); if (uiWindowType == 0) _world.NativePopups.Close(SessionPopupKind.Paperdoll, unchecked((uint)id)); if (uiWindowType == 3) _world.Containers.Close(unchecked((uint)id)); bool MatchesType(Gump gump) => uiWindowType switch { 0 => gump is PaperDollGump, 1 => gump is StatusGumpBase, 2 => gump is ProfileGump, 3 => gump is ContainerGump, _ => false }; foreach (Gump gump in UIManager.Gumps.Where(gump => !gump.IsDisposed && gump.LocalSerial == unchecked((uint)id) && MatchesType(gump)).ToArray()) gump.Dispose(); }). Candidati di overload: l’origine non conferma il candidato selezionato.
  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke: Invoke(() => { if (uiWindowType == 2) _world.CharacterPanels.Profile(unchecked((uint)id))?.Close(true); if (uiWindowType == 0) _world.NativePopups.Close(SessionPopupKind.Paperdoll, unchecked((uint)id)); if (uiWindowType == 3) _world.Containers.Close(unchecked((uint)id)); bool MatchesType(Gump gump) => uiWindowType switch { 0 => gump is PaperDollGump, 1 => gump is StatusGumpBase, 2 => gump is ProfileGump, 3 => gump is ContainerGump, _ => false }; foreach (Gump gump in UIManager.Gumps.Where(gump => !gump.IsDisposed && gump.LocalSerial == unchecked((uint)id) && MatchesType(gump)).ToArray()) gump.Dispose(); }). Candidati di overload: l’origine non conferma il candidato selezionato.
  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.CloseClientWindow::MatchesType: MatchesType(gump).

Codice interno di implementazione; non è uno script autonomo.

public void CloseClientWindow(int uiWindowType, int id) => Invoke(() =>

        {

            if (uiWindowType == 2) _world.CharacterPanels.Profile(unchecked((uint)id))?.Close(true);

            if (uiWindowType == 0) _world.NativePopups.Close(SessionPopupKind.Paperdoll, unchecked((uint)id));

            if (uiWindowType == 3) _world.Containers.Close(unchecked((uint)id));

            bool MatchesType(Gump gump) => uiWindowType switch

            {

                0 => gump is PaperDollGump,

                1 => gump is StatusGumpBase,

                2 => gump is ProfileGump,

                3 => gump is ContainerGump,

                _ => false

            };



            foreach (Gump gump in UIManager.Gumps.Where(gump => !gump.IsDisposed

                         && gump.LocalSerial == unchecked((uint)id) && MatchesType(gump)).ToArray())

                gump.Dispose();

        });

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ConfirmTrade

Restituisce il valore dell’espressione seguente.

Parametri: tradeNumber

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:280.

public int ConfirmTrade(int tradeNumber)

Risultato: int.

Chiamate: Invoke.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int ConfirmTrade(int tradeNumber) => Invoke(() =>

        {

            ISessionTrade gump = FindNumberedTrade(tradeNumber);

            if (gump == null) return 0;

            if (!gump.ImAccepting)

            {

                gump.ImAccepting = true;

                GameActions.AcceptTrade(gump.ID1, true);

            }

            return 1;

        });

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ContainerOf

Restituisce il valore dell’espressione seguente.

Parametri: id

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2730.

public int ContainerOf(int id)

Risultato: int.

Risultato: Invoke(() => _world.Items.Get((uint)id) is Item item ? (int)item.Container : 0).

Chiamate: Invoke.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int ContainerOf(int id) => Invoke(() => _world.Items.Get((uint)id) is Item item ? (int)item.Container : 0);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.DescribeControl

Verifica le condizioni seguenti e restituisce il risultato mostrato.

Parametri: control

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:3953.

private static string DescribeControl(Control control)

Risultato: string.

Risultato: logical.Describe(); string.IsNullOrWhiteSpace(text) ? common : common + $" text={text}".

Chiamate: logical.Describe, control.GetType, GetControlText, string.IsNullOrWhiteSpace.

Condizioni: control is SessionGumpControl logical; control is Button button; control is Checkbox checkbox.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

private static string DescribeControl(Control control)

        {

            if (control is SessionGumpControl logical) return logical.Describe();

            string common = $"{control.GetType().Name} page={control.Page} id=0x{control.LocalSerial:X8} "

                + $"x={control.X} y={control.Y} width={control.Width} height={control.Height}";



            if (control is Button button)

            {

                return common + $" ButtonID={button.ButtonID} action={button.ButtonAction} toPage={button.ToPage} "

                    + $"normal=0x{button.ButtonGraphicNormal:X4} pressed=0x{button.ButtonGraphicPressed:X4} over=0x{button.ButtonGraphicOver:X4}";

            }



            if (control is Checkbox checkbox)

            {

                string kind = checkbox is RadioButton ? "RadioButton" : "Checkbox";

                return $"{kind} page={control.Page} ID={control.LocalSerial} x={control.X} y={control.Y} "

                    + $"checked={checkbox.IsChecked} inactive=0x{checkbox.InactiveGraphic:X4} active=0x{checkbox.ActiveGraphic:X4}";

            }



            string text = GetControlText(control);

            return string.IsNullOrWhiteSpace(text) ? common : common + $" text={text}";

        }

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Exec

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: subrutineName

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2715.

public void Exec(string subrutineName)

Risultato: void.

Chiamate: _manager.RunNamedProcedureFromScript.

Codice interno di implementazione; non è uno script autonomo.

public void Exec(string subrutineName)

        {

            _manager.RunNamedProcedureFromScript(subrutineName, _csharpGlobals?.Cancellation ?? _cancellationToken);

        }

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetDropDelay

Restituisce il valore dell’espressione seguente.

Parametri: Nessun parametro.

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:203.

public int GetDropDelay()

Risultato: int.

Risultato: State.GrabDelay.

Codice interno di implementazione; non è uno script autonomo.

public int GetDropDelay() => State.GrabDelay;

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetFlags

Restituisce il valore dell’espressione seguente.

Parametri: id

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:619.

public int GetFlags(int id)

Risultato: int.

Risultato: Invoke(() => _world.Get((uint)id) is Entity entity ? (int)entity.Flags : 0).

Chiamate: Invoke.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int GetFlags(int id) => Invoke(() => _world.Get((uint)id) is Entity entity ? (int)entity.Flags : 0);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetGumpCount

Restituisce il valore dell’espressione seguente.

Parametri: Nessun parametro.

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2804.

public int GetGumpCount()

Risultato: int.

Risultato: Invoke(() => ServerGumpsUnsafe().Count).

Chiamate: Invoke.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int GetGumpCount() => Invoke(() => ServerGumpsUnsafe().Count);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetGumpSerial

Restituisce il valore dell’espressione seguente.

Parametri: index

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2814.

public int GetGumpSerial(int index)

Risultato: int.

Risultato: Invoke(() => (int)(ServerGumpsUnsafe().ElementAtOrDefault(index)?.LocalSerial ?? 0)).

Chiamate: Invoke.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int GetGumpSerial(int index) => Invoke(() => (int)(ServerGumpsUnsafe().ElementAtOrDefault(index)?.LocalSerial ?? 0));

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetScriptPath

Restituisce il valore dell’espressione seguente.

Parametri: index

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:315.

public string GetScriptPath(int index)

Risultato: string.

Risultato: _manager.GetScriptPath(index).

Chiamate: _manager.GetScriptPath.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public string GetScriptPath(int index) => _manager.GetScriptPath(index);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetStaticArt::Write16

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: buffer, offset, value

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:3346.

static void Write16(byte[] buffer, int offset, int value)

Risultato: void.

Codice interno di implementazione; non è uno script autonomo.

static void Write16(byte[] buffer, int offset, int value)

            {

                buffer[offset] = (byte)value;

                buffer[offset + 1] = (byte)(value >> 8);

            }

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetWaitTargetQueue

Restituisce il valore dell’espressione seguente.

Parametri: Nessun parametro.

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1126.

public int[] GetWaitTargetQueue()

Risultato: int[].

Risultato: _manager.GetPendingTargetSerials().

Chiamate: _manager.GetPendingTargetSerials.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int[] GetWaitTargetQueue() => _manager.GetPendingTargetSerials();

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.JournalEntryCount

Restituisce il valore dell’espressione seguente.

Parametri: Nessun parametro.

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1962.

public int JournalEntryCount()

Risultato: int.

Risultato: Invoke(() => JournalManager.Entries.Count).

Chiamate: Invoke.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int JournalEntryCount() => Invoke(() => JournalManager.Entries.Count);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.JournalMatchCount

Restituisce il valore dell’espressione seguente.

Parametri: Nessun parametro.

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1963.

public int JournalMatchCount()

Risultato: int.

Risultato: _journalMatchCount.

Codice interno di implementazione; non è uno script autonomo.

public int JournalMatchCount() => _journalMatchCount;

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.LastTarget

Restituisce il valore dell’espressione seguente.

Parametri: Nessun parametro.

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:146.

public int LastTarget

Risultato: int.

Risultato: Invoke(() => (int)_world.TargetManager.LastTargetInfo.Serial).

Chiamate: Invoke.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int LastTarget => Invoke(() => (int)_world.TargetManager.LastTargetInfo.Serial);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.LastTile

Restituisce il valore dell’espressione seguente.

Parametri: Nessun parametro.

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1127.

public int[] LastTile()

Risultato: int[].

Chiamate: Invoke.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int[] LastTile() => Invoke(() =>

        {

            LastTargetInfo info = _world.TargetManager.LastTargetInfo;

            return new[] { (int)info.Graphic, (int)info.X, (int)info.Y, (int)info.Z };

        });

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.MoveTo

Restituisce il valore dell’espressione seguente.

Parametri: x, y, z, accuracy, running, staminaThreshold, openDoor, throughCorner, throughNpcs, heuristicMultiplier, turnCost, exitOnDisconnect, accuracyZ, optimized, betweenTwoCorners

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1463.

`public int MoveTo(int x, int y, int z, int accuracy, bool running, int staminaThreshold,

        bool openDoor, bool throughCorner, bool throughNpcs, int heuristicMultiplier,

        int turnCost, bool exitOnDisconnect, int accuracyZ = 255, bool optimized = true,

        bool betweenTwoCorners = false)`

Risultato: int.

Chiamate: Invoke.

Codice interno di implementazione; non è uno script autonomo.

public int MoveTo(int x, int y, int z, int accuracy, bool running, int staminaThreshold,

            bool openDoor, bool throughCorner, bool throughNpcs, int heuristicMultiplier,

            int turnCost, bool exitOnDisconnect, int accuracyZ = 255, bool optimized = true,

            bool betweenTwoCorners = false) => Invoke(() =>

        {

            if (_world.Player == null) return 0;

            _manager.StopFollowing();

            Pathfinder pathfinder = _world.Player.Pathfinder;

            bool started = pathfinder.WalkTo(

                x,

                y,

                z,

                Math.Clamp(accuracy, 0, 20),

                running,

                Math.Max(0, staminaThreshold),

                openDoor,

                throughCorner,

                throughNpcs,

                Math.Max(1, heuristicMultiplier),

                Math.Max(0, turnCost),

                exitOnDisconnect,

                Math.Clamp(accuracyZ, 0, 255),

                optimized,

                betweenTwoCorners,

                ScriptPathObstacles.Create(_csharpState, this), incremental: true);

            if (started)

            {

                _lastMovementPathfinder = pathfinder;

                _lastMovementPlayer = _world.Player;

                _lastMovementMap = _world.Map;

                _lastMovementMapIndex = _world.MapIndex;

                Interlocked.Exchange(ref _lastMovementRequestId, pathfinder.AutoWalkRequestGeneration);

                _pathCancellation.Unregister();

                long generation = pathfinder.AutoWalkGeneration;

                if (pathfinder.AutoWalking)

                    _pathCancellation = _cancellationToken.Register(() => _manager.ReleaseScriptMovement(pathfinder, generation));

            }

            return started ? 1 : 0;

        });

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ReceiveObjectName

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: id, delay

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1317.

public void ReceiveObjectName(int id, int delay)

Risultato: void.

Chiamate: Click, Stopwatch.StartNew, Math.Max, string.IsNullOrEmpty, GetName, Wait, Math.Min.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void ReceiveObjectName(int id, int delay)

        {

            Click(id);

            var elapsed = Stopwatch.StartNew();

            while (elapsed.ElapsedMilliseconds < Math.Max(0, delay) && string.IsNullOrEmpty(GetName(id)))

                Wait((int)Math.Min(25, Math.Max(1L, delay - elapsed.ElapsedMilliseconds)));

        }

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.RequestVirtuesGump

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: Nessun parametro.

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:292.

public void RequestVirtuesGump()

Risultato: void.

Chiamate: Invoke.

Chiamate:

  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke: Invoke(() => { if (_world.Player != null) GameActions.ReplyGump(_world.Player, 0x000001CD, 0x00000001, new[] { _world.Player.Serial }, Array.Empty<Tuple<ushort, string>>()); }). Candidati di overload: l’origine non conferma il candidato selezionato.
  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke: Invoke(() => { if (_world.Player != null) GameActions.ReplyGump(_world.Player, 0x000001CD, 0x00000001, new[] { _world.Player.Serial }, Array.Empty<Tuple<ushort, string>>()); }). Candidati di overload: l’origine non conferma il candidato selezionato.
  • ClassicUO.Game.GameActions.ReplyGump: GameActions.ReplyGump(_world.Player, 0x000001CD, 0x00000001, new[] { _world.Player.Serial }, Array.Empty<Tuple<ushort, string>>()).

Codice interno di implementazione; non è uno script autonomo.

public void RequestVirtuesGump() => Invoke(() =>

        {

            if (_world.Player != null)

                GameActions.ReplyGump(_world.Player, 0x000001CD, 0x00000001, new[] { _world.Player.Serial }, Array.Empty<Tuple<ushort, string>>());

        });

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ResolveGumpUnsafe

Analizza o risolve l’argomento secondo le regole mostrate nel codice.

Parametri: gumpId

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:3915.

private Gump ResolveGumpUnsafe(int gumpId)

Risultato: Gump.

Risultato: _selectedServerGump != null && !_selectedServerGump.IsDisposed ? _selectedServerGump : gumps.LastOrDefault().

Chiamate: ServerGumpsUnsafe, gumps.LastOrDefault, gumps.FirstOrDefault.

Condizioni: gumpId == -1.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

private Gump ResolveGumpUnsafe(int gumpId)

        {

            List<Gump> gumps = ServerGumpsUnsafe();

            if (gumpId == -1)

            {

                return _selectedServerGump != null && !_selectedServerGump.IsDisposed ? _selectedServerGump : gumps.LastOrDefault();

            }

            return gumps.FirstOrDefault(g => g.LocalSerial == (uint)gumpId || g.ServerSerial == (uint)gumpId)

                ?? (gumpId >= 0 && gumpId < gumps.Count ? gumps[gumpId] : null);

        }

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.SelectContainer

Restituisce il valore dell’espressione seguente.

Parametri: Nessun parametro.

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:738.

public int SelectContainer()

Risultato: int.

Risultato: SelectObject() is Item item ? (int)item.Serial : 0.

Chiamate: SelectObject.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int SelectContainer() => SelectObject() is Item item ? (int)item.Serial : 0;

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.SendServerSpeech

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: command, message

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1404.

private void SendServerSpeech(string command, string message)

Risultato: void.

Chiamate: Invoke.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

private void SendServerSpeech(string command, string message) => Invoke(() =>

        {

            GameActions.Say(message ?? string.Empty, allowYokoCommand: SCRIPT_SAY_ALLOW_YOKO_COMMAND);

            ReportStatus($"{command} delivered through ClassicUO server speech");

        });

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.StartScript

Restituisce il valore dell’espressione seguente.

Parametri: path

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:318.

public int StartScript(string path)

Risultato: int.

Risultato: _manager.StartScript(path).

Chiamate: _manager.StartScript.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int StartScript(string path) => _manager.StartScript(path);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ToClassicUOCastIndex

Restituisce il valore dell’espressione seguente.

Parametri: spellId

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2193.

internal static int ToClassicUOCastIndex(int spellId)

Risultato: int.

Risultato: spellId.

Codice interno di implementazione; non è uno script autonomo.

internal static int ToClassicUOCastIndex(int spellId) => spellId;

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.TryMoveItemRequest

Restituisce il valore dell’espressione seguente.

Parametri: id, amount, destination, x, y, z

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1171.

private bool TryMoveItemRequest(int id, int amount, int destination, int x, int y, int z)

Risultato: bool.

Risultato: TryMoveItemRequest(_world, id, amount, destination, x, y, z).

Chiamate: TryMoveItemRequest.

Codice interno di implementazione; non è uno script autonomo.

private bool TryMoveItemRequest(int id, int amount, int destination, int x, int y, int z)

            => TryMoveItemRequest(_world, id, amount, destination, x, y, z);

ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.UseAbility

Restituisce il valore dell’espressione seguente.

Parametri: abilityId

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2226.

public int UseAbility(int abilityId)

Risultato: int.

Chiamate: Invoke.

Chiamate:

  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke: Invoke(() => { if (_world.Player == null || abilityId < 1 || abilityId > AbilityData.Abilities.Length) return 0; int primary = (byte)_world.Player.Abilities[0] & 0x7F; int secondary = (byte)_world.Player.Abilities[1] & 0x7F; if (abilityId == primary) { GameActions.UsePrimaryAbility(_world); return 1; } if (abilityId == secondary) { GameActions.UseSecondaryAbility(_world); return 1; } return 0; }). Candidati di overload: l’origine non conferma il candidato selezionato.
  • ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke: Invoke(() => { if (_world.Player == null || abilityId < 1 || abilityId > AbilityData.Abilities.Length) return 0; int primary = (byte)_world.Player.Abilities[0] & 0x7F; int secondary = (byte)_world.Player.Abilities[1] & 0x7F; if (abilityId == primary) { GameActions.UsePrimaryAbility(_world); return 1; } if (abilityId == secondary) { GameActions.UseSecondaryAbility(_world); return 1; } return 0; }). Candidati di overload: l’origine non conferma il candidato selezionato.
  • ClassicUO.Game.GameActions.UsePrimaryAbility: GameActions.UsePrimaryAbility(_world).
  • ClassicUO.Game.GameActions.UseSecondaryAbility: GameActions.UseSecondaryAbility(_world).

Codice interno di implementazione; non è uno script autonomo.

public int UseAbility(int abilityId) => Invoke(() =>

        {

            if (_world.Player == null || abilityId < 1 || abilityId > AbilityData.Abilities.Length)

                return 0;



            int primary = (byte)_world.Player.Abilities[0] & 0x7F;

            int secondary = (byte)_world.Player.Abilities[1] & 0x7F;

            if (abilityId == primary)

            {

                GameActions.UsePrimaryAbility(_world);

                return 1;

            }

            if (abilityId == secondary)

            {

                GameActions.UseSecondaryAbility(_world);

                return 1;

            }

            return 0;

        });

ClassicUO.Game.Managers.YokoIdeToolBuffers.AppendOutput

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: scriptKey, text

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/YokoIdeToolBuffers.cs:124.

internal void AppendOutput(string scriptKey, string text)

Risultato: void.

Chiamate: _output.Add, _clock, NormalizeKey, NormalizeText, TrimOldest.

Codice interno di implementazione; non è uno script autonomo.

internal void AppendOutput(string scriptKey, string text)
        {
            lock (_sync)
            {
                _output.Add(new YokoOutputEntry
                {
                    Sequence = ++_sequence,
                    Timestamp = _clock(),
                    ScriptKey = NormalizeKey(scriptKey),
                    Text = NormalizeText(text)
                });
                TrimOldest(_output);
                _revision++;
            }
        }

ClassicUO.Game.Managers.YokoInjectionManager.InvokeOnGameThread

Passa il lavoro al thread di gioco e rispetta l’annullamento.

Parametri: callback, cancellationToken

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/YokoInjectionManager.cs:3488.

internal void InvokeOnGameThread(Action callback, CancellationToken cancellationToken)

Risultato: void.

Chiamate: InvokeOnGameThread.

Codice interno di implementazione; non è uno script autonomo.

internal void InvokeOnGameThread(Action callback, CancellationToken cancellationToken)
        {
            InvokeOnGameThread(() =>
            {
                callback();
                return true;
            }, cancellationToken);
        }

ClassicUO.Game.Managers.YokoInjectionManager.PauseResumeScript

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: index

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/YokoInjectionManager.cs:2841.

internal void PauseResumeScript(int index)

Risultato: void.

Chiamate: ElementAt, RunningScripts, script.ToggleManualPause, MarkRuntimeStateChanged.

Condizioni: script == null.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

internal void PauseResumeScript(int index)
        {
            YokoRunningScript script = ElementAt(RunningScripts(), index);
            if (script == null)
                return;

            script.ToggleManualPause();
            MarkRuntimeStateChanged();
        }

ClassicUO.Game.Managers.YokoInjectionManager.SetStatus

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: text, scriptKey

Origine: Project_Full/src/ClassicUO.Client/Game/Managers/YokoInjectionManager.cs:3749.

internal void SetStatus(string text, string scriptKey = null)

Risultato: void.

Chiamate: IsScriptPublicationCurrent, Volatile.Write, PublishStatus.

Condizioni: !IsScriptPublicationCurrent(scriptKey).

Codice interno di implementazione; non è uno script autonomo.

internal void SetStatus(string text, string scriptKey = null)
        {
            if (!IsScriptPublicationCurrent(scriptKey))
                return;
            Volatile.Write(ref _statusPriority, 1);
            PublishStatus(text, scriptKey);
        }

ClassicUO.Game.SerialHelper.IsMobile

Restituisce il valore dell’espressione seguente.

Parametri: serial

Origine: Project_Full/src/ClassicUO.Client/Game/SerialHelper.cs:16.

public static bool IsMobile(uint serial)

Risultato: bool.

Risultato: serial > 0 && serial < 0x40000000.

Codice interno di implementazione; non è uno script autonomo.

[MethodImpl(MethodImplOptions.AggressiveInlining)]
        public static bool IsMobile(uint serial)
        {
            return serial > 0 && serial < 0x40000000;
        }

ClassicUO.Game.World.ChangeSeason

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: season, music

Origine: Project_Full/src/ClassicUO.Client/Game/World.cs:321.

public void ChangeSeason(Season season, int music)

Risultato: void.

Chiamate: Map.GetUsedChunks, .GetHeadObject, obj.UpdateGraphicBySeason, .GetCurrentMusic, audio.PlayMusic.

Condizioni: audio != null && (currentMusic == null || currentMusic.Index == audio.LoginMusicIndex).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void ChangeSeason(Season season, int music)

        {

            Season = season;



            foreach (Chunk chunk in Map.GetUsedChunks())

            {

                for (int x = 0; x < 8; x++)

                {

                    for (int y = 0; y < 8; y++)

                    {

                        for (GameObject obj = chunk?.GetHeadObject(x, y); obj != null; obj = obj.TNext)

                        {

                            obj.UpdateGraphicBySeason();

                        }

                    }

                }

            }



            //TODO(deccer): refactor this out into _audioPlayer.PlayMusic(...)

            var audio = Client.Game?.Audio;

            UOMusic currentMusic = audio?.GetCurrentMusic();

            if (audio != null && (currentMusic == null || currentMusic.Index == audio.LoginMusicIndex))

            {

                audio.PlayMusic(music, false);

            }

        }

InjectionScript.Runtime.InjectionApi.GetWord

Restituisce il valore dell’espressione seguente.

Parametri: value, wordIndex

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApi.cs:41.

private static string GetWord(string value,int wordIndex)

Risultato: string.

Risultato: GetWord(value,wordIndex," ").

Chiamate: GetWord.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

private static string GetWord(string value,int wordIndex) => GetWord(value,wordIndex," ");

InjectionScript.Runtime.InjectionApi.SplitWords

Restituisce il valore dell’espressione seguente.

Parametri: value, delimiter

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApi.cs:36.

private static string[] SplitWords(string value,string delimiter)

Risultato: string[].

Risultato: string.IsNullOrEmpty(delimiter)||delimiter==" "?value.Split((char[])null,StringSplitOptions.RemoveEmptyEntries):value.Split(new[]{delimiter},StringSplitOptions.RemoveEmptyEntries).

Chiamate: string.IsNullOrEmpty, value.Split.

Codice interno di implementazione; non è uno script autonomo.

private static string[] SplitWords(string value,string delimiter)
        {
            value=value??string.Empty;
            return string.IsNullOrEmpty(delimiter)||delimiter==" "?value.Split((char[])null,StringSplitOptions.RemoveEmptyEntries):value.Split(new[]{delimiter},StringSplitOptions.RemoveEmptyEntries);
        }

InjectionScript.Runtime.InjectionApiUO.CalculateDirection

Verifica le condizioni seguenti e restituisce il risultato mostrato.

Parametri: fromX, fromY, toX, toY

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2803.

private static int CalculateDirection(int fromX, int fromY, int toX, int toY)

Risultato: int.

Risultato: 100; dy < 0 ? 0 : 4; dx > 0 ? 2 : 6; dy < 0 ? 1 : 3; dy > 0 ? 5 : 7.

Chiamate: Math.Sign.

Condizioni: dx == 0 && dy == 0; dx == 0; dy == 0; dx > 0.

Codice interno di implementazione; non è uno script autonomo.

private static int CalculateDirection(int fromX, int fromY, int toX, int toY)

        {

            int dx = Math.Sign(toX - fromX);

            int dy = Math.Sign(toY - fromY);

            if (dx == 0 && dy == 0) return 100;

            if (dx == 0) return dy < 0 ? 0 : 4;

            if (dy == 0) return dx > 0 ? 2 : 6;

            if (dx > 0) return dy < 0 ? 1 : 3;

            return dy > 0 ? 5 : 7;

        }

InjectionScript.Runtime.InjectionApiUO.CompactAttackNearest

Verifica le condizioni seguenti e restituisce il risultato mostrato.

Parametri: values

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:4950.

private int CompactAttackNearest(InjectionValue[] values)

Risultato: int.

Risultato: 0; serial.

Chiamate: ResolveCompactDistance, bridge.GetFindDistance, ResolveCompactMaxZ, bridge.GetFindVertical, ToBoolean, NumberConversions.ToInt, TryResolveClassRules, FilterMobiles.

Condizioni: !TryResolveClassRules(classMask, out EquipmentClassRule[] rules); serial != 0.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

private int CompactAttackNearest(InjectionValue[] values)

        {

            InjectionValue notoriety = values[0];

            int distance = values.Length > 1 ? ResolveCompactDistance(values[1]) : bridge.GetFindDistance();

            InjectionValue body = values.Length > 2 ? values[2] : InjectionValue.MinusOne;

            int maxZ = values.Length > 3 ? ResolveCompactMaxZ(values[3]) : bridge.GetFindVertical();

            bool nearest = values.Length <= 4 || ToBoolean(values[4]);

            int color = values.Length > 5 ? NumberConversions.ToInt(values[5]) : -1;

            InjectionValue classMask = values.Length > 6 ? values[6] : default(InjectionValue);

            bool aliveOnly = values.Length > 7 && ToBoolean(values[7]);

            bool visibleOnly = values.Length > 8 && ToBoolean(values[8]);



            // Resolve once, before any attack. A misspelled/undefined class must

            // never degrade into an unrestricted search or a name substring match.

            if (!TryResolveClassRules(classMask, out EquipmentClassRule[] rules))

                return 0;

            IEnumerable<int> mobiles = FilterMobiles(distance, notoriety, body, maxZ, color, false,

                false, aliveOnly, visibleOnly);

            int serial = SelectClassCandidate(mobiles, rules, nearest);

            if (serial != 0)

                bridge.Attack(serial);

            return serial;

        }

InjectionScript.Runtime.InjectionApiUO.CompactWaitGump

Verifica le condizioni seguenti e restituisce il risultato mostrato.

Parametri: values

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3143.

private int CompactWaitGump(InjectionValue[] values)

Risultato: int.

Risultato: 1; 0.

Chiamate: CollectGumpButtons, automation.QueueGumpButtons, buttons.ToArray, CompactWaitGump, (value.String ?? string.Empty).Contains, `(value.String ?? string.Empty)

                    .Split(new[] { '|', ',' }, StringSplitOptions.RemoveEmptyEntries)

                    .Select(part => new InjectionValue(part.Trim())).ToArray`, `(value.String ?? string.Empty)

                    .Split(new[] { '|', ',' }, StringSplitOptions.RemoveEmptyEntries)

                    .Select`, `(value.String ?? string.Empty)

                    .Split`.

Condizioni: values == null || values.Length == 0; bridge is IApiGumpAutomation automation; value.Kind == InjectionValueKind.Array; CompactWaitGump(value.Array) == 0.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

private int CompactWaitGump(InjectionValue[] values)

        {

            if (values == null || values.Length == 0)

                throw new NativeSubrutineException("UO.WaitGump requires at least one trigger/button id.");



            if (bridge is IApiGumpAutomation automation)

            {

                var buttons = new List<int>();

                CollectGumpButtons(values, buttons);

                automation.QueueGumpButtons(buttons.ToArray());

                return 1;

            }



            foreach (InjectionValue value in values)

            {

                if (value.Kind == InjectionValueKind.Array)

                {

                    if (CompactWaitGump(value.Array) == 0)

                        return 0;

                    continue;

                }



                if (value.Kind == InjectionValueKind.String

                    && ((value.String ?? string.Empty).Contains('|') || (value.String ?? string.Empty).Contains(',')))

                {

                    InjectionValue[] nested = (value.String ?? string.Empty)

                        .Split(new[] { '|', ',' }, StringSplitOptions.RemoveEmptyEntries)

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

                    if (CompactWaitGump(nested) == 0)

                        return 0;

                    continue;

                }



                int triggerId = NumberConversions.ToInt(value);

                if (bridge.WaitGumpSelect(triggerId, 30_000) == 0)

                    return 0;

            }

            return 1;

        }

InjectionScript.Runtime.InjectionApiUO.ConvertLayer

Verifica le condizioni seguenti e restituisce il risultato mostrato.

Parametri: layer

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:6405.

private int ConvertLayer(string layer)

Risultato: int.

Risultato: value.

Chiamate: layerNameToNumber.TryGetValue, (layer ?? string.Empty).Trim.

Condizioni: layerNameToNumber.TryGetValue((layer ?? string.Empty).Trim(), out int value).

Codice interno di implementazione; non è uno script autonomo.

private int ConvertLayer(string layer)

        {

            if (layerNameToNumber.TryGetValue((layer ?? string.Empty).Trim(), out int value))

                return value;

            throw new NativeSubrutineException($"Unknown equipment layer '{layer}'. Use a documented layer such as Rhand, Lhand, Helmet, Necklace, Backpack, Robe, Legs, or Mount.");

        }

InjectionScript.Runtime.InjectionApiUO.ConvertMoveDestination

Verifica le condizioni seguenti e restituisce il risultato mostrato.

Parametri: containerId

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:6361.

private int ConvertMoveDestination(InjectionValue containerId)

Risultato: int.

Risultato: ResolveTransferDestination(backpack ? new InjectionValue("backpack") : containerId, allowGround: true).

Chiamate: NumberConversions.TryStr2Int, .Trim, ResolveTransferDestination.

Condizioni: containerId.Kind != InjectionValueKind.String && containerId.Kind != InjectionValueKind.Integer.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

private int ConvertMoveDestination(InjectionValue containerId)

        {

            if (containerId.Kind != InjectionValueKind.String && containerId.Kind != InjectionValueKind.Integer)

                throw new NativeSubrutineException("A move destination must be an object name or serial ID.");

            // Preserve the legacy -1 backpack selector. Resolve names before

            // lifting: a misspelled or unset container must never become ground.

            bool backpack = containerId.Kind == InjectionValueKind.Integer

                ? containerId.Integer == -1

                : NumberConversions.TryStr2Int(containerId.String?.Trim() ?? string.Empty, out int literal) && literal == -1;

            return ResolveTransferDestination(backpack ? new InjectionValue("backpack") : containerId, allowGround: true);

        }

InjectionScript.Runtime.InjectionApiUO.Count

Restituisce il valore dell’espressione seguente.

Parametri: type

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5208.

public int Count(InjectionValue type)

Risultato: int.

Risultato: Count(ResolveType(type), -1, -1).

Chiamate: Count, ResolveType.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int Count(InjectionValue type) 

            => Count(ResolveType(type), -1, -1);

InjectionScript.Runtime.InjectionApiUO.DeleteJournal

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: text

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5401.

public void DeleteJournal(string text)

Risultato: void.

Chiamate: bridge.DeleteJournal, SelectJournalEntry.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void DeleteJournal(string text)

        {

            bridge.DeleteJournal(text);

            SelectJournalEntry(null);

        }

InjectionScript.Runtime.InjectionApiUO.DeleteObject

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: name

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3809.

public void DeleteObject(string name)

Risultato: void.

Chiamate: objects.TryGet, objects.Remove, SystemMessage.

Condizioni: objects.TryGet(name, out int value).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void DeleteObject(string name)

        {

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

            {

                objects.Remove(name);

                SystemMessage($"Object {name} has been deleted");

            }

            else

                SystemMessage($"Object {name} not found");

        }

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Text

Restituisce il valore dell’espressione seguente.

Parametri: index

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1144.

string Text(int index)

Risultato: string.

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

Chiamate: arguments[index].ToString.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

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

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1231.

Risultato: InjectionValue.Unit.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "addtojournal":

                case "addtosystemjournal":

                case "clientprint":

                    SystemMessage(Text(0)); return InjectionValue.Unit;

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1286.

Risultato: InjectionValue.Unit.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "autobuyex":

                    bridge.SetAutoBuyRule(Arg(0), Arg(1), Arg(2), Arg(3), Text(4)); return InjectionValue.Unit;

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1550.

Risultato: new InjectionValue(bridge.CancelTrade(Arg(0))).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "canceltrade": return new InjectionValue(bridge.CancelTrade(Arg(0)));

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1306.

Risultato: InjectionValue.Unit.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "connect": bridge.ConnectClient(); return InjectionValue.Unit;

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1565.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "dist": return new InjectionValue(arguments.Length >= 4

                    ? GetDistance(Arg(0), Arg(1), Arg(2), Arg(3))

                    : bridge.GetDistance(Arg(0)));

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1627.

Risultato: new InjectionValue(ChangeEquipmentItems(ArrayArg(0), true)).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "equipitems":

                    return new InjectionValue(ChangeEquipmentItems(ArrayArg(0), true));

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2005.

new []

Risultato: [].

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "extendedinfo":

                    return new InjectionValue(new[] { new InjectionValue(bridge.ClientPath), new InjectionValue(bridge.CurrentProfilePath), new InjectionValue(bridge.GameServerAddress), new InjectionValue(bridge.GameServerPort) });

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1476.

Risultato: new InjectionValue(bridge.FindType(ResolveType(arguments[0]), Arg(1), StealthContainer(2), -1, Arg(3) != 0)).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "findtypeex": return new InjectionValue(bridge.FindType(ResolveType(arguments[0]), Arg(1), StealthContainer(2), -1, Arg(3) != 0));

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1587.

Risultato: new InjectionValue(bridge.GetActiveAbility()).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "getactiveability": return new InjectionValue(bridge.GetActiveAbility());

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1590.

Risultato: StringArray(bridge.GetMenuItems(Text(0), false)).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "getmenuitems": return StringArray(bridge.GetMenuItems(Text(0), false));

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1919.

Risultato: InjectionValue.Unit.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "globalchatsendmsg": bridge.GlobalChatSend(Text(0)); return InjectionValue.Unit;

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1273.

Risultato: new InjectionValue(InJournal(Text(0))).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "injournal": return new InjectionValue(InJournal(Text(0)));

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2043.

Risultato: new InjectionValue(selectedJournalEntry?.Color ?? 0).

Codice interno di implementazione; non è uno script autonomo.

case "linetextcolor":

                    return new InjectionValue(selectedJournalEntry?.Color ?? 0);

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1534.

Risultato: new InjectionValue(ReadPredictedCoordinate(1)).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "predictedy": return new InjectionValue(ReadPredictedCoordinate(1));

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1594.

Risultato: InjectionValue.Unit.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "requestcontextmenu": bridge.RequestContextMenu(Arg(0)); return InjectionValue.Unit;

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1357.

Risultato: InjectionValue.Unit.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "setsilentmode": state.SilentMode = Arg(0) != 0 ? 1 : 0; return InjectionValue.Unit;

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1655.

Risultato: InjectionValue.Unit.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "setwarmode": WarMode(Arg(0)); return InjectionValue.Unit;

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1295.

Risultato: new InjectionValue(bridge.GetTargetCursorId()).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "targetid": return new InjectionValue(bridge.GetTargetCursorId());

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1250.

Risultato: InjectionValue.Unit.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "useobject": bridge.UseObject(Arg(0)); return InjectionValue.Unit;

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1681.

Risultato: InjectionValue.Unit.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "usesecondaryability": bridge.UseSecondaryAbility(); return InjectionValue.Unit;

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1642.

Risultato: new InjectionValue(bridge.WaitUntilTargeting(Arg(0))).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "waitfortarget": return new InjectionValue(bridge.WaitUntilTargeting(Arg(0)));

InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1369.

Risultato: new InjectionValue(bridge.Weight).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "weight": return new InjectionValue(bridge.Weight);

InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2844.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "adddir":

                case "addfindlist":

                case "addgate":

                case "addrecall":

                case "addstep":

                    LegacyList(name).Add(string.Join("|", arguments.Select(value => value.ToString())));

                    break;

InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2876.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "cancelmenu": bridge.ClearMenuHooks(); break;

InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2858.

Condizioni: arguments.Length == 0.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "clearfindlist":

                    if (arguments.Length == 0) LegacyList("AddFindList").Clear();

                    else LegacyList("AddFindList").RemoveAll(value => value.Split('|')[0]

                        .Equals(Text(0), StringComparison.OrdinalIgnoreCase));

                    break;

InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2888.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "closeuo": bridge.CloseHandle(); break;

InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2991.

Condizioni: arguments.Length == 0.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "massmove":

                    if (arguments.Length == 0) bridge.MassMove(-1, 0, 0, -1, -1, -1, 0);

                    else bridge.MassMove(NumberConversions.ToInt(arguments[0]),

                        arguments.Length > 1 ? NumberConversions.ToInt(arguments[1]) : 0,

                        arguments.Length > 2 ? ResolveType(arguments[2]) : 0,

                        arguments.Length > 3 ? ResolveTransferDestination(arguments[3], true) : -1,

                        arguments.Length > 4 ? NumberConversions.ToInt(arguments[4]) : -1,

                        arguments.Length > 5 ? NumberConversions.ToInt(arguments[5]) : -1,

                        arguments.Length > 6 ? NumberConversions.ToInt(arguments[6]) : 0);

                    break;

InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3001.

Condizioni: arguments.Length == 0.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "masspricemove":

                    if (arguments.Length == 0) bridge.MassPriceMove(-1, 0, 0, 0, -1, -1, -1, 0);

                    else bridge.MassPriceMove(NumberConversions.ToInt(arguments[0]),

                        NumberConversions.ToInt(arguments[1]), ResolveType(arguments[2]),

                        NumberConversions.ToInt(arguments[3]),

                        arguments.Length > 4 ? ResolveTransferDestination(arguments[4], true) : -1,

                        arguments.Length > 5 ? NumberConversions.ToInt(arguments[5]) : -1,

                        arguments.Length > 6 ? NumberConversions.ToInt(arguments[6]) : -1,

                        arguments.Length > 7 ? NumberConversions.ToInt(arguments[7]) : 0);

                    break;

InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias

Questo ramo gestisce soltanto il nome del comando indicato.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3020.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

case "resend": bridge.Resync(); break;

InjectionScript.Runtime.InjectionApiUO.Exists

Restituisce il valore dell’espressione seguente.

Parametri: id

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3740.

public int Exists(int id)

Risultato: int.

Risultato: bridge.Exists(id).

Chiamate: bridge.Exists.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

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

InjectionScript.Runtime.InjectionApiUO.GetLandTileAt

Restituisce il valore dell’espressione seguente.

Parametri: x, y

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:6188.

public InjectionValue GetLandTileAt(InjectionValue x, InjectionValue y)

Risultato: InjectionValue.

Risultato: GetLandTileAt(x, y, new InjectionValue(bridge.WorldNumber)).

Chiamate: GetLandTileAt.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public InjectionValue GetLandTileAt(InjectionValue x, InjectionValue y)

            => GetLandTileAt(x, y, new InjectionValue(bridge.WorldNumber));

InjectionScript.Runtime.InjectionApiUO.GetObject

Verifica le condizioni seguenti e restituisce il risultato mostrato.

Parametri: name

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3888.

public int GetObject(string name)

Risultato: int.

Risultato: 0; id.

Chiamate: TryGetObject.

Condizioni: !TryGetObject(name, out int id).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int GetObject(string name)

        {

            if (!TryGetObject(name, out int id))

                return 0;



            return id;

        }

InjectionScript.Runtime.InjectionApiUO.GetTileName

Restituisce il valore dell’espressione seguente.

Parametri: group, tileId

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:6257.

public string GetTileName(InjectionValue group, InjectionValue tileId)

Risultato: string.

Risultato: bridge.GetTileDataName(NumberConversions.ToInt(group), NumberConversions.ToInt(tileId)).

Chiamate: bridge.GetTileDataName, NumberConversions.ToInt.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public string GetTileName(InjectionValue group, InjectionValue tileId)

            => bridge.GetTileDataName(NumberConversions.ToInt(group), NumberConversions.ToInt(tileId));

InjectionScript.Runtime.InjectionApiUO.GetUserStatic

Restituisce il valore dell’espressione seguente.

Parametri: id

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:6274.

public string GetUserStatic(InjectionValue id)

Risultato: string.

Risultato: state.UserStatics.TryGetValue(NumberConversions.ToInt(id), out string value) ? value : string.Empty.

Chiamate: state.UserStatics.TryGetValue, NumberConversions.ToInt.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public string GetUserStatic(InjectionValue id)

            => state.UserStatics.TryGetValue(NumberConversions.ToInt(id), out string value) ? value : string.Empty;

InjectionScript.Runtime.InjectionApiUO.GetY

Restituisce il valore dell’espressione seguente.

Parametri: id

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3564.

public int GetY(string id)

Risultato: int.

Risultato: GetY(GetObject(id)).

Chiamate: GetY, GetObject.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int GetY(string id) => GetY(GetObject(id));

InjectionScript.Runtime.InjectionApiUO.Hidden

Restituisce il valore dell’espressione seguente.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3766.

public int Hidden()

Risultato: int.

Risultato: Hidden("self").

Chiamate: Hidden.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int Hidden() => Hidden("self");

InjectionScript.Runtime.InjectionApiUO.Ignore

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: id

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5222.

public void Ignore(int id)

Risultato: void.

Chiamate: bridge.Ignore.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void Ignore(int id) => bridge.Ignore(id);

InjectionScript.Runtime.InjectionApiUO.InJournal

Restituisce il valore dell’espressione seguente.

Parametri: pattern, maxLinesOrIgnoreCase

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5345.

public int InJournal(string pattern, int maxLinesOrIgnoreCase)

Risultato: int.

Chiamate: InJournalCore, Math.Max.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int InJournal(string pattern, int maxLinesOrIgnoreCase)

            => InJournalCore(pattern,

                maxLinesOrIgnoreCase == -1 ? -1 : Math.Max(0, maxLinesOrIgnoreCase),

                ignoreCase: maxLinesOrIgnoreCase == -1);

InjectionScript.Runtime.InjectionApiUO.IsHumanBody

Restituisce il valore dell’espressione seguente.

Parametri: graphic

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3731.

private static bool IsHumanBody(int graphic)

Risultato: bool.

Codice interno di implementazione; non è uno script autonomo.

private static bool IsHumanBody(int graphic) => graphic == 0x0190 || graphic == 0x0191

            || graphic == 0x0192 || graphic == 0x0193 || graphic == 0x025D || graphic == 0x025E

            || graphic == 0x025F || graphic == 0x0260 || graphic == 0x029A || graphic == 0x029B

            || graphic == 0x02B6 || graphic == 0x02B7;

InjectionScript.Runtime.InjectionApiUO.IsTreeTile

Restituisce il valore dell’espressione seguente.

Parametri: x, y

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3306.

public int IsTreeTile(InjectionValue x, InjectionValue y)

Risultato: int.

Risultato: bridge.IsTreeTile(NumberConversions.ToInt(x), NumberConversions.ToInt(y)).

Chiamate: bridge.IsTreeTile, NumberConversions.ToInt.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int IsTreeTile(InjectionValue x, InjectionValue y) => bridge.IsTreeTile(NumberConversions.ToInt(x), NumberConversions.ToInt(y));

InjectionScript.Runtime.InjectionApiUO.JournalEntryTime

Restituisce il valore dell’espressione seguente.

Parametri: index

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5512.

private int JournalEntryTime(int index)

Risultato: int.

Risultato: JournalEntryTime(bridge.JournalTimestamp(index)).

Chiamate: JournalEntryTime, bridge.JournalTimestamp.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

private int JournalEntryTime(int index)

            => JournalEntryTime(bridge.JournalTimestamp(index));

InjectionScript.Runtime.InjectionApiUO.Morph

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: type

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5899.

public void Morph(int type)

Risultato: void.

Chiamate: bridge.Morph, Timer.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void Morph(int type)

        {

            bridge.Morph(type);

            ticksAnim = Timer();

        }

InjectionScript.Runtime.InjectionApiUO.MoveItemChecked

Verifica le condizioni seguenti e restituisce il risultato mostrato.

Parametri: id, amount, targetContainer, x, y, z

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:4566.

private bool MoveItemChecked(int id, int amount, int targetContainer, int x, int y, int z)

Risultato: bool.

Risultato: false; bridge.MoveItem(id, amount, targetContainer, x, y, z) != 0.

Chiamate: bridge.GetX, bridge.GetY, Math.Max, Math.Abs, SystemMessage, bridge.MoveItem.

Condizioni: id == 0; targetContainer == 0 && state.DropCheckCoord != 0; Math.Max(Math.Abs(x - playerX), Math.Abs(y - playerY)) > 2.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

private bool MoveItemChecked(int id, int amount, int targetContainer, int x, int y, int z)

        {

            if (id == 0)

                return false;

            if (targetContainer == 0 && state.DropCheckCoord != 0)

            {

                int playerX = bridge.GetX(bridge.Self);

                int playerY = bridge.GetY(bridge.Self);

                if (Math.Max(Math.Abs(x - playerX), Math.Abs(y - playerY)) > 2)

                {

                    SystemMessage("Drop cancelled: destination is more than 2 tiles away (DropCheckCoord is enabled).");

                    return false;

                }

            }



            return bridge.MoveItem(id, amount, targetContainer, x, y, z) != 0;

        }

InjectionScript.Runtime.InjectionApiUO.NormalizeApiName

Restituisce il valore dell’espressione seguente.

Parametri: name

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5203.

private static string NormalizeApiName(string name)

Risultato: string.

Risultato: (name ?? string.Empty).Trim().

Chiamate: (name ?? string.Empty).Trim.

Codice interno di implementazione; non è uno script autonomo.

private static string NormalizeApiName(string name)

        {

            return (name ?? string.Empty).Trim();

        }

InjectionScript.Runtime.InjectionApiUO.RDblClick

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: x, y

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5242.

public void RDblClick(int x, int y)

Risultato: void.

Chiamate: bridge.RDblClick.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void RDblClick(int x, int y) => bridge.RDblClick(x, y);

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases::AddText

Queste funzioni registrano l’API. Non vengono eseguite di nuovo a ogni chiamata del comando.

Parametri: getter, names

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:993.

void AddText(Func<string> getter, params string[] names)

Risultato: void.

Chiamate: metadata.NativeSubrutineExists, metadata.Add, metadata.IntrinsicVariableExists, metadata.AddIntrinsicVariable.

Condizioni: !metadata.NativeSubrutineExists(name, 0); !metadata.IntrinsicVariableExists(name).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

void AddText(Func<string> getter, params string[] names)

            {

                foreach (string shortName in names)

                {

                    string name = "UO." + shortName;

                    if (!metadata.NativeSubrutineExists(name, 0))

                        metadata.Add(new NativeSubrutineDefinition(name, getter));

                    if (!metadata.IntrinsicVariableExists(name))

                        metadata.AddIntrinsicVariable(new NativeSubrutineDefinition(name, getter));

                }

            }

InjectionScript.Runtime.InjectionApiUO.ResolveCompactDistance

Analizza o risolve l’argomento secondo le regole mostrate nel codice.

Parametri: value

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5093.

private int ResolveCompactDistance(InjectionValue value)

Risultato: int.

Risultato: parsed < 0 ? bridge.GetFindDistance() : Math.Max(0, parsed).

Chiamate: NumberConversions.ToInt, bridge.GetFindDistance, Math.Max.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

private int ResolveCompactDistance(InjectionValue value)

        {

            int parsed = NumberConversions.ToInt(value);

            return parsed < 0 ? bridge.GetFindDistance() : Math.Max(0, parsed);

        }

InjectionScript.Runtime.InjectionApiUO.SetArm

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: name

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5587.

public void SetArm(string name)

Risultato: void.

Chiamate: SetEquip.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void SetArm(string name)

            => SetEquip(name, armSets, weaponLayers, "Arm set.");

InjectionScript.Runtime.InjectionApiUO.SetEvent

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: name, stateValue, repeatOrHandler

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:6004.

public void SetEvent(InjectionValue name, InjectionValue stateValue, InjectionValue repeatOrHandler)

Risultato: void.

Chiamate: repeatOrHandler.ToString, string.IsNullOrWhiteSpace, NumberConversions.TryStr2Int, SetEvent.

Condizioni: !string.IsNullOrWhiteSpace(raw) && !NumberConversions.TryStr2Int(raw, out _).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void SetEvent(InjectionValue name, InjectionValue stateValue, InjectionValue repeatOrHandler)

        {

            string raw = repeatOrHandler.ToString() ?? string.Empty;

            if (!string.IsNullOrWhiteSpace(raw) && !NumberConversions.TryStr2Int(raw, out _))

                SetEvent(name, stateValue, InjectionValue.True, repeatOrHandler);

            else

                SetEvent(name, stateValue, repeatOrHandler, new InjectionValue(string.Empty));

        }

InjectionScript.Runtime.InjectionApiUO.SetJournalLine

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: index

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5414.

public void SetJournalLine(int index)

Risultato: void.

Chiamate: bridge.SetJournalLine.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void SetJournalLine(int index) => bridge.SetJournalLine(index);

InjectionScript.Runtime.InjectionApiUO.Terminate

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5912.

public void Terminate()

Risultato: void.

Chiamate: bridge.Terminate.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void Terminate() => bridge.Terminate(string.Empty);

InjectionScript.Runtime.InjectionApiUO.Terminate

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: subrutineName

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5911.

public void Terminate(string subrutineName)

Risultato: void.

Chiamate: bridge.Terminate.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void Terminate(string subrutineName) => bridge.Terminate(subrutineName);

InjectionScript.Runtime.InjectionApiUO.TextOpen

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5315.

public void TextOpen()

Risultato: void.

Chiamate: bridge.TextOpen.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

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

InjectionScript.Runtime.InjectionApiUO.Track

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: flag

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5989.

public void Track(InjectionValue flag)

Risultato: void.

Chiamate: Track, NumberConversions.ToInt, GetX, GetY.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void Track(InjectionValue flag) => Track(NumberConversions.ToInt(flag), GetX(), GetY());

InjectionScript.Runtime.InjectionApiUO.TradeCheck

Restituisce il valore dell’espressione seguente.

Parametri: windowIndex, checkbox, stateValue

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3294.

public int TradeCheck(InjectionValue windowIndex, InjectionValue checkbox, InjectionValue stateValue)

Risultato: int.

Risultato: bridge.TradeCheck(NumberConversions.ToInt(windowIndex), NumberConversions.ToInt(checkbox), NumberConversions.ToInt(stateValue), true).

Chiamate: bridge.TradeCheck, NumberConversions.ToInt.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int TradeCheck(InjectionValue windowIndex, InjectionValue checkbox, InjectionValue stateValue)

            => bridge.TradeCheck(NumberConversions.ToInt(windowIndex), NumberConversions.ToInt(checkbox), NumberConversions.ToInt(stateValue), true);

InjectionScript.Runtime.InjectionApiUO.Unequip

Verifica le condizioni seguenti e restituisce il risultato mostrato.

Parametri: supportedLayers, successMessage

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5699.

private int Unequip(int[] supportedLayers, string successMessage)

Risultato: int.

Risultato: success ? 1 : 0.

Chiamate: bridge.ObjAtLayer, bridge.Unequip, injectionApi.Wait, SystemMessage.

Condizioni: bridge.ObjAtLayer(layer) != 0; state.DressSpeed > 0.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

private int Unequip(int[] supportedLayers, string successMessage)

        {

            bool success = true;

            foreach (var layer in supportedLayers)

            {

                if (bridge.ObjAtLayer(layer) != 0)

                {

                    success &= bridge.Unequip(layer) != 0;

                    if (state.DressSpeed > 0)

                        injectionApi.Wait(state.DressSpeed);

                }

            }



            SystemMessage(success ? successMessage : "Some equipment could not be removed.");

            return success ? 1 : 0;

        }

InjectionScript.Runtime.InjectionApiUO.UnsetReceivingContainer

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:4368.

public void UnsetReceivingContainer()

Risultato: void.

Chiamate: bridge.UnsetReceivingContainer.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

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

InjectionScript.Runtime.InjectionApiUO.UseObject

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: id

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3918.

public void UseObject(string id)

Risultato: void.

Chiamate: UseObject, GetObject.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

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

InjectionScript.Runtime.InjectionApiUO.UseType

Restituisce il valore dell’espressione seguente.

Parametri: type, color

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3975.

public int UseType(int type, int color)

Risultato: int.

Chiamate: CompactUseType.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int UseType(int type, int color) => CompactUseType(new[]

        {

            new InjectionValue(type),

            new InjectionValue(color)

        });

InjectionScript.Runtime.InjectionApiUO.WaitingForJournalText

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: startTime, maxDelay, text

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5417.

public void WaitingForJournalText(int startTime, int maxDelay, string text)

Risultato: void.

Chiamate: WaitingForJournalText.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void WaitingForJournalText(int startTime, int maxDelay, string text)

            => WaitingForJournalText(startTime, maxDelay, text, 0, 0, InjectionValue.Zero);

InjectionScript.Runtime.InjectionApiUO.WaitingForMenu

Verifica le condizioni seguenti e restituisce il risultato mostrato.

Parametri: delayValue, menuCountValue, blockMenuValue, menuNameValue, skillOrSerial

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3313.

public int WaitingForMenu(InjectionValue delayValue, InjectionValue menuCountValue, InjectionValue blockMenuValue, InjectionValue menuNameValue, InjectionValue skillOrSerial)

Risultato: int.

Risultato: 1; 0.

Chiamate: Math.Max, NumberConversions.ToInt, menuNameValue.ToString, timeSource.Now.AddMilliseconds, TriggerWaitAction, bridge.GetLastMenuIdentity, identity.Equals, bridge.GetLastMenuCaption.

Condizioni: identity.Length == 0; !identity.Equals(previousIdentity, StringComparison.Ordinal); observedMenuCount >= requiredMenuCount && nameMatches; blockMenu.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int WaitingForMenu(InjectionValue delayValue, InjectionValue menuCountValue, InjectionValue blockMenuValue, InjectionValue menuNameValue, InjectionValue skillOrSerial)

        {

            int delay = Math.Max(0, NumberConversions.ToInt(delayValue));

            int requiredMenuCount = Math.Max(1, NumberConversions.ToInt(menuCountValue));

            bool blockMenu = NumberConversions.ToInt(blockMenuValue) != 0;

            string expectedName = menuNameValue.ToString() ?? string.Empty;

            DateTime deadline = timeSource.Now.AddMilliseconds(delay);

            string previousIdentity = string.Empty;

            int observedMenuCount = 0;



            TriggerWaitAction(skillOrSerial);



            do

            {

                string identity = bridge.GetLastMenuIdentity() ?? string.Empty;

                if (identity.Length == 0)

                {

                    // Reset between server menus so an identical menu opened again

                    // still counts as a new appearance.

                    previousIdentity = string.Empty;

                }

                else if (!identity.Equals(previousIdentity, StringComparison.Ordinal))

                {

                    previousIdentity = identity;

                    observedMenuCount++;

                    string caption = bridge.GetLastMenuCaption() ?? string.Empty;

                    bool nameMatches = expectedName.Length == 0

                        || caption.Equals(expectedName, StringComparison.Ordinal);

                    if (observedMenuCount >= requiredMenuCount && nameMatches)

                    {

                        if (blockMenu)

                            bridge.CloseMenu();

                        return 1;

                    }

                }



                if (timeSource.Now >= deadline)

                    break;

                bridge.Wait(Math.Min(25, Math.Max(1, delay)));

            }

            while (true);



            return 0;

        }

InjectionScript.Runtime.InjectionApiUO.WaitingMenu

Restituisce il valore dell’espressione seguente.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3308.

public int WaitingMenu()

Risultato: int.

Risultato: bridge.WaitingMenu().

Chiamate: bridge.WaitingMenu.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public int WaitingMenu() => bridge.WaitingMenu();

InjectionScript.Runtime.InjectionApiUO.RegisterCompactSearchApi [FindMan]

La chiamata esegue il delegate del gestore memorizzato. Il metodo di registrazione lo crea durante la costruzione dell’API.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:4667.

values

Risultato: values.

Risultato: new InjectionValue(CompactFindMan(values)).

Chiamate: CompactFindMan.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

values => new InjectionValue(CompactFindMan(values))

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases [GetFollowersMax]

La chiamata esegue il delegate del gestore memorizzato. Il metodo di registrazione lo crea durante la costruzione dell’API.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1049.

Risultato: bridge.FollowersMax.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

() => bridge.FollowersMax

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases [GetIntelligence]

La chiamata esegue il delegate del gestore memorizzato. Il metodo di registrazione lo crea durante la costruzione dell’API.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1031.

Risultato: bridge.Intelligence.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

() => bridge.Intelligence

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases [GetStamina]

La chiamata esegue il delegate del gestore memorizzato. Il metodo di registrazione lo crea durante la costruzione dell’API.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1028.

Risultato: bridge.Stamina.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

() => bridge.Stamina

InjectionScript.Runtime.InjectionApiUO.Register [SkillVal]

La chiamata esegue il delegate del gestore memorizzato. Il metodo di registrazione lo crea durante la costruzione dell’API.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:693.

values

Risultato: values.

Risultato: new InjectionValue(SkillVal(values[0].ToString(), NumberConversions.ToInt(values[1]))).

Chiamate: SkillVal, values[0].ToString, NumberConversions.ToInt.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

values => new InjectionValue(SkillVal(values[0].ToString(), NumberConversions.ToInt(values[1])))

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases [Stamina]

La chiamata esegue il delegate del gestore memorizzato. Il metodo di registrazione lo crea durante la costruzione dell’API.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1028.

Risultato: bridge.Stamina.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

() => bridge.Stamina

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases [Strength]

La chiamata esegue il delegate del gestore memorizzato. Il metodo di registrazione lo crea durante la costruzione dell’API.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1030.

Risultato: bridge.Strength.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

() => bridge.Strength

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases

Restituisce il valore dell’espressione seguente.

Parametri: Nessun parametro.

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

value

Risultato: value.

Risultato: getter(GetObject(value)).

Chiamate: getter, GetObject.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

value => getter(GetObject(value))

InjectionScript.Runtime.InjectionApiUO.RegisterCharacterGetterAliases

Restituisce il valore dell’espressione seguente.

Parametri: Nessun parametro.

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

value

Risultato: value.

Risultato: getter(GetObject(value)).

Chiamate: getter, GetObject.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

value => getter(GetObject(value))

InjectionScript.Runtime.InjectionRuntime.CallNativeSubrutine

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: name, args

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/NativeConsoleDispatch.cs:280.

private void CallNativeSubrutine(string name, params InjectionValue[] args)

Risultato: void.

Chiamate: Checkpoint, Metadata.TryGetNativeSubrutine, nativeSubrutine.Call.

Condizioni: !Metadata.TryGetNativeSubrutine("UO." + name, args, out var nativeSubrutine).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

private void CallNativeSubrutine(string name, params InjectionValue[] args)
        {
            Checkpoint();
            if (!Metadata.TryGetNativeSubrutine("UO." + name, args, out var nativeSubrutine))
                throw new NativeSubrutineException($"Native UO command '{name}' with {args.Length} argument(s) was not found.");
            nativeSubrutine.Call(args);
            Checkpoint();
        }

InjectionScript.Runtime.InjectionRuntime.Exec

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: parameters

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/NativeConsoleDispatch.cs:10.

public void Exec(string parameters)

Risultato: void.

Chiamate: Tokenize(parameters).ToArray, Tokenize, command.Equals, string.IsNullOrWhiteSpace, bridge.Exec, parts.Skip(1).ToArray, parts.Skip, arguments.Select(token => token.Text).ToArray.

Condizioni: parts.Length == 0; command.Equals("exec", StringComparison.OrdinalIgnoreCase); parts.Length != 2 || string.IsNullOrWhiteSpace(parts[1].Text); TryHandleLegacyConsoleCommand(command, rawArguments).

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public void Exec(string parameters)
        {
            ConsoleToken[] parts = Tokenize(parameters).ToArray();
            if (parts.Length == 0)
                return;

            string command = parts[0].Text;
            if (command.Equals("exec", StringComparison.OrdinalIgnoreCase))
            {
                if (parts.Length != 2 || string.IsNullOrWhiteSpace(parts[1].Text))
                    throw new NativeSubrutineException("Usage: exec script_function");
                bridge.Exec(parts[1].Text);
                return;
            }

            ConsoleToken[] arguments = parts.Skip(1).ToArray();
            string[] rawArguments = arguments.Select(token => token.Text).ToArray();
            if (TryHandleLegacyConsoleCommand(command, rawArguments))
                return;

            command = NormalizeConsoleAlias(command);
            if (IsRemainderTextCommand(command) && rawArguments.Length > 0)
                arguments = new[] { new ConsoleToken(string.Join(" ", rawArguments), true) };
            else if (command.Equals("ColorPrint", StringComparison.OrdinalIgnoreCase) && rawArguments.Length > 1)
                arguments = new[] { arguments[0], new ConsoleToken(string.Join(" ", rawArguments.Skip(1)), true) };
            else if (command.Equals("CharPrint", StringComparison.OrdinalIgnoreCase) && rawArguments.Length > 2)
                arguments = new[] { arguments[0], arguments[1], new ConsoleToken(string.Join(" ", rawArguments.Skip(2)), true) };

            InjectionValue[] args = arguments.Select(token => token.Quoted
                ? new InjectionValue(token.Text) : ToConsoleValue(token.Text)).ToArray();
            CallNativeSubrutine(command, args);
        }

InjectionScript.Runtime.InjectionValue.ToString

Restituisce il valore dell’espressione seguente.

Parametri: Nessun parametro.

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionValue.cs:405.

public override string ToString()

Risultato: string.

Risultato: "<unit>"; Integer.ToString(System.Globalization.CultureInfo.InvariantCulture); String; Decimal.ToString(System.Globalization.CultureInfo.InvariantCulture); FormatArray(Array, new HashSet<InjectionValue[]>(), 0); Object?.Name ?? string.Empty.

Chiamate: Integer.ToString, Decimal.ToString, FormatArray.

Chiamate:

Codice interno di implementazione; non è uno script autonomo.

public override string ToString()

        {

            switch (Kind)

            {

                case InjectionValueKind.Unit:

                    return "<unit>";

                case InjectionValueKind.Integer:

                    return Integer.ToString(System.Globalization.CultureInfo.InvariantCulture);

                case InjectionValueKind.String:

                    return String;

                case InjectionValueKind.Decimal:

                    return Decimal.ToString(System.Globalization.CultureInfo.InvariantCulture);

                case InjectionValueKind.Array:

                    return FormatArray(Array, new HashSet<InjectionValue[]>(), 0);

                case InjectionValueKind.Object:

                    return Object?.Name ?? string.Empty;

                default:

                    throw new InvalidOperationException($"Unknown InjectionValue kind {Kind}.");

            }

        }

InjectionScript.Runtime.NumberConversions.ToHex

Restituisce il valore dell’espressione seguente.

Parametri: id

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/NumberConversions.cs:80.

public static string ToHex(short id)

Risultato: string.

Risultato: $"0x{id:X4}".

Codice interno di implementazione; non è uno script autonomo.

public static string ToHex(short id) => $"0x{id:X4}";

InjectionScript.Runtime.ObjectTypes.MemoryStreamObject.ReplaceBytes

Esegue le chiamate e le modifiche di stato mostrate.

Parametri: bytes

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/ObjectTypes/MemoryStreamObject.cs:26.

internal void ReplaceBytes(byte[] bytes)

Risultato: void.

Chiamate: stream.SetLength, Array.Empty<byte>, stream.Write.

Condizioni: bytes == null.

Codice interno di implementazione; non è uno script autonomo.

internal void ReplaceBytes(byte[] bytes)
        {
            stream.SetLength(0);
            stream.Position = 0;
            if (bytes == null)
                bytes = Array.Empty<byte>();
            stream.Write(bytes, 0, bytes.Length);
            stream.Position = 0;
        }

InjectionScript.Runtime.State.Globals.GetGlobal

Restituisce il valore dell’espressione seguente.

Parametri: name

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/State/Globals.cs:22.

public string GetGlobal(string name)

Risultato: string.

Risultato: globals.TryGetValue(name, out var value) ? value : "N/A".

Chiamate: globals.TryGetValue.

Codice interno di implementazione; non è uno script autonomo.

public string GetGlobal(string name)
        {
            lock (globalsLock)
                return globals.TryGetValue(name, out var value) ? value : "N/A";
        }

InjectionScript.Runtime.State.NamedIgnoreLists.RequireName

Verifica le condizioni seguenti e restituisce il risultato mostrato.

Parametri: name

Origine: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/State/NamedIgnoreLists.cs:115.

private static string RequireName(string name)

Risultato: string.

Risultato: name.Trim().

Chiamate: string.IsNullOrWhiteSpace, nameof, name.Trim.

Condizioni: string.IsNullOrWhiteSpace(name).

Codice interno di implementazione; non è uno script autonomo.

private static string RequireName(string name)
        {
            if (string.IsNullOrWhiteSpace(name)) throw new ArgumentException("Ignore list name must not be empty.", nameof(name));
            return name.Trim();
        }

Clone this wiki locally