Українська мова

Создание скриптов в GTA 5 на C#: c чего начать? Часть первая    
Привет. Меня зовут Пейдж. В ближайшее время я буду твоим персональным наставником. Ты хочешь научиться создавать скрипты для GTA 5 на языке C#? Ты пришёл по адресу.

Знай, что я не смогу дать тебе все навыки владения языком. Но не беспокойся, для этого существует множество различных туториалов, книг, видео-лекций. Но как и в случае с иностранными языками, чтобы понять язык программирования, необходимо использовать его на практике. Поэтому мы будем писать с тобой скрипты для GTA 5.

Какие скрипты?

Какие ты захочешь. Только не читерские. Я, конечно, могу взломать любую защиту, но этому учить тебя не буду, хорошо? Мы с тобой займемся скриптами для одиночной игры. Ты познакомишься с внутренним функционалом GTA 5, который довольно обширен. Он настолько огромен, что ещё не был до конца изучен, представляешь?

Но не бойся. Всё, что нужно для создания полноценного мода, уже давно известно. С этим не возникнет никаких проблем.


Прежде, чем приступить, тебе нужен софт. Скачай и установи Visual Studio. Именно в этом редакторе мы создадим с тобой первый скрипт.

Установил? Хорошо, открывай программу. Не пугайся, найди в верхнем углу пункт "Файл" - "Создать" - "Проект". В появившемся окне найди раздел "C#", "Классическое приложение Windows", "Библиотека классов (.NET Framework"). Нажми ОК.

Создание скриптов в GTA 5 на C#: c чего начать? Часть первая


Перед тобой открылась рабочая область и начальные строчки кода. Но к этому мы вернемся позже. В правой колонке найди "Обозреватель решений". Там будет отображаться созданный тобою проект. Найти там пункт "Ссылки", нажми на него правой кнопкой мыши - "Добавить ссылку". Нажми кнопку обзор и добавь файл ScriptHookVDotNet2.dll. Он должен быть установлен у тебя в игре, если ты всё же решил заниматься скриптингом :)

Создание скриптов в GTA 5 на C#: c чего начать? Часть первая


Так же к проекту необходимо подключить стандартную библиотеку Windows - System.Windows.Forms

Создание скриптов в GTA 5 на C#: c чего начать? Часть первая


Теперь необходимо добавить пространство имен в начало скрипта:

using GTA;
using GTA.Native;
using GTA.Math;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Reflection;
using System.Windows.Forms;


В наш уже готовый код допишем настройки, чтобы наш класс унаследовал GTA.Script:

Создание скриптов в GTA 5 на C#: c чего начать? Часть первая


Теперь добавим в наш код конструктор. Конструктор запускается один раз при запуске игры, поэтому добавляй туда только то, что должно быть запущено один раз. Давай впишем туда KeyDown события:

Создание скриптов в GTA 5 на C#: c чего начать? Часть первая


Как видишь, редактор подчеркивает эти строчки красным, якобы там ошибка. Ошибка в том, что мы только что объявили события, но не вписали их в код. Давай это исправим:

Создание скриптов в GTA 5 на C#: c чего начать? Часть первая


Ошибка исправлена. Теперь этот код можно запустить в игре. Но ничего не произойдет, потому что он пустой. Давай добавим что-нибудь. Например... Дадим игроку 5 звезд розыска при нажатии определенной клавиши. Что для этого нужно? Нам необходимо перехватить нажатие клавиши! Для этого мы и добавили событие KeyDown: оно срабатывает при каждом нажатии клавиш на клавиатуре, а класс KeyEventArgs содержит все данные о нажатой клавише. С помощью оператора IF мы можем узнать, нажата ли нужная нам клавиша, и если да, то мы выдадим игроку звезды розыска.

Создание скриптов в GTA 5 на C#: c чего начать? Часть первая


Теперь усложним наш скрипт. Если игрок уже выдал себе 5 звезд розыска и пытается выдать их ещё раз, уведомим его об этом сообщением на экране. Вывести текст на экран можно командой UI.ShowSubtitle("Твой текст");

Обрати внимание, GTA 5 поддерживает стандарт Unicode, это значит, что ты можешь писать на русском языке без всяких проблем.

Создание скриптов в GTA 5 на C#: c чего начать? Часть первая


Наш скрипт готов. Найди в верхнем меню пункт "Сборка" - "Собрать решение".

Создание скриптов в GTA 5 на C#: c чего начать? Часть первая


Если всё прошло успешно, в окне ты найдешь путь к своему dll файлу. Если в процессе сборки вылезли ошибки, скидывай скриншот в комментарии, я попытаюсь тебе помочь.

Скрипт необходимо положить в папку Scripts, которая находится в корневой папке GTA 5. Если её нет, то просто создай и положи туда свой скрипт.

Создание скриптов в GTA 5 на C#: c чего начать? Часть первая


Давай зайдем в игру, и убедимся, что наш скрипт работает. Звезды розыска выдаются на английскую клавишу H, ты же можешь выбрать любую другую на своё усмотрение.

Создание скриптов в GTA 5 на C#: c чего начать? Часть первая


Создание скриптов в GTA 5 на C#: c чего начать? Часть первая


Поздравляю! Ты сделал свой первый скрипт. Изучай особенности C#, чтобы в полной мере владеть им, и читай мои гайды по скриптингу в GTA 5. В некоторых из них ты можешь найти уникальное задание, за выполнение которого сможешь получить различные плюшки на этом сайте. Желаю удачи!
Сподобалась стаття?
, · Написати статтю


Проголосувати за статтю "Создание скриптов в GTA 5 на C#: c чего начать? Часть первая"
Голосів
 ПоганоЗадовільноОпосередкованоДобреВідмінно 
Рейтинг
852%

2007 Cadillac Escalade

9 червня 2008 GTA San Andreas
Хороша модель Cadillac'а, з відмінно опрацьованості салоном і кузовом.

Патч 1.0.3.0 (EN)

21 березня 2009 GTA 4
Патч 1.0.3.0 для англійської версії GTA 4 виправляє безліч різних проблем, включаючи проблеми з графікою, мультиплеер і системою управління. Крім того, збільшена продуктивність гри. Повний список змін: GRAPHICS: Interior Lights for ATI 1...

GTA San Andreas - Camera Hack v1.2 для windows 7

13 травня 2010 GTA San Andreas
GTA San Andreas - Camera Hack v1.2 для windows 7 Напевно багато хто зіткнувся з проблемою що, дуже хороша програма GTA San Andreas - Camera Hack , Не працює під windows 7. Проблема в тому що з 7-ки навіщо то, по видаляли необхідні бібліоте...

Phone Service

5 жовтня 2010 GTA San Andreas
З цим модом ваш телефон більше не буде припадати пилом у вас в кишені, а стане для вас самим незамінним предметом в ігровому процесі !!! Цей мод дає можливість використовувати різні телефонні сервіси! Сам скрипт складається з двох частин - це телефон...

San Andreas HRT Pack (v1.3 SF)

29 листопада 2010 GTA San Andreas
San Andreas HRT Pack - глобальна модифікація для GTA: San Andreas, яка суттєво покращує якість графіки, замінюючи більшу частину старих текстур високоякісними аналогами у високій роздільній здатності. Тисячі текстур місцевості були перероб...

Autumn Mod 2.0 HRT

2 грудня 2010 GTA San Andreas
Autumn Mod - осіння модифікація для GTA: San Andreas, яку можна встановлювати як поверх оригінальної гри, так і поверх глобального мода HRT Pack (В такому випадку буде більше нововведень). Autumn Mod змінює спрайт трави, тек...

вторгнення прибульців

5 грудня 2010 GTA San Andreas
До Сан-Андреасу рухаються величезні інопланетні кораблі! ФОТО. Три гігантських непізнаних літаючих об'єкта, довжина яких становить десятки кілометрів, рухаються у напрямку до штату Сан-Андреас, повідомив журналістам хтось Істина (The Trut...


Інформація
Щоб залишати коментарі, необхідно зареєструватися на сайті.

6
коментар написаний, 26 листопада 2018, 23:11
Цитувати виділене #
wmysterio
Профессиональный кодер
Статус:
Коментарів:162
Друзів:34
Репутація: 38
Гроші: 16$
Нагороди:: 2
GForums: wmysterio

Karma: 713
Цитувати #
0
Відразу питання: навіщо код показувати в картинках? Це такий спосіб змусити когось набирати все руками? :)
Цитата: Grey_Skripter
2) Чому тут немає угорської нотації?
Тому що C # в цьому не має потреби. У нього статична типізація, так що перекручуватися з іменами полів і властивостей - безглузде заняття.
Цитата: TheMorganEyght8
Че за бред, відразу починати з ООП
Да ладно. Створити клас і написати ": Script" - це ще не ООП.
Коментар переведений автоматично Показати оригінал

--------------------


--------------------

5
коментар написаний, 24 листопада 2018, 16:50
Цитувати виділене #
TheMorganEyght8
VIP-користувач
Пользователь
Статус:
Коментарів:1431
Друзів:95
Репутація: 159
Гроші: 6$
Нагороди:: 14
GForums: Morgan Eyght

Karma: 481
Цитувати #
0
Цитата: Пейдж
C# проще в понимании и с него легче переходить на C++, чем изучать с нуля.

Че за бред, сразу начинать с ооп
Коментар переведений автоматично Показати переклад

--------------------


--------------------

4
коментар написаний, 17 листопада 2018, 12:54
Цитувати виділене #
Пейдж
VIP-користувач
Профессиональный кодер
Статус:
Коментарів:6
Друзів:17
Репутація: 10000
Гроші: 9999$
Цитувати #
+1
Цитата: Grey_Skripter
1) Почему не C++?

C# проще в понимании и с него легче переходить на C++, чем изучать с нуля.

Цитата: Grey_Skripter
2) Почему здесь нет венгерской нотации?

Потому что это личный выбор программиста, использовать её или нет Но я могу рассказать об этом читателям в одном из следующих гайдов.
Коментар переведений автоматично Показати переклад

--------------------

3
коментар написаний, 17 листопада 2018, 07:53
Цитувати виділене #
Grey_Skripter
Пользователь
Статус:
Коментарів:4
Друзів:0
Репутація: 0
Гроші: 0$
Цитувати #
0
У меня есть лишь два вопроса:
1) Почему не C++?
2) Почему здесь нет венгерской нотации?
Коментар переведений автоматично Показати переклад

--------------------

2
коментар написаний, 14 листопада 2018, 12:40
Цитувати виділене #
Пейдж
VIP-користувач
Профессиональный кодер
Статус:
Коментарів:6
Друзів:17
Репутація: 10000
Гроші: 9999$
Цитувати #
0
Cherbet, верно. Pawn - Си-подобный язык :)
Коментар переведений автоматично Показати переклад

--------------------

1
коментар написаний, 14 листопада 2018, 08:00
Цитувати виділене #
Cherbet
Пользователь
Статус:
Коментарів:214
Друзів:8
Репутація: 3
Гроші: 2$
Нагороди:: 7


Karma: 547
Цитувати #
+1
Изично, кто знает pawn, тому ваще как два пальца.
Коментар переведений автоматично Показати переклад

--------------------