Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

[Урок]Пишем мод с Mr_David (№1)

Статус
В этой теме нельзя размещать новые ответы.

Mr_David

Мастер
[HR][/HR]
Я решил помочь новичкам написать мод с нуля.Вот примерные характеристики мода:
Жанр:RPG/DM
Кол-во строк:-
Автор:Mr_David
План :​
-Полезные ссылки.
-Обзор основ PAWNO.
-Добавление классов.
[HR][/HR]
Начнём с файлов без которых мод не будет существовать.
- Скачать сервер "SA-MP" с оф.сайта
- Распаковать в любую удобную папку
- Открываем server.cfg
- Меняем слово changeme на любой пароль.Он будет использоватся как RCON.​
[HR][/HR]
Теперь запустим наш редактор pawno.exe.Он находится в папке pawno.
При запуске у нас открылось вот такое окошечко:

Нажимаем на

Вот и new.pwn создан.Теперь компилируем наш мод.
Нажимаем на
или жмём F5.
Сохраняем файл в папку gamemodes и вылазит такое окошко

Это означает что мод скомпилирован успешно.

Компиляция - (Попроще) процесс перевода pwn в amx.
Теперь мы удалим не нужные нам строки.Так как мы пишем мод а не FS(FilterScript) то мы должны удалить:
PHP:
#if defined FILTERSCRIPT

public OnFilterScriptInit()
{
	print("\n--------------------------------------");
	print(" Blank Filterscript by your name here");
	print("--------------------------------------\n");
	return 1;
}

public OnFilterScriptExit()
{
	return 1;
}

#else
Теперь нажимаем на кнопочку
даная кнопка служит для поиска.
И находим:

PHP:
#endif
Удаляем тоже.Так как это относится к FS.
Ну что ж это мы сделали.Идём дальше.
Снова жмём на кнопку
и находим:
PHP:
SetGameModeText("Blank Script");
Даная строка предназначена для установки название мода.На даным момент он називается "Blank Script" изменяем название на на то что нам хочется.
У меня например:
PHP:
SetGameModeText("new.pwn");
Сначала мода мы увидели
PHP:
#include <a_samp>
Без этого инклуда не существует ни один мод т.к это главный инклуд сервера.
В дальнейших уроках мы будем добавлять другие.
Include(инклуд)-директива для подключения файла.Таким способом мы подгружаем из файла нужную нам информацию.
Если вы внимательно читали план урока то вы увидели что мы будем добавлять классы.
За классы отвечает функция AddPlayerClass.
Эту функцию можно использовать только внутри паблика OnGameModeInit, в других пабликах работать не будет.
Мы увидели в моде вот такое:
PHP:
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
Что же это?
PHP:
(skin, Float:x, Float:y, Float:z, Float:Angle, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo)
skin ID скина, с которым игрок будет появляться на спавне.
Float:X X-координата места спавна игрока на карте.
Float:Y Y-координата места спавна игрока на карте.
Float:Z Z-координата места спавна игрока на карте.
Float:Angle Угол поворота лица игрока на спавне.
weapon1 Первое оружие, с которым игрок появится на спавне.
weapon1_ammo Кол-во патронов для первого оружия.
weapon2 Второе оружие, с которым игрок появится на спавне.
weapon2_ammo Кол-во патронов для второго оружия.
weapon3 Третье оружие, с которым игрок появится на спавне.
weapon3_ammo Кол-во патронов для третьего оружия.
By

Если вы хотите добавить свой класс то делайте вот так:
После
PHP:
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
Вставляем
AddPlayerClass(Float:x, Float:y, Float:z, Float:Angle, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo);
В самом верху мода вы увидели
PHP:
// This is a comment
// uncomment the line below if you want to write a filterscript

Это комментарии.Их используют очень часто.Например чтобы сказать что означает функция и т.д.
Чтобы создать комметарий перед заметкой стоит всего поставить два знаки:
PHP:
//
А чтобы закоментировать открывки мода мы используем:
PHP:
В начале кода /*/ и в конце /*/
Это означает что мы как бы скрываем для сервера этот отрывок но в нашем коде он будет.
Пример:

PHP:
	/*/SetGameModeText("Blank Script");
           AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
	return 1;/*/
В конце ваших проделок не забывайте компилировать мод!
или F5

И ещё немного о кнопочках в pawno:
- Создать new.pwn
- Открыть файл
- Сохранить
- Искать
- Искать вперёд/назад
- Заменить A на B (Где а и b любые слова/значения)
- Компиляция мода
На этом всё.Всем весёлых праздников.С наступающим вас =).
В втором уроке мы поговорим о:
Колбэках
Переменных
String
И чуток оптимизации
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу