Script Hook V .NET 0.2.0
-
dfiles.euЗавантажити
ScriptHookV .NET - це ASI плагін, який дозволяє вам запускати в грі скрипти, написані на будь-якій .NET мові.
Для перезавантаження скриптів використовується клавіша Insert.
Вимоги
- Microsoft .NET Framework 4.0 (або вище)
Інсталяція
- Переконайтеся, що виконані всі вимоги з попереднього пункту. В іншому випадку нічого не вийде
- Завантажте та встановіть Script Hook V (включаючи ASI завантажувач)
- Завантажте ScriptHookV .NET і скопіюйте ASI файли в папку з грою
- Створіть (або завантажте) C#/VisualBasic файл (.cs, .vb) або скомпіліруйте .dll файл і помістіть в піддиректорію \"/scripts/\", що розташована в директорії гри. Після чого можна приступати до написання скриптів
Приклад скрипта
Наступний скрипт дозволяє включати лівий і правий поворотники автомобіля натисканням клавіш Q і E відповідно:
using System;
using System.Windows.Forms;
public class VehicleIndicatorDemo : Script // Кожен клас, що успадковує від GTA.Script, вважається скриптом і виконується
{
public VehicleIndicatorDemo()
{
Tick += OnTick; // Основна подія циклу, викликається кожні кілька мілісекунд, зазначених через властивість Interval.
KeyUp += onkeyup; // Викликається, коли клавіша або кнопка миші відпускається.
KeyDown += onkeydown; // Викликається, коли клавіша або кнопка миші натискається.
Interval = 10; // Інтервал тіку в мілісекундах. Встановіть в нуль, щоб працювати якнайшвидше.
}
bool mIndicatorLeft = false;
bool mIndicatorRight = false;
void OnTick(object sender, EventArgs e)
{
// Виклик нативних функцій:
// - Без типу повернення: GTA.Native.Function.Call(\"SET_MAX_WANTED_LEVEL\", 0);
// - З типом повернення: int id = GTA.Native.Function.Call
}
void onkeyup(object sender, KeyEventArgs e)
{
}
void onkeydown(object sender, KeyEventArgs e)
{
Ped player = Game.Player.Character;
if (player.IsInVehicle())
{
Vehicle vehicle = player.CurrentVehicle;
switch (e.KeyCode)
{
case Keys.Q:
vehicle.LeftIndicatorLightOn = this.mIndicatorLeft = !this.mIndicatorLeft;
break;
case Keys.E:
vehicle.RightIndicatorLightOn = this.mIndicatorRight = !this.mIndicatorRight;
break;
}
}
}
}
ScriptHookV .NET - это ASI плагин, который позволяет вам запускать в игре скрипты, написанные на любом .NET языке.
Для перезагрузки скриптов используется клавиша Insert.
Требования
- Microsoft .NET Framework 4.0 (или выше)
Установка
- Убедитесь, что выполнены все требования из предыдущего пункта. В противном случае ничего не получится
- Скачайте и устанвите Script Hook V (включая ASI загрузчик)
- Скачайте ScriptHookV .NET и скопируйте ASI файлы в папку с игрой
- Создайте (или скачайте) C#/VisualBasic файл (.cs, .vb) или скомпилируйте .dll файл и положите в поддиректорию \"/scripts/\", что расположена в директории игры. После чего можно приступать к написанию скриптов
Пример скрипта
Следующий скрипт позволяет включать левый и правый поворотники автомобиля нажатием клавиш Q и E соответственно:
using System;
using System.Windows.Forms;
public class VehicleIndicatorDemo : Script // Every class inheriting from GTA.Script is considered a script and executed
{
public VehicleIndicatorDemo()
{
Tick += OnTick; // Main loop event, called every few milliseconds specified via the Interval property.
KeyUp += onkeyup; // Called when a key or mouse button is released.
KeyDown += onkeydown; // Called when a key or mouse button is pressed.
Interval = 10; // Tick interval in milliseconds. Set to zero to run as fast as possible.
}
bool mIndicatorLeft = false;
bool mIndicatorRight = false;
void OnTick(object sender, EventArgs e)
{
// Calling native functions:
// - No return type: GTA.Native.Function.Call(\"SET_MAX_WANTED_LEVEL\", 0);
// - With return type: int id = GTA.Native.Function.Call
}
void onkeyup(object sender, KeyEventArgs e)
{
}
void onkeydown(object sender, KeyEventArgs e)
{
Ped player = Game.Player.Character;
if (player.IsInVehicle())
{
Vehicle vehicle = player.CurrentVehicle;
switch (e.KeyCode)
{
case Keys.Q:
vehicle.LeftIndicatorLightOn = this.mIndicatorLeft = !this.mIndicatorLeft;
break;
case Keys.E:
vehicle.RightIndicatorLightOn = this.mIndicatorRight = !this.mIndicatorRight;
break;
}
}
}
}