Перейти к содержимому

Welcome to Форум About-samp.ru - крупнейшее самп сообщество.
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. If you already have an account, login here - otherwise create an account for free today!
Фотография

[Pawno, Урок 1]: Создание полноценного мода.


  • Авторизуйтесь для ответа в теме
В этой теме нет ответов

#1
iWuds

iWuds

    Администратор

  • Пользователи
  • PipPip
  • 28 сообщений

Шаг первый. Начало начал.
Открываем pawno.exe и нажимаем "создать новый файл", и удаляем всё то, что нам не нужно:
#if defined FILTERSCRIPT

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

public OnFilterScriptExit()
{
        return 1;
}

#else
#endif

--------------------
Шаг второй. Изменение основ.
Настраиваем внутреннюю часть мода под себя. В паблике OnGameModeInit пишем:
SetGameModeText("P-W RP v0.1"); // Где "P-W RP v0.1" название вашего будущего мода. У нас будет P-W.
SendRconCommand("hostname [RUS|UA] Pawn-Wiki Role Play (0.3e)"); // Где "hostname" - означает изменение названия сервера, а "[RUS|UA] Pawn-Wiki Role Play (0.3e)" - само название.
Так же, мы изменим спавн игрока, так как нам не нужен Las venturas:
AddPlayerClass(299,1767.9595,-1667.1998,14.4126,90.9009,0,0,0,0,0,0);
вместо 
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
Ещё мы уберём стандартные желтые пикапы входов:
DisableInteriorEnterExits();
А ещё, мы избавимся Stunt бонусов:
EnableStuntBonusForAll(0); // Убираем Stunt бонусы

Сердце мода теперь работает, продолжим.

--------------------
Шаг третий. Начало регистрации.
Здесь будет собрано самое сложное, по этому просьба, отнестись к этому шагу на повышенном внимании.

Для начала подключаем два необходимых инклюда: 
#include <a_mysql> // Жизненно необходимый инклюд для работы с MySQL
#include <sscanf2> // Для вывода информации

Объявляем данные для входа в базу данных (о ней чуть позже):
#define SQL_HOST                "127.0.0.1" // IP хостинга, на котором расположена БД, у нас локальный IP
#define SQL_DB                  "wow"       // Название БД, у нас myrp
#define SQL_USER                "root"      // Это логин вашего аккаунта на хостинге, на котором расположена БД
#define SQL_PASS                ""          // Пароль того самого аккаунта, у нас пустой, так как запускаем локально
#define TABLE_ACCOUNT   "accounts"  // Название таблицы в которой хранятся аккаунты

Далее, создаём массив pInfo, это сердце аккаунта, вся статистика здесь:
enum pInfo
{
    pID,
    pPassword[256],
    pAdmin,
    pLevel,
    pMoney,
    pVip,
    pSkin,
    pLeader,
    pMember,
    pBan,
    pKills,
    pDeaths,
    pHealths,
    pClass,
    pLang
}
new Player[MAX_PLAYERS][pInfo];


Объявляем query, что бы не делать это при новом её использовании:
new query[500];

 
 
Автор данного урока by Stich, за урок спасибо порталу павно-вики.





Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных