Repository navigation
Runtime Helpers 9
uk · ru · en · de · fr · it · es · zh-tw · ja · ko
Внутрішній код реалізації, не самостійний скрипт.
Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/src/ClassicUO.CSharp/CSharpCallbacks.cs:422.
Результат: true.
Виклики:
-
ClassicUO.CSharp.CSharpCallbacks.SetStateEvent:SetStateEvent(arguments).
Внутрішній код реалізації, не самостійний скрипт.
case "SetEvent": SetStateEvent(arguments); return true;Виконує показані виклики та оновлення стану.
Параметри: milliseconds
Джерело: Project_Full/src/ClassicUO.CSharp/CSharpScriptGlobals.cs:200.
public async Task WaitAsync(int milliseconds)
Результат: Task.
Виклики: ArgumentOutOfRangeException.ThrowIfNegative, Checkpoint, Math.Min, Task.Delay(slice, Cancellation).ConfigureAwait, Task.Delay.
Виклики:
-
ClassicUO.CSharp.CSharpScriptGlobals.Checkpoint:Checkpoint().
Внутрішній код реалізації, не самостійний скрипт.
public async Task WaitAsync(int milliseconds)
{
ArgumentOutOfRangeException.ThrowIfNegative(milliseconds);
Checkpoint();
// Short slices allow Pause to suspend further script progress promptly.
int remaining = milliseconds;
while (remaining > 0)
{
int slice = Math.Min(remaining, 25);
await Task.Delay(slice, Cancellation).ConfigureAwait(false);
Checkpoint(); remaining -= slice;
}
}Повертає значення виразу нижче.
Параметри: Немає параметрів.
Джерело: Project_Full/src/ClassicUO.Client/Configuration/ProfileManager.cs:370.
public static Profile NewFromDefault()
Результат: Profile.
Результат: new Profile().
Внутрішній код реалізації, не самостійний скрипт.
public static Profile NewFromDefault() => new Profile();Виконує показані виклики та оновлення стану.
Параметри: Немає параметрів.
Джерело: Project_Full/src/ClassicUO.Client/Configuration/ProfileManager.cs:361.
internal static void SaveCurrentProfile()
Результат: void.
Виклики: string.IsNullOrEmpty, Save.
Умови: CurrentProfile != null && !string.IsNullOrEmpty(ProfilePath).
Внутрішній код реалізації, не самостійний скрипт.
internal static void SaveCurrentProfile()
{
if (CurrentProfile != null && !string.IsNullOrEmpty(ProfilePath))
{
Save(CurrentProfile, ProfilePath);
}
}Перевіряє умови нижче й повертає показаний результат.
Параметри: displayServerName, profileName, characterName
Джерело: Project_Full/src/ClassicUO.Client/Configuration/ProfileManager.cs:527.
`internal static bool TryResolveProfileCharacter(
string displayServerName, string profileName, out string characterName)`
Результат: bool.
Результат: false; true.
Виклики: string.IsNullOrWhiteSpace, EncodePathSegment, displayServerName.Trim, string.IsNullOrEmpty, string.Equals, Path.GetFileName, Path.GetDirectoryName, Path.Combine.
Умови: string.IsNullOrWhiteSpace(displayServerName) || string.IsNullOrWhiteSpace(profileName); `CurrentProfile != null && !string.IsNullOrEmpty(ProfilePath)
&& string.Equals(CurrentProfile.ServerName, displayServerName.Trim(), StringComparison.OrdinalIgnoreCase)`; `!Directory.Exists(directory) || !File.Exists(Path.Combine(directory, "profile.json"))`; `File.Exists(metadataPath)`.
Виклики:
-
ClassicUO.Configuration.ProfileManager.EncodePathSegment:EncodePathSegment(displayServerName.Trim()). -
ClassicUO.Configuration.ProfileManager.EncodePathSegment:EncodePathSegment(profileName.Trim()).
Внутрішній код реалізації, не самостійний скрипт.
internal static bool TryResolveProfileCharacter(
string displayServerName, string profileName, out string characterName)
{
characterName = string.Empty;
if (string.IsNullOrWhiteSpace(displayServerName) || string.IsNullOrWhiteSpace(profileName))
return false;
string serverDirectory = EncodePathSegment(displayServerName.Trim());
if (CurrentProfile != null && !string.IsNullOrEmpty(ProfilePath)
&& string.Equals(CurrentProfile.ServerName, displayServerName.Trim(), StringComparison.OrdinalIgnoreCase))
serverDirectory = Path.GetFileName(Path.GetDirectoryName(ProfilePath));
string directory = Path.Combine(RootPath, serverDirectory, EncodePathSegment(profileName.Trim()));
if (!Directory.Exists(directory) || !File.Exists(Path.Combine(directory, "profile.json")))
return false;
try
{
string metadataPath = Path.Combine(directory, ProfileCharacterNameFileName);
if (File.Exists(metadataPath))
characterName = File.ReadAllText(metadataPath, Encoding.UTF8).Trim();
}
catch (IOException) { }
catch (UnauthorizedAccessException) { }
return true;
}Виконує показані виклики та оновлення стану.
Параметри: stat, state
Джерело: Project_Full/src/ClassicUO.Client/Game/GameActions.cs:812.
public static void ChangeStatLock(byte stat, Lock state)
Результат: void.
Виклики: Socket.Send_StatLockStateRequest.
Внутрішній код реалізації, не самостійний скрипт.
public static void ChangeStatLock(byte stat, Lock state)
{
Socket.Send_StatLockStateRequest(stat, state);
}Виконує показані виклики та оновлення стану.
Параметри: world
Джерело: Project_Full/src/ClassicUO.Client/Game/GameActions.cs:719.
public static void RequestQuestMenu(World world)
Результат: void.
Виклики: Socket.Send_QuestMenuRequest.
Внутрішній код реалізації, не самостійний скрипт.
public static void RequestQuestMenu(World world)
{
Socket.Send_QuestMenuRequest(world);
}Перевіряє умови нижче й повертає показаний результат.
Параметри: values
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:3774.
private static HashSet<ushort> BuildFindIdentityMask(int[] values)
Результат: HashSet<ushort>.
Результат: mask.
Виклики: Array.Empty<int>, mask.Clear, mask.Add.
Умови: value < 0 || value == 0xFFFF.
Внутрішній код реалізації, не самостійний скрипт.
private static HashSet<ushort> BuildFindIdentityMask(int[] values)
{
var mask = new HashSet<ushort>();
foreach (int value in values ?? Array.Empty<int>())
{
if (value < 0 || value == 0xFFFF)
{
// A wildcard is one alternative, so it makes the entire
// dimension unrestricted even when concrete values coexist.
mask.Clear();
break;
}
mask.Add((ushort)value);
}
return mask;
}Виконує показані виклики та оновлення стану.
Параметри: Немає параметрів.
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1120.
public void CancelTarget()
Результат: void.
Виклики: Invoke.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => { _manager.ClearPendingTargets(); _world.TargetManager.CancelTarget(); }). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => { _manager.ClearPendingTargets(); _world.TargetManager.CancelTarget(); }). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.YokoInjectionManager.ClearPendingTargets:_manager.ClearPendingTargets().
Внутрішній код реалізації, не самостійний скрипт.
public void CancelTarget() => Invoke(() =>
{
_manager.ClearPendingTargets();
_world.TargetManager.CancelTarget();
});Повертає значення виразу нижче.
Параметри: Немає параметрів.
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:455.
public int GetAutoReconnect()
Результат: int.
Виклики: Invoke.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => (_world.SessionControl?.AutoReconnect ?? Settings.GlobalSettings.Reconnect) ? 1 : 0). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => (_world.SessionControl?.AutoReconnect ?? Settings.GlobalSettings.Reconnect) ? 1 : 0). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта.
Внутрішній код реалізації, не самостійний скрипт.
public int GetAutoReconnect() => Invoke(() =>
(_world.SessionControl?.AutoReconnect ?? Settings.GlobalSettings.Reconnect) ? 1 : 0);Повертає значення виразу нижче.
Параметри: mobileId
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2367.
public int[] GetEquipment(int mobileId)
Результат: int[].
Виклики: Invoke.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => _world.Items.Values .Where(item => !item.IsDestroyed && item.Container == (uint)mobileId && item.Layer != Layer.Invalid) .Select(item => (int)item.Serial).ToArray()). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => _world.Items.Values .Where(item => !item.IsDestroyed && item.Container == (uint)mobileId && item.Layer != Layer.Invalid) .Select(item => (int)item.Serial).ToArray()). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта.
Внутрішній код реалізації, не самостійний скрипт.
public int[] GetEquipment(int mobileId) => Invoke(() => _world.Items.Values
.Where(item => !item.IsDestroyed && item.Container == (uint)mobileId && item.Layer != Layer.Invalid)
.Select(item => (int)item.Serial).ToArray());Повертає значення виразу нижче.
Параметри: Немає параметрів.
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:266.
public int GetLastObject()
Результат: int.
Результат: Invoke(() => (int)_world.LastObject).
Виклики: Invoke.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => (int)_world.LastObject). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => (int)_world.LastObject). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта.
Внутрішній код реалізації, не самостійний скрипт.
public int GetLastObject() => Invoke(() => (int)_world.LastObject);Повертає значення виразу нижче.
Параметри: Немає параметрів.
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:310.
public int GetPauseScriptOnDisconnectStatus()
Результат: int.
Результат: _manager.PauseScriptsOnDisconnect ? 1 : 0.
Внутрішній код реалізації, не самостійний скрипт.
public int GetPauseScriptOnDisconnectStatus() => _manager.PauseScriptsOnDisconnect ? 1 : 0;Повертає значення виразу нижче.
Параметри: index
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:314.
public string GetScriptName(int index)
Результат: string.
Результат: _manager.GetScriptName(index).
Виклики: _manager.GetScriptName.
Виклики:
-
ClassicUO.Game.Managers.YokoInjectionManager.GetScriptName:_manager.GetScriptName(index).
Внутрішній код реалізації, не самостійний скрипт.
public string GetScriptName(int index) => _manager.GetScriptName(index);Повертає значення виразу нижче.
Параметри: objType, hue
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:3329.
public int[] GetStaticArt(int objType, int hue)
Результат: int[].
Виклики: Invoke.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => { if (objType < 0 || objType > ushort.MaxValue || Client.UO.FileManager?.Arts?.File == null) return Array.Empty<int>(); uint artIndex = unchecked((uint)objType) + ArtLoader.MAX_LAND_DATA_INDEX_COUNT; ArtInfo artInfo = Client.UO.FileManager.Arts.GetArt(artIndex); if (artInfo.Pixels.IsEmpty || artInfo.Width <= 0 || artInfo.Height <= 0) return Array.Empty<int>(); int width = artInfo.Width; int height = artInfo.Height; int rowStride = (width * 3 + 3) & ~3; int pixelBytes = rowStride * height; int fileSize = 14 + 40 + pixelBytes; byte[] bmp = new byte[fileSize]; static void Write16(byte[] buffer, int offset, int value) { buffer[offset] = (byte)value; buffer[offset + 1] = (byte)(value >> 8); } static void Write32(byte[] buffer, int offset, int value) { buffer[offset] = (byte)value; buffer[offset + 1] = (byte)(value >> 8); buffer[offset + 2] = (byte)(value >> 16); buffer[offset + 3] = (byte)(value >> 24); } bmp[0] = (byte)'B'; bmp[1] = (byte)'M'; Write32(bmp, 2, fileSize); Write32(bmp, 10, 54); Write32(bmp, 14, 40); Write32(bmp, 18, width); Write32(bmp, 22, height); Write16(bmp, 26, 1); Write16(bmp, 28, 24); Write32(bmp, 34, pixelBytes); ushort appliedHue = unchecked((ushort)Math.Clamp(hue, 0, ushort.MaxValue)); bool partialHue = objType < Client.UO.FileManager.TileData.StaticData.Length && Client.UO.FileManager.TileData.StaticData[objType].IsPartialHue; int output = 54; for (int y = height - 1; y >= 0; y--) { int rowStart = output; for (int x = 0; x < width; x++) { uint pixel = artInfo.Pixels[y * width + x]; if (pixel != 0 && appliedHue != 0) { ushort sourceColor = HuesHelper.Color32To16(pixel); pixel = partialHue ? Client.UO.FileManager.Hues.GetPartialHueColor(sourceColor, appliedHue) : Client.UO.FileManager.Hues.GetColor(sourceColor, appliedHue); pixel |= 0xFF_00_00_00; } var (b, g, r, _) = HuesHelper.GetBGRA(pixel); bmp[output++] = b; bmp[output++] = g; bmp[output++] = r; } output = rowStart + rowStride; } return bmp.Select(value => (int)value).ToArray(); }). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => { if (objType < 0 || objType > ushort.MaxValue || Client.UO.FileManager?.Arts?.File == null) return Array.Empty<int>(); uint artIndex = unchecked((uint)objType) + ArtLoader.MAX_LAND_DATA_INDEX_COUNT; ArtInfo artInfo = Client.UO.FileManager.Arts.GetArt(artIndex); if (artInfo.Pixels.IsEmpty || artInfo.Width <= 0 || artInfo.Height <= 0) return Array.Empty<int>(); int width = artInfo.Width; int height = artInfo.Height; int rowStride = (width * 3 + 3) & ~3; int pixelBytes = rowStride * height; int fileSize = 14 + 40 + pixelBytes; byte[] bmp = new byte[fileSize]; static void Write16(byte[] buffer, int offset, int value) { buffer[offset] = (byte)value; buffer[offset + 1] = (byte)(value >> 8); } static void Write32(byte[] buffer, int offset, int value) { buffer[offset] = (byte)value; buffer[offset + 1] = (byte)(value >> 8); buffer[offset + 2] = (byte)(value >> 16); buffer[offset + 3] = (byte)(value >> 24); } bmp[0] = (byte)'B'; bmp[1] = (byte)'M'; Write32(bmp, 2, fileSize); Write32(bmp, 10, 54); Write32(bmp, 14, 40); Write32(bmp, 18, width); Write32(bmp, 22, height); Write16(bmp, 26, 1); Write16(bmp, 28, 24); Write32(bmp, 34, pixelBytes); ushort appliedHue = unchecked((ushort)Math.Clamp(hue, 0, ushort.MaxValue)); bool partialHue = objType < Client.UO.FileManager.TileData.StaticData.Length && Client.UO.FileManager.TileData.StaticData[objType].IsPartialHue; int output = 54; for (int y = height - 1; y >= 0; y--) { int rowStart = output; for (int x = 0; x < width; x++) { uint pixel = artInfo.Pixels[y * width + x]; if (pixel != 0 && appliedHue != 0) { ushort sourceColor = HuesHelper.Color32To16(pixel); pixel = partialHue ? Client.UO.FileManager.Hues.GetPartialHueColor(sourceColor, appliedHue) : Client.UO.FileManager.Hues.GetColor(sourceColor, appliedHue); pixel |= 0xFF_00_00_00; } var (b, g, r, _) = HuesHelper.GetBGRA(pixel); bmp[output++] = b; bmp[output++] = g; bmp[output++] = r; } output = rowStart + rowStride; } return bmp.Select(value => (int)value).ToArray(); }). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetStaticArt::Write32:Write32(bmp, 2, fileSize). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetStaticArt::Write32:Write32(bmp, 10, 54). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetStaticArt::Write32:Write32(bmp, 14, 40). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetStaticArt::Write32:Write32(bmp, 18, width). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetStaticArt::Write32:Write32(bmp, 22, height). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetStaticArt::Write16:Write16(bmp, 26, 1). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetStaticArt::Write16:Write16(bmp, 28, 24). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetStaticArt::Write32:Write32(bmp, 34, pixelBytes).
Внутрішній код реалізації, не самостійний скрипт.
public int[] GetStaticArt(int objType, int hue) => Invoke(() =>
{
if (objType < 0 || objType > ushort.MaxValue || Client.UO.FileManager?.Arts?.File == null)
return Array.Empty<int>();
uint artIndex = unchecked((uint)objType) + ArtLoader.MAX_LAND_DATA_INDEX_COUNT;
ArtInfo artInfo = Client.UO.FileManager.Arts.GetArt(artIndex);
if (artInfo.Pixels.IsEmpty || artInfo.Width <= 0 || artInfo.Height <= 0)
return Array.Empty<int>();
// …
if (pixel != 0 && appliedHue != 0)
// …
return bmp.Select(value => (int)value).ToArray();
// …Повний код зберігається у файлі джерела; нижче наведено точні фрагменти.
Повертає значення виразу нижче.
Параметри: Немає параметрів.
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2443.
(int ClilocID, string[] Parameters)[] ReadRecords()
Результат: (int ClilocID, string[] Parameters)[].
Результат: Invoke(() => _world.OPL.GetRecords(serial)).
Виклики: Invoke.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => _world.OPL.GetRecords(serial)). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => _world.OPL.GetRecords(serial)). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта.
Внутрішній код реалізації, не самостійний скрипт.
(int ClilocID, string[] Parameters)[] ReadRecords() => Invoke(() => _world.OPL.GetRecords(serial));Повертає значення виразу нижче.
Параметри: text, patterns
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:3747.
private static bool Matches(string text, string[] patterns)
Результат: bool.
Результат: Matches(text, patterns, true).
Виклики: Matches.
Внутрішній код реалізації, не самостійний скрипт.
private static bool Matches(string text, string[] patterns) => Matches(text, patterns, true);Виконує показані виклики та оновлення стану.
Параметри: hue, message
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1829.
private void PrintClientMessage(ushort hue, string message)
Результат: void.
Виклики: Invoke.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => { using var journalContext = new JournalMessageContext("script"); string text = FormatScriptPrintText(message); // Use ClassicUO's native message pipeline. A Regular message with no // parent is the same route used by the original working Injection // client message: SystemChatControl receives the lower-left viewport // line and GameScene records the same event in the journal. GameActions.Print(_world, text, hue, SCRIPT_PRINT_MESSAGE_TYPE, 3, true); _manager.AppendIdeOutput(_scriptKey, "UO.Print: " + text); // UO.CharPrint remains the separate command for overhead text. ReportStatus("UO.Print dispatched through the native ClassicUO lower-left/journal message route"); }). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => { using var journalContext = new JournalMessageContext("script"); string text = FormatScriptPrintText(message); // Use ClassicUO's native message pipeline. A Regular message with no // parent is the same route used by the original working Injection // client message: SystemChatControl receives the lower-left viewport // line and GameScene records the same event in the journal. GameActions.Print(_world, text, hue, SCRIPT_PRINT_MESSAGE_TYPE, 3, true); _manager.AppendIdeOutput(_scriptKey, "UO.Print: " + text); // UO.CharPrint remains the separate command for overhead text. ReportStatus("UO.Print dispatched through the native ClassicUO lower-left/journal message route"); }). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.FormatScriptPrintText:FormatScriptPrintText(message). -
ClassicUO.Game.GameActions.Print:GameActions.Print(_world, text, hue, SCRIPT_PRINT_MESSAGE_TYPE, 3, true). -
ClassicUO.Game.Managers.YokoInjectionManager.AppendIdeOutput:_manager.AppendIdeOutput(_scriptKey, "UO.Print: " + text). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ReportStatus:ReportStatus("UO.Print dispatched through the native ClassicUO lower-left/journal message route").
Внутрішній код реалізації, не самостійний скрипт.
private void PrintClientMessage(ushort hue, string message) => Invoke(() =>
{
using var journalContext = new JournalMessageContext("script");
string text = FormatScriptPrintText(message);
// Use ClassicUO's native message pipeline. A Regular message with no
// parent is the same route used by the original working Injection
// client message: SystemChatControl receives the lower-left viewport
// line and GameScene records the same event in the journal.
GameActions.Print(_world, text, hue, SCRIPT_PRINT_MESSAGE_TYPE, 3, true);
_manager.AppendIdeOutput(_scriptKey, "UO.Print: " + text);
// UO.CharPrint remains the separate command for overhead text.
ReportStatus("UO.Print dispatched through the native ClassicUO lower-left/journal message route");
});Виконує показані виклики та оновлення стану.
Параметри: text
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1112.
private void PrintInteractiveResult(string text)
Результат: void.
Виклики: GameActions.Print, _manager.AppendIdeOutput, ReportStatus.
Виклики:
-
ClassicUO.Game.GameActions.Print:GameActions.Print(_world, text ?? string.Empty, DEFAULT_SCRIPT_PRINT_HUE, SCRIPT_PRINT_MESSAGE_TYPE, 3, true). -
ClassicUO.Game.Managers.YokoInjectionManager.AppendIdeOutput:_manager.AppendIdeOutput(_scriptKey, text ?? string.Empty). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ReportStatus:ReportStatus(text ?? string.Empty).
Внутрішній код реалізації, не самостійний скрипт.
private void PrintInteractiveResult(string text)
{
GameActions.Print(_world, text ?? string.Empty, DEFAULT_SCRIPT_PRINT_HUE,
SCRIPT_PRINT_MESSAGE_TYPE, 3, true);
_manager.AppendIdeOutput(_scriptKey, text ?? string.Empty);
ReportStatus(text ?? string.Empty);
}Повертає значення виразу нижче.
Параметри: figureId
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2326.
public int RemoveMapFigure(int figureId)
Результат: int.
Результат: Invoke(() => WorldMapGump.RemoveYokoMapFigure(figureId)).
Виклики: Invoke.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => WorldMapGump.RemoveYokoMapFigure(figureId)). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => WorldMapGump.RemoveYokoMapFigure(figureId)). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.UI.Gumps.WorldMapGump.RemoveYokoMapFigure:WorldMapGump.RemoveYokoMapFigure(figureId).
Внутрішній код реалізації, не самостійний скрипт.
public int RemoveMapFigure(int figureId) => Invoke(() => WorldMapGump.RemoveYokoMapFigure(figureId));Перевіряє умови нижче й повертає показаний результат.
Параметри: Немає параметрів.
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:966.
public int RequestInteractiveGrabTarget()
Результат: int.
Результат: 0.
Виклики: Invoke.
Умови: !_interactiveCommands.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => { _world.TargetManager.SetTargeting(selected => { if (selected is not Item item || item.IsDestroyed) { PrintInteractiveResult("UO.Grab: select an available item."); return; } if (_world.Player == null) { PrintInteractiveResult("UO.Grab: the character is not available."); return; } uint destination = receivingContainer > 0 ? unchecked((uint)receivingContainer) : _world.Player?.FindItemByLayer(Layer.Backpack)?.Serial ?? 0; GameActions.GrabItem(_world, item.Serial, item.Amount, destination); PrintInteractiveResult($"UO.Grab: grabbed 0x{item.Serial:X8}, amount={item.Amount}."); }, 0, TargetType.Neutral); PrintInteractiveResult("UO.Grab: target an item to grab."); return 1; }). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => { _world.TargetManager.SetTargeting(selected => { if (selected is not Item item || item.IsDestroyed) { PrintInteractiveResult("UO.Grab: select an available item."); return; } if (_world.Player == null) { PrintInteractiveResult("UO.Grab: the character is not available."); return; } uint destination = receivingContainer > 0 ? unchecked((uint)receivingContainer) : _world.Player?.FindItemByLayer(Layer.Backpack)?.Serial ?? 0; GameActions.GrabItem(_world, item.Serial, item.Amount, destination); PrintInteractiveResult($"UO.Grab: grabbed 0x{item.Serial:X8}, amount={item.Amount}."); }, 0, TargetType.Neutral); PrintInteractiveResult("UO.Grab: target an item to grab."); return 1; }). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.PrintInteractiveResult:PrintInteractiveResult("UO.Grab: select an available item."). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.PrintInteractiveResult:PrintInteractiveResult("UO.Grab: the character is not available."). -
ClassicUO.Game.GameActions.GrabItem:GameActions.GrabItem(_world, item.Serial, item.Amount, destination). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.PrintInteractiveResult:PrintInteractiveResult($"UO.Grab: grabbed 0x{item.Serial:X8}, amount={item.Amount}."). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.PrintInteractiveResult:PrintInteractiveResult("UO.Grab: target an item to grab.").
Внутрішній код реалізації, не самостійний скрипт.
public int RequestInteractiveGrabTarget()
{
if (!_interactiveCommands)
return 0;
int receivingContainer = _csharpState == null ? 0 : State.ReceivingContainer;
return Invoke(() =>
{
_world.TargetManager.SetTargeting(selected =>
{
if (selected is not Item item || item.IsDestroyed)
{
PrintInteractiveResult("UO.Grab: select an available item.");
return;
}
if (_world.Player == null)
{
PrintInteractiveResult("UO.Grab: the character is not available.");
return;
}
uint destination = receivingContainer > 0
? unchecked((uint)receivingContainer)
: _world.Player?.FindItemByLayer(Layer.Backpack)?.Serial ?? 0;
GameActions.GrabItem(_world, item.Serial, item.Amount, destination);
PrintInteractiveResult($"UO.Grab: grabbed 0x{item.Serial:X8}, amount={item.Amount}.");
}, 0, TargetType.Neutral);
PrintInteractiveResult("UO.Grab: target an item to grab.");
return 1;
});
}Перевіряє умови нижче й повертає показаний результат.
Параметри: serial, gumpId, triggerId, timeoutMs
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2770.
public int SendGumpSelect(int serial, int gumpId, int triggerId, int timeoutMs)
Результат: int.
Результат: sent; 0.
Виклики: DateTime.UtcNow.AddMilliseconds, Math.Max, Invoke, Wait, Error.
Умови: sent != 0; DateTime.UtcNow >= deadline.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => SendGumpButtonUnsafe(ServerGumpsUnsafe().LastOrDefault(item => (serial is 0 or -1 || item.LocalSerial == unchecked((uint)serial)) && (gumpId is 0 or -1 || item.ServerSerial == unchecked((uint)gumpId))), triggerId, string.Empty)). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => SendGumpButtonUnsafe(ServerGumpsUnsafe().LastOrDefault(item => (serial is 0 or -1 || item.LocalSerial == unchecked((uint)serial)) && (gumpId is 0 or -1 || item.ServerSerial == unchecked((uint)gumpId))), triggerId, string.Empty)). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.SendGumpButtonUnsafe:SendGumpButtonUnsafe(ServerGumpsUnsafe().LastOrDefault(item => (serial is 0 or -1 || item.LocalSerial == unchecked((uint)serial)) && (gumpId is 0 or -1 || item.ServerSerial == unchecked((uint)gumpId))), triggerId, string.Empty). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ServerGumpsUnsafe:ServerGumpsUnsafe(). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Wait:Wait(20). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Error:Error($"UO.SendGumpSelect: gump serial=0x{serial:X8}, id=0x{gumpId:X8} was not found").
Внутрішній код реалізації, не самостійний скрипт.
public int SendGumpSelect(int serial, int gumpId, int triggerId, int timeoutMs)
{
DateTime deadline = DateTime.UtcNow.AddMilliseconds(Math.Max(0, timeoutMs));
do
{
int sent = Invoke(() => SendGumpButtonUnsafe(ServerGumpsUnsafe().LastOrDefault(item =>
(serial is 0 or -1 || item.LocalSerial == unchecked((uint)serial))
&& (gumpId is 0 or -1 || item.ServerSerial == unchecked((uint)gumpId))), triggerId, string.Empty));
if (sent != 0)
return sent;
if (DateTime.UtcNow >= deadline)
break;
Wait(20);
}
while (true);
Error($"UO.SendGumpSelect: gump serial=0x{serial:X8}, id=0x{gumpId:X8} was not found");
return 0;
}Виконує показані виклики та оновлення стану.
Параметри: value
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:3632.
public void SetAutoBuyDelay(int value)
Результат: void.
Виклики: Invoke.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => { if (ProfileManager.CurrentProfile == null) return; ProfileManager.CurrentProfile.BackNewbieAutoBuyDelay = Math.Clamp(value, 0, ushort.MaxValue); ProfileManager.SaveCurrentProfile(); }). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => { if (ProfileManager.CurrentProfile == null) return; ProfileManager.CurrentProfile.BackNewbieAutoBuyDelay = Math.Clamp(value, 0, ushort.MaxValue); ProfileManager.SaveCurrentProfile(); }). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Configuration.ProfileManager.SaveCurrentProfile:ProfileManager.SaveCurrentProfile().
Внутрішній код реалізації, не самостійний скрипт.
public void SetAutoBuyDelay(int value) => Invoke(() =>
{
if (ProfileManager.CurrentProfile == null) return;
ProfileManager.CurrentProfile.BackNewbieAutoBuyDelay = Math.Clamp(value, 0, ushort.MaxValue);
ProfileManager.SaveCurrentProfile();
});Виконує показані виклики та оновлення стану.
Параметри: distance
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:198.
public void SetFindDistance(int distance)
Результат: void.
Виклики: Math.Clamp.
Внутрішній код реалізації, не самостійний скрипт.
public void SetFindDistance(int distance) => State.FindDistance = Math.Clamp(distance, 0, 255);Виконує показані виклики та оновлення стану.
Параметри: valueInt
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:202.
public void SetGrabDelay(int valueInt)
Результат: void.
Виклики: Math.Clamp.
Внутрішній код реалізації, не самостійний скрипт.
public void SetGrabDelay(int valueInt) => State.GrabDelay = Math.Clamp(valueInt, 0, 60_000);Виконує показані виклики та оновлення стану.
Параметри: subrutineName
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:2709.
public void Terminate(string subrutineName)
Результат: void.
Виклики: _manager.TerminateProcedures, _cancellationToken.ThrowIfCancellationRequested.
Виклики:
-
ClassicUO.Game.Managers.YokoInjectionManager.TerminateProcedures:_manager.TerminateProcedures(subrutineName).
Внутрішній код реалізації, не самостійний скрипт.
public void Terminate(string subrutineName)
{
// Control operations must not wait on the game thread or a paused worker.
_manager.TerminateProcedures(subrutineName);
_cancellationToken.ThrowIfCancellationRequested();
}Виконує показані виклики та оновлення стану.
Параметри: id
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/ClassicUOInjectionApiBridge.cs:1347.
public void UpdateObject(int id)
Результат: void.
Виклики: Invoke.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => { if (_world.Mobiles.Get((uint)id) != null) { GameActions.RequestMobileStatus(_world, (uint)id, true); } else if (_world.Items.Get((uint)id) != null) { GameActions.SingleClick(_world, (uint)id); } }). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Invoke:Invoke(() => { if (_world.Mobiles.Get((uint)id) != null) { GameActions.RequestMobileStatus(_world, (uint)id, true); } else if (_world.Items.Get((uint)id) != null) { GameActions.SingleClick(_world, (uint)id); } }). Кандидати перевантаження: джерело не підтверджує вибір конкретного варіанта. -
ClassicUO.Game.GameActions.RequestMobileStatus:GameActions.RequestMobileStatus(_world, (uint)id, true). -
ClassicUO.Game.GameActions.SingleClick:GameActions.SingleClick(_world, (uint)id).
Внутрішній код реалізації, не самостійний скрипт.
public void UpdateObject(int id) => Invoke(() =>
{
if (_world.Mobiles.Get((uint)id) != null)
{
GameActions.RequestMobileStatus(_world, (uint)id, true);
}
else if (_world.Items.Get((uint)id) != null)
{
GameActions.SingleClick(_world, (uint)id);
}
});Повертає значення виразу нижче.
Параметри: path
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/YokoSelectedAutoloadActions.cs:59.
internal bool IsSelectedAutoloadExplicitlyUnloaded(string path)
Результат: bool.
Результат: _selectedAutoloadUnloaded.Contains(path).
Виклики: _selectedAutoloadUnloaded.Contains.
Внутрішній код реалізації, не самостійний скрипт.
internal bool IsSelectedAutoloadExplicitlyUnloaded(string path)
{ lock (_selectedAutoloadActionLock) return _selectedAutoloadUnloaded.Contains(path); }Виконує показані виклики та оновлення стану.
Параметри: callback
Джерело: Project_Full/src/ClassicUO.Client/Game/Managers/YokoInjectionManager.cs:3403.
internal void ReleaseObjectSelection(Action<GameObjects.GameObject> callback)
Результат: void.
Виклики: EnqueueMainThreadAction.
Внутрішній код реалізації, не самостійний скрипт.
internal void ReleaseObjectSelection(Action<GameObjects.GameObject> callback)
=> EnqueueMainThreadAction(() => _world.TargetManager.ReleaseCallbackTarget(callback));Виконує показані виклики та оновлення стану.
Параметри: pageIndex
Джерело: Project_Full/src/ClassicUO.Client/Game/UI/Gumps/Gump.cs:208.
public override void ChangePage(int pageIndex)
Результат: void.
Внутрішній код реалізації, не самостійний скрипт.
public override void ChangePage(int pageIndex)
{
// For a gump, Page is the page that is drawing.
ActivePage = pageIndex;
}Перевіряє умови нижче й повертає показаний результат.
Параметри: serial
Джерело: Project_Full/src/ClassicUO.Client/Game/World.cs:556.
public Item GetOrCreateItem(uint serial)
Результат: Item.
Результат: item.
Виклики: Items.Get, Items.Remove, Item.Create, Items.Add.
Умови: item != null && item.IsDestroyed; item == null.
Виклики:
-
ClassicUO.Game.GameObjects.Item.Create:Item.Create(this, serial).
Внутрішній код реалізації, не самостійний скрипт.
public Item GetOrCreateItem(uint serial)
{
Item item = Items.Get(serial);
if (item != null && item.IsDestroyed)
{
Items.Remove(serial);
item = null;
}
if (item == null /*|| item.IsDestroyed*/)
{
item = Item.Create(this, serial);
Items.Add(item);
}
return item;
}Виконує показані виклики та оновлення стану.
Параметри: result, value, invalid, unrestricted
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5134.
private static void AddMaskValue(HashSet<int> result, InjectionValue value, ref bool invalid, ref bool unrestricted)
Результат: void.
Виклики: string.IsNullOrWhiteSpace, text.Split, rawToken.Trim, token.Equals, NumberConversions.TryStr2Int, result.Add, NumberConversions.ToInt.
Умови: value.Kind == InjectionValueKind.Array; value.Kind == InjectionValueKind.String; string.IsNullOrWhiteSpace(text); token.Equals("any", StringComparison.OrdinalIgnoreCase) || token == "-1".
Внутрішній код реалізації, не самостійний скрипт.
private static void AddMaskValue(HashSet<int> result, InjectionValue value, ref bool invalid, ref bool unrestricted)
{
// Mask entries are scalar. A nested array is not the literal 0;
// reject it without recursively walking a potentially cyclic array.
if (value.Kind == InjectionValueKind.Array)
{
invalid = true;
return;
}
if (value.Kind == InjectionValueKind.String)
{
string text = value.String ?? string.Empty;
if (string.IsNullOrWhiteSpace(text)) unrestricted = true;
foreach (string rawToken in text.Split(new[] { '|' }, StringSplitOptions.RemoveEmptyEntries))
{
string token = rawToken.Trim();
if (token.Equals("any", StringComparison.OrdinalIgnoreCase) || token == "-1")
{
unrestricted = true;
continue;
}
if (NumberConversions.TryStr2Int(token, out int parsed))
{
if (parsed >= 0 && parsed != 0xFFFF)
result.Add(parsed);
else
unrestricted = true;
}
else
{
// Invalid mask tokens are ignored; a fully invalid mask matches nothing.
invalid = true;
}
}
return;
}
int number = NumberConversions.ToInt(value);
if (number >= 0 && number != 0xFFFF)
result.Add(number);
else
unrestricted = true;
}Виконує показані виклики та оновлення стану.
Параметри: name, id
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3800.
public void AddObject(string name, int id)
Результат: void.
Виклики: objects.Set.
Виклики:
-
InjectionScript.Runtime.State.RuntimeDictionary.Set:objects.Set(name, id).
Внутрішній код реалізації, не самостійний скрипт.
public void AddObject(string name, int id)
=> objects.Set(name, id);Виконує показані виклики та оновлення стану.
Параметри: id
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3925.
public void Attack(int id)
Результат: void.
Виклики: bridge.Attack.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Attack:bridge.Attack(id).
Внутрішній код реалізації, не самостійний скрипт.
public void Attack(int id) => bridge.Attack(id);Перевіряє умови нижче й повертає показаний результат.
Параметри: x, y, map, includeObjects
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:6298.
private InjectionValue BuildWorldCell(int x, int y, int map, bool includeObjects)
Результат: InjectionValue.
Результат: new InjectionValue(Array.Empty<InjectionValue>()); new InjectionValue(result.ToArray()).
Виклики: Array.Empty<InjectionValue>, bridge.GetLandscapeTile, Array.Empty<int>, result.Add, BuildWorldTileRecord, bridge.GetStaticTiles, bridge.GetWorldItems, bridge.GetX.
Умови: map != bridge.WorldNumber; land.Length >= 2; includeObjects; bridge.GetX(serial) == x && bridge.GetY(serial) == y.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetLandscapeTile:bridge.GetLandscapeTile(x, y, map). -
InjectionScript.Runtime.InjectionApiUO.BuildWorldTileRecord:BuildWorldTileRecord("land", 0, land[0], x, y, land[1], 0, 0). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetStaticTiles:bridge.GetStaticTiles(x, y, map). -
InjectionScript.Runtime.InjectionApiUO.BuildWorldTileRecord:BuildWorldTileRecord("static", 0, statics[offset], x, y, statics[offset + 1], statics[offset + 2], 1). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetWorldItems:bridge.GetWorldItems(). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetX:bridge.GetX(serial). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetY:bridge.GetY(serial). -
InjectionScript.Runtime.InjectionApiUO.BuildWorldTileRecord:BuildWorldTileRecord("object", serial, bridge.GetGraphics(serial), x, y, bridge.GetZ(serial), bridge.GetColor(serial), 1). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetGraphics:bridge.GetGraphics(serial). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetZ:bridge.GetZ(serial). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetColor:bridge.GetColor(serial). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.WorldNumber:bridge.WorldNumber.
Внутрішній код реалізації, не самостійний скрипт.
private InjectionValue BuildWorldCell(int x, int y, int map, bool includeObjects)
{
if (map != bridge.WorldNumber)
return new InjectionValue(Array.Empty<InjectionValue>());
var result = new List<InjectionValue>();
int[] land = bridge.GetLandscapeTile(x, y, map) ?? Array.Empty<int>();
if (land.Length >= 2)
result.Add(BuildWorldTileRecord("land", 0, land[0], x, y, land[1], 0, 0));
int[] statics = bridge.GetStaticTiles(x, y, map) ?? Array.Empty<int>();
for (int offset = 0; offset + 2 < statics.Length; offset += 3)
result.Add(BuildWorldTileRecord("static", 0, statics[offset], x, y, statics[offset + 1], statics[offset + 2], 1));
if (includeObjects)
{
foreach (int serial in bridge.GetWorldItems() ?? Array.Empty<int>())
if (bridge.GetX(serial) == x && bridge.GetY(serial) == y)
result.Add(BuildWorldTileRecord("object", serial, bridge.GetGraphics(serial), x, y,
bridge.GetZ(serial), bridge.GetColor(serial), 1));
}
return new InjectionValue(result.ToArray());
}Перевіряє умови нижче й повертає показаний результат.
Параметри: values
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:4379.
private int CompactGrab(InjectionValue[] values)
Результат: int.
Результат: Grab(); 0; CompactMoveItem(new[] { new InjectionValue(id), new InjectionValue(amount), destination }).
Виклики: Grab, NumberConversions.ToInt, GetObject, CompactMoveItem, ConvertMoveDestination, bridge.GetX, bridge.GetY, bridge.GetZ.
Умови: values == null || values.Length == 0; values.Length > 4; id == 0; values.Length >= 3.
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.Grab:Grab(). -
InjectionScript.Runtime.NumberConversions.ToInt:NumberConversions.ToInt(values[0]). -
InjectionScript.Runtime.InjectionApiUO.GetObject:GetObject(item). -
InjectionScript.Runtime.InjectionApiUO.CompactMoveItem:CompactMoveItem(new[] { new InjectionValue(id), new InjectionValue(amount), destination }). -
InjectionScript.Runtime.InjectionApiUO.ConvertMoveDestination:ConvertMoveDestination(destination). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetX:bridge.GetX(bridge.Self). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetY:bridge.GetY(bridge.Self). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetZ:bridge.GetZ(bridge.Self). -
InjectionScript.Runtime.InjectionApiUO.CompactMoveItem:CompactMoveItem(new[] { new InjectionValue(id), new InjectionValue(amount), destination, new InjectionValue(x), new InjectionValue(y), new InjectionValue(z), values[3], InjectionValue.True }). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Backpack:bridge.Backpack. -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Self:bridge.Self.
Внутрішній код реалізації, не самостійний скрипт.
private int CompactGrab(InjectionValue[] values)
{
if (values == null || values.Length == 0)
return Grab();
if (values.Length > 4)
throw new NativeSubrutineException("UO.Grab accepts item; amount,item; or amount,item,container[,timeout].");
// Preserve the historical one-argument form: Grab(item) means one item.
int amount = values.Length == 1 ? 1 : NumberConversions.ToInt(values[0]);
InjectionValue item = values.Length == 1 ? values[0] : values[1];
int id = GetObject(item);
if (id == 0)
return 0;
InjectionValue destination;
if (values.Length >= 3)
destination = values[2];
else
{
int receiving = state.ReceivingContainer > 0 ? state.ReceivingContainer : bridge.Backpack;
destination = new InjectionValue(receiving);
}
if (values.Length < 4)
return CompactMoveItem(new[] { new InjectionValue(id), new InjectionValue(amount), destination });
int targetContainer = ConvertMoveDestination(destination);
bool ground = targetContainer == 0;
int x = ground ? bridge.GetX(bridge.Self) : 0xFFFF;
int y = ground ? bridge.GetY(bridge.Self) : 0xFFFF;
int z = ground ? bridge.GetZ(bridge.Self) : 0;
return CompactMoveItem(new[]
{
new InjectionValue(id), new InjectionValue(amount), destination,
new InjectionValue(x), new InjectionValue(y), new InjectionValue(z),
values[3], InjectionValue.True
});
}Виконує показані виклики та оновлення стану.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5395.
public void DeleteJournal()
Результат: void.
Виклики: bridge.DeleteJournal, SelectJournalEntry.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.DeleteJournal:bridge.DeleteJournal(). -
InjectionScript.Runtime.InjectionApiUO.SelectJournalEntry:SelectJournalEntry(null).
Внутрішній код реалізації, не самостійний скрипт.
public void DeleteJournal()
{
bridge.DeleteJournal();
SelectJournalEntry(null);
}Повертає значення виразу нижче.
Параметри: layer, id
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5739.
public int Equip(string layer, int id)
Результат: int.
Результат: bridge.Equip(ConvertLayer(layer), id).
Виклики: bridge.Equip, ConvertLayer.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Equip:bridge.Equip(ConvertLayer(layer), id). -
InjectionScript.Runtime.InjectionApiUO.ConvertLayer:ConvertLayer(layer).
Внутрішній код реалізації, не самостійний скрипт.
public int Equip(string layer, int id) => bridge.Equip(ConvertLayer(layer), id);Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1711.
Результат: InjectionValue.Zero; new InjectionValue(id).
Умови: !TryMapFigureArg(0, out int[] figure, out string figureText); bridge.SetMapFigure(id, figure[0], figure[1], figure[2], figure[3], figure[4], figure[5], figure[6], figure[7], figure[8], figure[9], figureText) == 0.
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::TryMapFigureArg:TryMapFigureArg(0, out int[] figure, out string figureText). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.SetMapFigure:bridge.SetMapFigure(id, figure[0], figure[1], figure[2], figure[3], figure[4], figure[5], figure[6], figure[7], figure[8], figure[9], figureText). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::SerializeMapFigure:SerializeMapFigure(figure, figureText).
Внутрішній код реалізації, не самостійний скрипт.
case "addfigure":
{
if (!TryMapFigureArg(0, out int[] figure, out string figureText))
return InjectionValue.Zero;
int id = state.NextMapFigureId++;
if (bridge.SetMapFigure(id, figure[0], figure[1], figure[2], figure[3], figure[4], figure[5], figure[6], figure[7], figure[8], figure[9], figureText) == 0)
return InjectionValue.Zero;
state.MapFigures[id] = SerializeMapFigure(figure, figureText);
return new InjectionValue(id);
}Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1284.
Результат: InjectionValue.Unit.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.SetAutoBuyRule:bridge.SetAutoBuyRule(Arg(0), Arg(1), Arg(2), 0, string.Empty). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Arg:Arg(0). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Arg:Arg(1). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Arg:Arg(2).
Внутрішній код реалізації, не самостійний скрипт.
case "autobuy":
bridge.SetAutoBuyRule(Arg(0), Arg(1), Arg(2), 0, string.Empty); return InjectionValue.Unit;Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1608.
Результат: InjectionValue.Unit.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.CloseClientWindow:bridge.CloseClientWindow(Arg(0), Arg(1)). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Arg:Arg(0). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Arg:Arg(1).
Внутрішній код реалізації, не самостійний скрипт.
case "closeclientuiwindow": bridge.CloseClientWindow(Arg(0), Arg(1)); return InjectionValue.Unit;Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1358.
Результат: new InjectionValue(state.DropCheckCoord).
Умови: arguments.Length > 0.
Виклики:
Внутрішній код реалізації, не самостійний скрипт.
case "dropcheckcoord":
if (arguments.Length > 0) state.DropCheckCoord = Arg(0) != 0 ? 1 : 0;
return new InjectionValue(state.DropCheckCoord);Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1435.
Результат: new InjectionValue(bridge.GetClilocById(Arg(0), StringArrayArg(1))).
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetClilocById:bridge.GetClilocById(Arg(0), StringArrayArg(1)). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Arg:Arg(0). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::StringArrayArg:StringArrayArg(1).
Внутрішній код реалізації, не самостійний скрипт.
case "getclilocbyid":
return new InjectionValue(bridge.GetClilocById(Arg(0), StringArrayArg(1)));Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1605.
Результат: GumpLinesResult(bridge.GetGumpFullLines(Arg(0))).
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.GumpLinesResult:GumpLinesResult(bridge.GetGumpFullLines(Arg(0))). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetGumpFullLines:bridge.GetGumpFullLines(Arg(0)). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Arg:Arg(0).
Внутрішній код реалізації, не самостійний скрипт.
case "getgumpfulllines": return GumpLinesResult(bridge.GetGumpFullLines(Arg(0)));Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1601.
Результат: new InjectionValue(bridge.GetGumpId(Arg(0))).
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetGumpId:bridge.GetGumpId(Arg(0)). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Arg:Arg(0).
Внутрішній код реалізації, не самостійний скрипт.
case "getgumpid": return new InjectionValue(bridge.GetGumpId(Arg(0)));Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1570.
Результат: new InjectionValue(bridge.GetName(Arg(0, bridge.Self))).
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetName:bridge.GetName(Arg(0, bridge.Self)). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Arg:Arg(0, bridge.Self). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Self:bridge.Self.
Внутрішній код реалізації, не самостійний скрипт.
case "getname":
case "charname": return new InjectionValue(bridge.GetName(Arg(0, bridge.Self)));Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1524.
Результат: new InjectionValue(bridge.GetScriptState(Arg(0))).
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetScriptState:bridge.GetScriptState(Arg(0)). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Arg:Arg(0).
Внутрішній код реалізації, не самостійний скрипт.
case "getscriptstate": return new InjectionValue(bridge.GetScriptState(Arg(0)));Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1520.
Результат: new InjectionValue(bridge.GetScriptsCount()).
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetScriptsCount:bridge.GetScriptsCount().
Внутрішній код реалізації, не самостійний скрипт.
case "getscriptscount": return new InjectionValue(bridge.GetScriptsCount());Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1347.
Результат: new InjectionValue(state.WalkMountTimer).
Внутрішній код реалізації, не самостійний скрипт.
case "getwalkmounttimer": return new InjectionValue(state.WalkMountTimer);Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1656.
Результат: new InjectionValue(arguments.Length > 0 ? bridge.IsWarMode(Arg(0)) : WarMode()).
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.IsWarMode:bridge.IsWarMode(Arg(0)). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Arg:Arg(0). -
InjectionScript.Runtime.InjectionApiUO.WarMode:WarMode().
Внутрішній код реалізації, не самостійний скрипт.
case "iswarmode": return new InjectionValue(arguments.Length > 0 ? bridge.IsWarMode(Arg(0)) : WarMode());Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1365.
Результат: new InjectionValue(bridge.GetYellowBar(Arg(0, bridge.Self))).
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetYellowBar:bridge.GetYellowBar(Arg(0, bridge.Self)). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Arg:Arg(0, bridge.Self). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Self:bridge.Self.
Внутрішній код реалізації, не самостійний скрипт.
case "isyellowhits": return new InjectionValue(bridge.GetYellowBar(Arg(0, bridge.Self)));Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2034.
Результат: new InjectionValue(GetJournalText(0)).
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.GetJournalText:GetJournalText(0).
Внутрішній код реалізації, не самостійний скрипт.
case "lastjournalmessage": return new InjectionValue(GetJournalText(0));Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1294.
Результат: new InjectionValue(bridge.LastTarget).
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.LastTarget:bridge.LastTarget.
Внутрішній код реалізації, не самостійний скрипт.
case "lasttarget": return new InjectionValue(bridge.LastTarget);Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2046.
Результат: new InjectionValue(selectedJournalEntry?.TextType ?? 0).
Внутрішній код реалізації, не самостійний скрипт.
case "linetype": return new InjectionValue(selectedJournalEntry?.TextType ?? 0);Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1310.
Результат: new InjectionValue((bridge as IProxyMetadataBridge)?.ProxyPort ?? 0).
Внутрішній код реалізації, не самостійний скрипт.
case "proxyport": return new InjectionValue((bridge as IProxyMetadataBridge)?.ProxyPort ?? 0);Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1338.
Результат: InjectionValue.Unit.
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.ClampMoveTimer:ClampMoveTimer(Arg(0), 100). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Arg:Arg(0). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.SetMovementTimers:bridge.SetMovementTimers(state.RunMountTimer, state.RunUnmountTimer, state.WalkMountTimer, state.WalkUnmountTimer).
Внутрішній код реалізації, не самостійний скрипт.
case "setrunmounttimer":
state.RunMountTimer = ClampMoveTimer(Arg(0), 100);
bridge.SetMovementTimers(state.RunMountTimer, state.RunUnmountTimer, state.WalkMountTimer, state.WalkUnmountTimer);
return InjectionValue.Unit;Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1525.
Результат: InjectionValue.Unit.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.SetScriptName:bridge.SetScriptName(Arg(0), Text(1)). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Arg:Arg(0). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Text:Text(1).
Внутрішній код реалізації, не самостійний скрипт.
case "setscriptname": bridge.SetScriptName(Arg(0), Text(1)); return InjectionValue.Unit;Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1581.
Результат: InjectionValue.Unit.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.SetSkillLockState:bridge.SetSkillLockState(Text(0), Arg(1)). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Text:Text(0). -
InjectionScript.Runtime.InjectionApiUO.ExecuteClientApiCompatibility::Arg:Arg(1).
Внутрішній код реалізації, не самостійний скрипт.
case "setskilllockstate":
case "skilllockstate": bridge.SetSkillLockState(Text(0), Arg(1)); return InjectionValue.Unit;Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1556.
Результат: new InjectionValue(bridge.ShardName).
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ShardName:bridge.ShardName.
Внутрішній код реалізації, не самостійний скрипт.
case "shardname":
case "profileshardname": return new InjectionValue(bridge.ShardName);Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1490.
Результат: new InjectionValue(bridge.Strength).
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Strength:bridge.Strength.
Внутрішній код реалізації, не самостійний скрипт.
case "str": return new InjectionValue(bridge.Strength);Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2047.
Результат: WaitJournalLine(arguments, false).
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.WaitJournalLine:WaitJournalLine(arguments, false).
Внутрішній код реалізації, не самостійний скрипт.
case "waitjournalline": return WaitJournalLine(arguments, false);Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1507.
Результат: new InjectionValue(bridge.WorldNumber).
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.WorldNumber:bridge.WorldNumber.
Внутрішній код реалізації, не самостійний скрипт.
case "worldnum": return new InjectionValue(bridge.WorldNumber);Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1840.
Результат: new InjectionValue(state.MoveBetweenTwoCorners).
Умови: arguments.Length > 0.
Виклики:
Внутрішній код реалізації, не самостійний скрипт.
case "movebetweentwocorners":
if (arguments.Length > 0) state.MoveBetweenTwoCorners = Arg(0) != 0 ? 1 : 0;
return new InjectionValue(state.MoveBetweenTwoCorners);Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1330.
Результат: new InjectionValue(state.MoveCheckStamina).
Умови: arguments.Length > 0.
Виклики:
Внутрішній код реалізації, не самостійний скрипт.
case "movecheckstamina": if (arguments.Length > 0) state.MoveCheckStamina = Math.Max(0, Arg(0)); return new InjectionValue(state.MoveCheckStamina);Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1332.
Результат: new InjectionValue(state.MoveHeuristicMultiplier).
Умови: arguments.Length > 0.
Виклики:
Внутрішній код реалізації, не самостійний скрипт.
case "moveheuristicmult": if (arguments.Length > 0) state.MoveHeuristicMultiplier = Math.Max(0, Arg(0)); return new InjectionValue(state.MoveHeuristicMultiplier);Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2877.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.CloseSimpleGump:bridge.CloseSimpleGump(arguments.Length > 0 ? Arg(0) : -1). -
InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias::Arg:Arg(0).
Внутрішній код реалізації, не самостійний скрипт.
case "cancelgump": bridge.CloseSimpleGump(arguments.Length > 0 ? Arg(0) : -1); break;Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2867.
Виклики:
-
InjectionScript.Runtime.State.NamedIgnoreLists.Remove:state.IgnoreTypeLists.Remove(Text(0), arguments.Length > 1 ? ResolveType(arguments[1]) : (int?)null, arguments.Length > 2 ? NumberConversions.ToInt(arguments[2]) : (int?)null). -
InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias::Text:Text(0). -
InjectionScript.Runtime.InjectionApiUO.ResolveType:ResolveType(arguments[1]). -
InjectionScript.Runtime.NumberConversions.ToInt:NumberConversions.ToInt(arguments[2]).
Внутрішній код реалізації, не самостійний скрипт.
case "deleteignorelist":
state.IgnoreTypeLists.Remove(Text(0), arguments.Length > 1 ? ResolveType(arguments[1]) : (int?)null,
arguments.Length > 2 ? NumberConversions.ToInt(arguments[2]) : (int?)null);
break;Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2890.
Результат: new InjectionValue(MoveItem(arguments[0], arguments.Length > 1 ? arguments[1] : InjectionValue.Zero, new InjectionValue("ground"), new InjectionValue(GetX()), new InjectionValue(GetY()), new InjectionValue(GetZ()))); InjectionValue.False.
Умови: arguments.Length > 0.
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.MoveItem:MoveItem(arguments[0], arguments.Length > 1 ? arguments[1] : InjectionValue.Zero, new InjectionValue("ground"), new InjectionValue(GetX()), new InjectionValue(GetY()), new InjectionValue(GetZ())). -
InjectionScript.Runtime.InjectionApiUO.GetX:GetX(). -
InjectionScript.Runtime.InjectionApiUO.GetY:GetY(). -
InjectionScript.Runtime.InjectionApiUO.GetZ:GetZ().
Внутрішній код реалізації, не самостійний скрипт.
case "drophere":
if (arguments.Length > 0)
return new InjectionValue(MoveItem(arguments[0], arguments.Length > 1 ? arguments[1] : InjectionValue.Zero, new InjectionValue("ground"), new InjectionValue(GetX()), new InjectionValue(GetY()), new InjectionValue(GetZ())));
return InjectionValue.False;Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2955.
Умови: mobile != 0.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetMobiles:bridge.GetMobiles(). -
InjectionScript.Runtime.State.RuntimeDictionary.Set:state.Objects.Set(arguments.Length > 0 ? Text(0) : "findman", mobile). -
InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias::Text:Text(0).
Внутрішній код реалізації, не самостійний скрипт.
case "findman":
{
int mobile = bridge.GetMobiles().FirstOrDefault();
if (mobile != 0) state.Objects.Set(arguments.Length > 0 ? Text(0) : "findman", mobile);
break;
}Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2970.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Mount:bridge.Mount(Arg(0, bridge.LastTarget)). -
InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias::Arg:Arg(0, bridge.LastTarget). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.LastTarget:bridge.LastTarget.
Внутрішній код реалізації, не самостійний скрипт.
case "mount": bridge.Mount(Arg(0, bridge.LastTarget)); break;Гілка обробляє лише вказане ім’я команди.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3057.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Print:bridge.Print(state.FontColor, Text(0)). -
InjectionScript.Runtime.InjectionApiUO.ExecuteLegacyManualAlias::Text:Text(0).
Внутрішній код реалізації, не самостійний скрипт.
case "uoamessage": bridge.Print(state.FontColor, Text(0)); break;Повертає значення виразу нижче.
Параметри: id
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3739.
public int Exists(string id)
Результат: int.
Результат: Exists(GetObject(id)).
Виклики: Exists, GetObject.
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.Exists:Exists(GetObject(id)). -
InjectionScript.Runtime.InjectionApiUO.GetObject:GetObject(id).
Внутрішній код реалізації, не самостійний скрипт.
public int Exists(string id) => Exists(GetObject(id));Перевіряє умови нижче й повертає показаний результат.
Параметри: typeValue, color, distance, notorietyValue, nearest, maxZ
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:4131.
`private int FindFilteredTargetSerial(InjectionValue typeValue, int color, int distance,
InjectionValue notorietyValue, bool nearest, int maxZ)`
Результат: int.
Результат: candidates.FirstOrDefault().
Виклики: bridge.GetIgnoreList, state.IgnoreTypeLists.FilterFor, ParseTypeMask, ParseIntMask, bridge.GetZ, bridge.GetFindDistance, Math.Max, bridge.GetFindVertical.
Умови: notorieties.Count > 0; nearest.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetIgnoreList:bridge.GetIgnoreList(). -
InjectionScript.Runtime.State.NamedIgnoreLists.FilterFor:state.IgnoreTypeLists.FilterFor(state.SelectedIgnoreList). -
InjectionScript.Runtime.InjectionApiUO.ParseTypeMask:ParseTypeMask(typeValue). -
InjectionScript.Runtime.InjectionApiUO.ParseIntMask:ParseIntMask(notorietyValue). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetZ:bridge.GetZ(self). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetFindDistance:bridge.GetFindDistance(). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetFindVertical:bridge.GetFindVertical(). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetMobiles:bridge.GetMobiles(). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetWorldItems:bridge.GetWorldItems(). -
InjectionScript.Runtime.InjectionApiUO.MatchesIgnoredType:MatchesIgnoredType(id, ignoredTypes). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetGraphics:bridge.GetGraphics(id). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetColor:bridge.GetColor(id). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetDistance:bridge.GetDistance(id). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetZ:bridge.GetZ(id). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetNotoriety:bridge.GetNotoriety(id). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Self:bridge.Self.
Внутрішній код реалізації, не самостійний скрипт.
private int FindFilteredTargetSerial(InjectionValue typeValue, int color, int distance,
InjectionValue notorietyValue, bool nearest, int maxZ)
{
HashSet<int> ignored = new HashSet<int>(bridge.GetIgnoreList());
IgnoreTypeFilter ignoredTypes = state.IgnoreTypeLists.FilterFor(state.SelectedIgnoreList);
HashSet<int> types = ParseTypeMask(typeValue);
HashSet<int> notorieties = ParseIntMask(notorietyValue);
int self = bridge.Self;
int selfZ = bridge.GetZ(self);
int effectiveDistance = distance < 0 ? bridge.GetFindDistance() : Math.Max(0, distance);
int effectiveMaxZ = maxZ < 0 ? bridge.GetFindVertical() : Math.Max(0, maxZ);
IEnumerable<int> candidates;
if (notorieties.Count > 0)
{
// Notoriety is a Mobile property. Supplying it makes the search mobile-only.
candidates = bridge.GetMobiles();
}
else
{
candidates = bridge.GetMobiles().Concat(bridge.GetWorldItems());
}
candidates = candidates
.Where(id => id != 0 && id != self && (!ignored.Contains(id) && !MatchesIgnoredType(id, ignoredTypes)))
.Distinct()
.Where(id => types.Count == 0 || types.Contains(bridge.GetGraphics(id)))
.Where(id => color < 0 || color == 0xFFFF || bridge.GetColor(id) == color)
.Where(id => effectiveDistance < 0 || bridge.GetDistance(id) <= effectiveDistance)
.Where(id => effectiveMaxZ < 0 || Math.Abs(bridge.GetZ(id) - selfZ) <= effectiveMaxZ)
.Where(id => notorieties.Count == 0 || notorieties.Contains(bridge.GetNotoriety(id)));
if (nearest)
candidates = candidates.OrderBy(id => bridge.GetDistance(id)).ThenBy(id => id);
return candidates.FirstOrDefault();
}Повертає значення виразу нижче.
Параметри: abilityId
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5894.
public string GetAbilityName(int abilityId)
Результат: string.
Результат: bridge.GetAbilityName(abilityId).
Виклики: bridge.GetAbilityName.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetAbilityName:bridge.GetAbilityName(abilityId).
Внутрішній код реалізації, не самостійний скрипт.
public string GetAbilityName(int abilityId) => bridge.GetAbilityName(abilityId);Виконує показані виклики та оновлення стану.
Параметри: supportedLayers
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5689.
private IEnumerable<Equip> GetEquips(int[] supportedLayers)
Результат: IEnumerable<Equip>.
Виклики: bridge.ObjAtLayer.
Умови: id != 0.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ObjAtLayer:bridge.ObjAtLayer(layer).
Внутрішній код реалізації, не самостійний скрипт.
private IEnumerable<Equip> GetEquips(int[] supportedLayers)
{
foreach (var layer in supportedLayers)
{
var id = bridge.ObjAtLayer(layer);
if (id != 0)
yield return new Equip(layer, id);
}
}Повертає значення виразу нижче.
Параметри: gumpId, identifier, key
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3236.
public InjectionValue GetGump(int gumpId, string identifier, int key)
Результат: InjectionValue.
Результат: ConvertGumpValue(identifier, bridge.GetGumpValue(gumpId, identifier, key)).
Виклики: ConvertGumpValue, bridge.GetGumpValue.
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.ConvertGumpValue:ConvertGumpValue(identifier, bridge.GetGumpValue(gumpId, identifier, key)). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetGumpValue:bridge.GetGumpValue(gumpId, identifier, key).
Внутрішній код реалізації, не самостійний скрипт.
public InjectionValue GetGump(int gumpId, string identifier, int key)
=> ConvertGumpValue(identifier, bridge.GetGumpValue(gumpId, identifier, key));Повертає значення виразу нижче.
Параметри: id
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3593.
public int GetHP(int id)
Результат: int.
Результат: bridge.GetHP(id).
Виклики: bridge.GetHP.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetHP:bridge.GetHP(id).
Внутрішній код реалізації, не самостійний скрипт.
public int GetHP(int id) => bridge.GetHP(id);Перевіряє умови нижче й повертає показаний результат.
Параметри: value
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2537.
private int GetJournalStartAge(InjectionValue value)
Результат: int.
Результат: elapsed <= 0d ? 0 : elapsed >= int.MaxValue ? int.MaxValue : (int)elapsed.
Виклики: NumberConversions.ToInt, DateTime.FromOADate, JournalTimestampToAge, CurrentJournalTime.
Умови: value.Kind == InjectionValueKind.Decimal && raw > 20_000d && raw < 100_000d.
Виклики:
-
InjectionScript.Runtime.NumberConversions.ToInt:NumberConversions.ToInt(value). -
InjectionScript.Runtime.InjectionApiUO.JournalTimestampToAge:JournalTimestampToAge(raw <= 0d ? 0 : raw >= int.MaxValue ? int.MaxValue : (int)raw, CurrentJournalTime()). -
InjectionScript.Runtime.InjectionApiUO.CurrentJournalTime:CurrentJournalTime().
Внутрішній код реалізації, не самостійний скрипт.
private int GetJournalStartAge(InjectionValue value)
{
double raw = value.Kind == InjectionValueKind.Decimal ? value.Decimal : NumberConversions.ToInt(value);
// LineTime is a Decimal OLE date; Now is an Integer millisecond
// timestamp. A running script's 20000..100000 ms is not a date.
if (value.Kind == InjectionValueKind.Decimal && raw > 20_000d && raw < 100_000d)
{
try
{
double elapsed = (timeSource.Now - DateTime.FromOADate(raw)).TotalMilliseconds;
return elapsed <= 0d ? 0 : elapsed >= int.MaxValue ? int.MaxValue : (int)elapsed;
}
catch (ArgumentException)
{
}
}
return JournalTimestampToAge(raw <= 0d ? 0 : raw >= int.MaxValue ? int.MaxValue : (int)raw,
CurrentJournalTime());
}Повертає значення виразу нижче.
Параметри: id
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3597.
public int GetMaxHP(int id)
Результат: int.
Результат: bridge.GetMaxHP(id).
Виклики: bridge.GetMaxHP.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetMaxHP:bridge.GetMaxHP(id).
Внутрішній код реалізації, не самостійний скрипт.
public int GetMaxHP(int id) => bridge.GetMaxHP(id);Повертає значення виразу нижче.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3610.
public string GetName()
Результат: string.
Результат: GetName("self").
Виклики: GetName.
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.GetName:GetName("self").
Внутрішній код реалізації, не самостійний скрипт.
public string GetName() => GetName("self");Перевіряє умови нижче й повертає показаний результат.
Параметри: name
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3828.
private int GetObject(InjectionValue name)
Результат: int.
Результат: id; -1.
Виклики: TryGetObject.
Умови: TryGetObject(name, out int id).
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.TryGetObject:TryGetObject(name, out int id).
Внутрішній код реалізації, не самостійний скрипт.
private int GetObject(InjectionValue name)
{
if (TryGetObject(name, out int id))
return id;
return -1;
}Повертає значення виразу нижче.
Параметри: group, tileId
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:6267.
public int GetTileHeight(InjectionValue group, InjectionValue tileId)
Результат: int.
Результат: tileGroup == 0 || properties.Length < 7 ? 0 : properties[6].
Виклики: NumberConversions.ToInt, bridge.GetTileDataProperties, Array.Empty<int>.
Виклики:
-
InjectionScript.Runtime.NumberConversions.ToInt:NumberConversions.ToInt(group). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetTileDataProperties:bridge.GetTileDataProperties(tileGroup, NumberConversions.ToInt(tileId)). -
InjectionScript.Runtime.NumberConversions.ToInt:NumberConversions.ToInt(tileId).
Внутрішній код реалізації, не самостійний скрипт.
public int GetTileHeight(InjectionValue group, InjectionValue tileId)
{
int tileGroup = NumberConversions.ToInt(group);
int[] properties = bridge.GetTileDataProperties(tileGroup, NumberConversions.ToInt(tileId)) ?? Array.Empty<int>();
return tileGroup == 0 || properties.Length < 7 ? 0 : properties[6];
}Повертає значення виразу нижче.
Параметри: x, y, map
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:6185.
public InjectionValue GetWorldCell(InjectionValue x, InjectionValue y, InjectionValue map)
Результат: InjectionValue.
Результат: BuildWorldCell(NumberConversions.ToInt(x), NumberConversions.ToInt(y), NumberConversions.ToInt(map), true).
Виклики: BuildWorldCell, NumberConversions.ToInt.
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.BuildWorldCell:BuildWorldCell(NumberConversions.ToInt(x), NumberConversions.ToInt(y), NumberConversions.ToInt(map), true). -
InjectionScript.Runtime.NumberConversions.ToInt:NumberConversions.ToInt(x). -
InjectionScript.Runtime.NumberConversions.ToInt:NumberConversions.ToInt(y). -
InjectionScript.Runtime.NumberConversions.ToInt:NumberConversions.ToInt(map).
Внутрішній код реалізації, не самостійний скрипт.
public InjectionValue GetWorldCell(InjectionValue x, InjectionValue y, InjectionValue map)
=> BuildWorldCell(NumberConversions.ToInt(x), NumberConversions.ToInt(y), NumberConversions.ToInt(map), true);Повертає значення виразу нижче.
Параметри: amount, id
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:4373.
public int Grab(int amount, int id)
Результат: int.
Результат: CompactGrab(new[] { new InjectionValue(amount), new InjectionValue(id) }).
Виклики: CompactGrab.
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.CompactGrab:CompactGrab(new[] { new InjectionValue(amount), new InjectionValue(id) }).
Внутрішній код реалізації, не самостійний скрипт.
public int Grab(int amount, int id) => CompactGrab(new[] { new InjectionValue(amount), new InjectionValue(id) });Виконує показані виклики та оновлення стану.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3208.
public void InfoGumps()
Результат: void.
Виклики: bridge.ShowGumpListInspector.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.ShowGumpListInspector:bridge.ShowGumpListInspector().
Внутрішній код реалізації, не самостійний скрипт.
public void InfoGumps()
{
bridge.ShowGumpListInspector();
}Повертає значення виразу нижче.
Параметри: id
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3642.
public int IsNpc(string id)
Результат: int.
Результат: IsNpc(GetObject(id)).
Виклики: IsNpc, GetObject.
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.IsNpc:IsNpc(GetObject(id)). -
InjectionScript.Runtime.InjectionApiUO.GetObject:GetObject(id).
Внутрішній код реалізації, не самостійний скрипт.
public int IsNpc(string id) => IsNpc(GetObject(id));Повертає значення виразу нижче.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:4307.
public int IsTargeting()
Результат: int.
Результат: bridge.IsTargeting().
Виклики: bridge.IsTargeting.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.IsTargeting:bridge.IsTargeting().
Внутрішній код реалізації, не самостійний скрипт.
public int IsTargeting() => bridge.IsTargeting();Перевіряє умови нижче й повертає показаний результат.
Параметри: values
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:4338.
private static int[] NormalizeLastTile(int[] values)
Результат: int[].
Результат: values; result.
Виклики: Array.Copy, Math.Min.
Умови: values != null && values.Length >= 4; values != null.
Внутрішній код реалізації, не самостійний скрипт.
private static int[] NormalizeLastTile(int[] values)
{
if (values != null && values.Length >= 4)
return values;
var result = new int[4];
if (values != null)
Array.Copy(values, result, Math.Min(values.Length, result.Length));
return result;
}Перевіряє умови нижче й повертає показаний результат.
Параметри: name
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:6045.
private static string NormalizeLegacyEventName(string name)
Результат: string.
Результат: value.
Виклики: (name ?? string.Empty).Trim, value.StartsWith, value.Substring.
Умови: value.StartsWith("ev", StringComparison.OrdinalIgnoreCase) && value.Length > 2.
Внутрішній код реалізації, не самостійний скрипт.
private static string NormalizeLegacyEventName(string name)
{
string value = (name ?? string.Empty).Trim();
if (value.StartsWith("ev", StringComparison.OrdinalIgnoreCase) && value.Length > 2)
value = value.Substring(2);
return value;
}Розбирає або знаходить значення аргументу за правилами, показаними в коді.
Параметри: value
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5116.
private static HashSet<int> ParseIntMask(InjectionValue value)
Результат: HashSet<int>.
Результат: result.
Виклики: AddMaskValue, result.Add.
Умови: value.Kind == InjectionValueKind.Array; result.Count == 0 && invalid && !unrestricted.
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.AddMaskValue:AddMaskValue(result, entry, ref invalid, ref unrestricted). -
InjectionScript.Runtime.InjectionApiUO.AddMaskValue:AddMaskValue(result, value, ref invalid, ref unrestricted).
Внутрішній код реалізації, не самостійний скрипт.
private static HashSet<int> ParseIntMask(InjectionValue value)
{
var result = new HashSet<int>();
bool invalid = false, unrestricted = false;
if (value.Kind == InjectionValueKind.Array)
{
foreach (InjectionValue entry in value.Array)
AddMaskValue(result, entry, ref invalid, ref unrestricted);
}
else
AddMaskValue(result, value, ref invalid, ref unrestricted);
// Empty is the established wildcard representation. An invalid-only
// mask must instead match nothing; graphics and notoriety are nonnegative.
if (result.Count == 0 && invalid && !unrestricted)
result.Add(int.MinValue);
return result;
}Перевіряє умови нижче й повертає показаний результат.
Параметри: mobile
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.ClassMasks.cs:126.
private HashSet<int> ReadWornTypes(int mobile)
Результат: HashSet<int>.
Результат: new HashSet<int>(snapshot.GetWornTypes(mobile) ?? Array.Empty<int>()); worn.
Виклики: snapshot.GetWornTypes, Array.Empty<int>, bridge.GetEquipment, bridge.GetLayer, worn.Add, bridge.GetGraphics.
Умови: bridge is IApiEquipmentSnapshotBridge snapshot; layer >= 1 && layer <= 24 && layer != 21.
Внутрішній код реалізації, не самостійний скрипт.
private HashSet<int> ReadWornTypes(int mobile)
{
if (bridge is IApiEquipmentSnapshotBridge snapshot)
return new HashSet<int>(snapshot.GetWornTypes(mobile) ?? Array.Empty<int>());
var worn = new HashSet<int>();
foreach (int item in bridge.GetEquipment(mobile) ?? Array.Empty<int>())
{
int layer = bridge.GetLayer(item);
if (layer >= 1 && layer <= 24 && layer != 21) worn.Add(bridge.GetGraphics(item));
}
return worn;
}Повертає значення виразу нижче.
Параметри: textValue, startValue
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3297.
public int ScanInt(InjectionValue textValue, InjectionValue startValue)
Результат: int.
Результат: match.Success && NumberConversions.TryStr2Int(match.Value, out int value) ? value : 0.
Виклики: textValue.ToString, Math.Max, Math.Min, NumberConversions.ToInt, Regex.Match, text.Substring, NumberConversions.TryStr2Int.
Виклики:
-
InjectionScript.Runtime.InjectionValue.ToString:textValue.ToString(). -
InjectionScript.Runtime.NumberConversions.ToInt:NumberConversions.ToInt(startValue). -
InjectionScript.Runtime.NumberConversions.TryStr2Int:NumberConversions.TryStr2Int(match.Value, out int value).
Внутрішній код реалізації, не самостійний скрипт.
public int ScanInt(InjectionValue textValue, InjectionValue startValue)
{
string text = textValue.ToString() ?? string.Empty;
int start = Math.Max(0, Math.Min(text.Length, NumberConversions.ToInt(startValue)));
Match match = Regex.Match(text.Substring(start), @"[-+]?(?:0[xX][0-9A-Fa-f]+|\d+)", RegexOptions.CultureInvariant);
return match.Success && NumberConversions.TryStr2Int(match.Value, out int value) ? value : 0;
}Повертає значення виразу нижче.
Параметри: triggerId
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3218.
public int SendGumpSelect(int triggerId)
Результат: int.
Результат: bridge.SendGumpSelect(triggerId).
Виклики: bridge.SendGumpSelect.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.SendGumpSelect:bridge.SendGumpSelect(triggerId).
Внутрішній код реалізації, не самостійний скрипт.
public int SendGumpSelect(int triggerId) => bridge.SendGumpSelect(triggerId);Повертає значення виразу нижче.
Параметри: name, arguments
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:2706.
private static string SerializeRecordedLegacyAction(string name, InjectionValue[] arguments)
Результат: string.
Результат: string.Join("\t", fields).
Виклики: `new[] { RecordedLegacyActionPrefix, EncodeRecordingText(name) }
.Concat`, `EncodeRecordingText`, `(arguments ?? Array.Empty<InjectionValue>()).Select`, `Array.Empty<InjectionValue>`, `string.Join`.
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.EncodeRecordingText:EncodeRecordingText(name).
Внутрішній код реалізації, не самостійний скрипт.
private static string SerializeRecordedLegacyAction(string name, InjectionValue[] arguments)
{
IEnumerable<string> fields = new[] { RecordedLegacyActionPrefix, EncodeRecordingText(name) }
.Concat((arguments ?? Array.Empty<InjectionValue>()).Select(SerializeRecordedValue));
return string.Join("\t", fields);
}Виконує показані виклики та оновлення стану.
Параметри: id
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:4350.
public void SetReceivingContainer(string id)
Результат: void.
Виклики: (id ?? string.Empty).Trim, name.Equals, SetReceivingContainer, GetObject.
Умови: `name.Equals("my", StringComparison.OrdinalIgnoreCase)
|| name.Equals("backpack", StringComparison.OrdinalIgnoreCase)`.
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.SetReceivingContainer:SetReceivingContainer(bridge.Backpack). -
InjectionScript.Runtime.InjectionApiUO.SetReceivingContainer:SetReceivingContainer(GetObject(id)). -
InjectionScript.Runtime.InjectionApiUO.GetObject:GetObject(id). -
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Backpack:bridge.Backpack.
Внутрішній код реалізації, не самостійний скрипт.
public void SetReceivingContainer(string id)
{
string name = (id ?? string.Empty).Trim();
if (name.Equals("my", StringComparison.OrdinalIgnoreCase)
|| name.Equals("backpack", StringComparison.OrdinalIgnoreCase))
{
SetReceivingContainer(bridge.Backpack);
return;
}
SetReceivingContainer(GetObject(id));
}Повертає значення виразу нижче.
Параметри: subrutineName
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5915.
public int SubExists(string subrutineName)
Результат: int.
Результат: bridge.SubExists(subrutineName) ? 1 : 0.
Виклики: bridge.SubExists.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.SubExists:bridge.SubExists(subrutineName).
Внутрішній код реалізації, не самостійний скрипт.
public int SubExists(string subrutineName) => bridge.SubExists(subrutineName) ? 1 : 0;Виконує показані виклики та оновлення стану.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:5320.
public void TextClose()
Результат: void.
Виклики: bridge.TextClose.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.TextClose:bridge.TextClose().
Внутрішній код реалізації, не самостійний скрипт.
public void TextClose() => bridge.TextClose();Повертає значення виразу нижче.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3367.
public int TicksAnim()
Результат: int.
Результат: ticksAnim.
Внутрішній код реалізації, не самостійний скрипт.
public int TicksAnim() => ticksAnim;Виконує показані виклики та оновлення стану.
Параметри: id
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:3919.
public void UseObject(int id)
Результат: void.
Виклики: bridge.UseObject, Timer.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.UseObject:bridge.UseObject(id). -
InjectionScript.Runtime.InjectionApiUO.Timer:Timer().
Внутрішній код реалізації, не самостійний скрипт.
public void UseObject(int id)
{
bridge.UseObject(id);
ticksUse = Timer();
}Виконує показані виклики та оновлення стану.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:4182.
public void WaitTargetLast()
Результат: void.
Виклики: WaitTargetObject.
Виклики:
-
InjectionScript.Runtime.InjectionApiUO.WaitTargetObject:WaitTargetObject("lasttarget").
Внутрішній код реалізації, не самостійний скрипт.
public void WaitTargetLast() => WaitTargetObject("lasttarget");Виклик виконує збережений delegate обробника. Метод реєстрації створює цей delegate під час побудови API.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1063.
serial
Результат: serial.
Результат: bridge.GetLocked(serial).
Виклики: bridge.GetLocked.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.GetLocked:bridge.GetLocked(serial).
Внутрішній код реалізації, не самостійний скрипт.
serial => bridge.GetLocked(serial)Виклик виконує збережений delegate обробника. Метод реєстрації створює цей delegate під час побудови API.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1026.
Результат: bridge.Mana.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Mana:bridge.Mana.
Внутрішній код реалізації, не самостійний скрипт.
() => bridge.ManaВиклик виконує збережений delegate обробника. Метод реєстрації створює цей delegate під час побудови API.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1051.
Результат: bridge.Sex.
Виклики:
Внутрішній код реалізації, не самостійний скрипт.
() => bridge.SexВиклик виконує збережений delegate обробника. Метод реєстрації створює цей delegate під час побудови API.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1058.
Внутрішній код реалізації, не самостійний скрипт.
IsDeadStateВиклик виконує збережений delegate обробника. Метод реєстрації створює цей delegate під час побудови API.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1042.
Результат: bridge.Armor.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.Armor:bridge.Armor.
Внутрішній код реалізації, не самостійний скрипт.
() => bridge.ArmorВиклик виконує збережений delegate обробника. Метод реєстрації створює цей delegate під час побудови API.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1043.
Результат: bridge.FireResistance.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.FireResistance:bridge.FireResistance.
Внутрішній код реалізації, не самостійний скрипт.
() => bridge.FireResistanceВиклик виконує збережений delegate обробника. Метод реєстрації створює цей delegate під час побудови API.
Параметри: Немає параметрів.
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/InjectionApiUO.cs:1045.
Результат: bridge.PoisonResistance.
Виклики:
-
ClassicUO.Game.Managers.ClassicUOInjectionApiBridge.PoisonResistance:bridge.PoisonResistance.
Внутрішній код реалізації, не самостійний скрипт.
() => bridge.PoisonResistanceВиконує показані виклики та оновлення стану.
Параметри: definition
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/Metadata.cs:16.
public void Add(NativeSubrutineDefinition definition)
Результат: void.
Виклики: nativeSubrutines.Add.
Виклики:
-
InjectionScript.Runtime.NativeSubrutineMetadata.Add:nativeSubrutines.Add(definition).
Внутрішній код реалізації, не самостійний скрипт.
public void Add(NativeSubrutineDefinition definition) => nativeSubrutines.Add(definition);Виконує показані виклики та оновлення стану.
Параметри: definition
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/Metadata.cs:19.
public void AddIntrinsicVariable(NativeSubrutineDefinition definition)
Результат: void.
Виклики: intrinsicVariables.Add.
Внутрішній код реалізації, не самостійний скрипт.
public void AddIntrinsicVariable(NativeSubrutineDefinition definition) => intrinsicVariables.Add(definition.Name,definition);Розбирає або знаходить значення аргументу за правилами, показаними в коді.
Параметри: str
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/NumberConversions.cs:12.
public static int ToInt(string str)
Результат: int.
Результат: value.
Виклики: TryStr2Int.
Умови: TryStr2Int(str, out int value).
Виклики:
-
InjectionScript.Runtime.NumberConversions.TryStr2Int:TryStr2Int(str, out int value).
Внутрішній код реалізації, не самостійний скрипт.
public static int ToInt(string str)
{
if (TryStr2Int(str, out int value))
return value;
throw new FormatException("Expected a 32-bit decimal integer or a hexadecimal integer prefixed with 0x.");
}Виконує показані виклики та оновлення стану.
Параметри: name, value
Джерело: Project_Full/external/InjectionScript/src/InjectionScript/Runtime/State/Globals.cs:20.
public void SetGlobal(string name, double value)
Результат: void.
Виклики: SetGlobal, value.ToString.
Виклики:
-
InjectionScript.Runtime.State.Globals.SetGlobal:SetGlobal(name, value.ToString()).
Внутрішній код реалізації, не самостійний скрипт.
public void SetGlobal(string name, double value) => SetGlobal(name, value.ToString());ClassicUO — Bad Newbie & C# Scripts IDE