Как написать бота самп

SR_team


  • #1

Данный плагин — практически универсальный генератор LUA-ботов.

03x6rqa20vgkgz50.png

Если первое предложение оказалось не достаточно подробным, то поясню на обезьяньем языке — «Ну эта типа такой клео скрипт на сф штобы ботов делать». Ну или если совсем тяжко, то смотрите видео:

Меню данного плагина условно разделено на 4 части, где накрест расположенные части меню взаимосвязаны больше, чем со смежными частями меню. Так левая-верхняя часть — это история действий бота, а правая-нижняя — это функции добавляющие действия бота. Левая-нижняя и правая-верзняя части — это настройки.

Само меню активируется

консольной

командой bm

Вся история пролистывается колесиком мыши.

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

Действия истории можно дублировать в конец истории нажатием правой кнопки мыши по нужному действию в истории.

  • Название — это название, которое будет присвоено боту. От названия зависит имя выходного файла, оповещение об активации, секция script_name в сорцах.
  • Автор — ник создателя бота. От него зависит только секция script_authors в сорцах.
  • Описание — краткое изложение, для чего нужен этот бот.
  • Версия — версия бота.
  • Активация — команда при помощи которой будет активироваться бот.
  • Позиция — координаты для функций «Бег к координатам» и «Телепорт на координаты».
  • Записать текущие координаты — автоматическое изменение поля «Позиция» на координаты игрока.
  • Время — задержка в мини-секундах (сек/10).
  • Патерн/Клавиша — поле используемое для патернов для поиска 3D текста (подстроки, регулярки) и указания клавиши (название клавиш берется из lib.moonloader).
  • Радиус поиска — радиус в котором ищутся маркеры и 3D тексты.
  • Текст — поле с текстом используемое для сообщений чата и диалогов.
  • Сохранить в LUA — сохранение бота как самостоятельный lua-скрипт, не зависящий от bot maker’а
  • Сбросить запись бота — очищает всю историю и выставляет стандартные значения для некоторых настроек.
  • Цикличное воспроизведение — повтор действий бота, после завершения его работы.
  • ID координат — выбор секции для сохранения и загрузки координат функциями «Сохранение координат», «Телепорт на сохраненные координаты», «Бег к сохраненным координатам».
  • Тип маркеров — определяет какие маркеры будут искаться при выборе функции «Бег к маркеру»
  • Параметры диалогов — настройки относящиеся только к диалогам.
    • id элемента — выбор элемента из списка, если диалог его имеет.
    • Клавиша закрытия — определяет какой клавишей будет закрыт диалог.
  • Параметры передвижения — настройки относящиеся только к передвижению.
    • Радиус — определяет насколько близко нужно подойти к заданной позиции.
    • Тип — определяет тип передвижения (в транспорте используйте только «легкий бег»).

Для работы плагина bot maker необходимо:

  1. CLEO 4.1
  2. SAMPFUNCS 5.3.3
  3. SAMP 0.3.7
  4. MenuManager (Есть в архиве)
  5. Microsoft Visual C++ 2012 Redistributable x86 (32-bit)

Для работы созданных вами ботов необходимо:

  1. SA MoonLoader
  2. CLEO
  3. SAMPFUNCS (не для всех ботов)
  4. SAMP (не для всех ботов)
  • bot maker.zip

    174.5 KB

    · Просмотры: 7,675

Последнее редактирование: 28 Авг 2016

Breakaway


  • #13

Вот бы кто-нибудь запилил видео-обзор.
А то самому дохрена долго разбираться))

Ой не, в пизду этих обзорщиков. «Bot maker от какого-то там SR_team, но не суть.» И начинают нести хуйню

Добрый день, дорогой читатель! Сегодня мы попробуем научиться делать ботов для crmp, впринципе, это актуально и для samp. 

Начнем. 

Для начала скачайте все необходимые файлы. 

А именно: инклуд (a_npc), и скрипт записи маршрута бота (npc_record.pwn and npc_record.amx). 

Как установить скрипт: два файла  (npc_record.pwn and npc_record.amx) киньте в папку filterscripts, потом пропишите в server.cfg:

filterscripts npc_record

ЭТАП 1/3 : ЗАПИСЬ МАРШРУТА

Далее, садитесь в машину / или пешком начинайте записывать маршрут. 

В случае, если маршрут записывается пешком, используйте команду /precord, если в авто используйте команду /vrecord. 

После окончания маршрута вводите /screcord и запись движений остановится. 

Записанный файл находится по пути: scriptfiles/namebot.rec

ЭТАП 2/3 : СОЗДАНИЕ СКРИПТА-БОТА

Теперь файл namebot.rec (из scriptfiles) перемещаем в npcmodes/recordings.

Там будет лежать запись бота. 

Переходим в папку /npcmodes.

Создаем скрипт (файл .pwn) следующего содержания: 

#define RECORDING "NameNPC" //Имя вашего записанного файла из scriptfiles без расширения
#define RECORDING_TYPE 1 //1 - если путь записан на машине, 2 - пешком
#include <a_npc>
 
main(){}
 
public OnRecordingPlaybackEnd() StartRecordingPlayback(RECORDING_TYPE, RECORDING);
#if RECORDING_TYPE == 1
public OnNPCEnterVehicle(vehicleid, seatid) StartRecordingPlayback(RECORDING_TYPE, RECORDING);
public OnNPCExitVehicle() StopRecordingPlayback();
#else
public OnNPCSpawn() StartRecordingPlayback(RECORDING_TYPE, RECORDING); .
#endif

ВНИМАНИЕ! Название .pwn скрипта НЕ произвольное. Оно должно быть таким же, как и название записи (.rec файла). 

В данном скрипте настройте, согласно указаниям, а после скомпилируйте скрипт (F5).

ЭТАП 3/3 : НАСТРОЙКА NPC В МОДЕ

Ко всем глобальным переменным (new) в моде добавляем:
 

new VehicleNPC; // транспорт, в который будем садить NPC. Проигнорируйте, если запись пешком

Далее отправляемся в OnGameModeInit и добавляем следующий код:

ConnectNPC("имя бота (произовльное)","название файла из scriptfiles без расширения");
VehicleNPC = CreateVehicle(400,0.0,0.0,5.0,0.0,3,3,5000); // нулевые координаты изменять не нужно, транспорт сам телепортируется к нашему нпс, измените только модель транспорта (по желанию) и цвет транспорта (по желанию)

Далее идем в OnPlayerSpawn, вставляем следующий код (желательно в начало паблика):

if(IsPlayerNPC(playerid))
{
    new npcname[MAX_PLAYER_NAME];
    GetPlayerName(playerid,npcname,sizeof(npcname));
    if(!strcmp(npcname,"имя указанное в ConnectNPC",true))
    {
        PutPlayerInVehicle(playerid,VehicleNPC,0); // сажаем NPC в машину
      	SetPlayerColor(playerid, 0xFFFFFF00); // делаем прозрачный цвет NPC
    }
    return 1;
}

Далее, добавляем это в паблики, которые нежелательны для применения к NPC. Например, если он ездит в машине, добавьте там, где тратится бензин. Обязательно добавьте при регистрации, чтобы она ему не мешала и п. Если у вас возникли трудности, пишите в тему, расскажем куда еще добавить:

if(IsPlayerNPC(playerid)) return true;

Ну и все, npc готов! ВНИМАНИЕ! Если бот подключается, и его, сразу кикает, значит он не может заспавниться в моде. В основном это античит. Рекомендуется и туда добавить проверку, указанную чуть выше.  Автор урока: @steve! Будут проблемы, пишите в тему — поможем. 

Начнём с самого начала — это server.cfg.

server.cfg

maxnpc — Максимальное количество NPC(ботов)
Соответсвенно если maxnpc 0 то боты не могут подключится к серверу, так что ставим больше 0

Запись/воспроизведение файлов

Прежде всего, мы должны записать файл воспроизведения для нашего NPC(бота). Запустите сервер с любым модом. Заходим в Ркон аккаунт(Используем: «/rcon login <пароль>») и загружаем фильтрскрипт npc_record (Используем: «/rcon loadfs npc_record»).
Есть 3 основных команды для записи в npc_record:
/vrecord <имя файла> — Старт записи машины в указанный файл.
/ofrecord <имя файла> — Старт записи пешком в указанный файл.
/stoprecord — Останавливает запись(Как и на машине так и пешком)

В этом уроке, мы сделаем путь транспортного средства,так что садитесь в машину, и вводите /vrecord mynpc (Должны быть ркон админом) чтобы начать запись.
Немного поездите по городу и когда вы закончите, вводите, /stoprecord
Закройте игру и перейдите в папку scriptfiles, там вы увидите файл с именем mynpc.rec. Перенесите этот файл: «Папка с сервером>npcmodes>recordings»
Готово? Хорошо! Вы имеете запись(путь) для вашего будущего NPC.

Управление NPC

Ты мог заметить, что много pawno скриптов в каталоге npcmodes, это стандартные «мини» скрипты, которые контролируют действия вашего NPC.
Итак, создадим скрипт для вашего записанного пути.

Создаём новый файл в pawno, и заменяем его содержимое на это:

PHP:

 #define RECORDING "mynpc" //Имя вашего файла записи без расширения   
 #define RECORDING_TYPE 1 //1 если путь записан в машине и 2 если путь записан пешком   
 #include <a_npc>   

 main()
{   
 public OnRecordingPlaybackEnd() StartRecordingPlayback(RECORDING_TYPE, RECORDING);   
 #if RECORDING_TYPE == 1   
 public OnNPCEnterVehicle(vehicleid, seatid) StartRecordingPlayback(RECORDING_TYPE, RECORDING);   
 public OnNPCExitVehicle() StopRecordingPlayback();   
 #else   
 public OnNPCSpawn() StartRecordingPlayback(RECORDING_TYPE, RECORDING); .   
 #endif
}

Это может быть выглядит для вас непонятно, но сейчас я опишу каждую строчку!

PHP:

#define RECORDING "mynpc" - //Имя вашего файла записи без расширения.

Наша запись была названа mynpc, и его расширение было .rec, поэтому мы вводим сюда mynpc

PHP:

#define RECORDING_TYPE 1 //1 если путь записан в машине и 2 если путь записан пешком

#include <a_npc>//Задействуем функции инклуда a_npc.

publiс OnRecordingPlaybackEnd() StartRecordingPlayback(RECORDING_TYPE, RECORDING); 

OnRecordingPlaybackEnd Это строка кода делает запись цикла, когда нами записанная запись заканчивается, она начинает вопсроизводится ещё раз.   

publicOnNPCEnterVehicle(vehicleid, seatid) StartRecordingPlayback(RECORDING_TYPE, RECORDING);

Это ещё один стандартный икнклуд в NPC библиотеке.
Это Позволит начать воспроизведение нашей записи когда игрок помещён в автомобиль.

PHP:

public OnNPCExitVehicle() StopRecordingPlayback();

Это остановит воспроизведение записи если npc выйдет с машины.

PHP:

public OnNPCSpawn() StartRecordingPlayback(RECORDING_TYPE, RECORDING);

Этот код значит, Когда NPC Заспавнится начнётся воспроизведение записи.
Как видите это всё очень просто.Теперь сохраните свой NPC «mini» скрипт, с названием «mynpс.pwn» В «Папка с сервером => npcmodes =>» и скомпилируйте.
Если он скомпилировался, ты можешь теперь продолжить делать следующие шаги в этом учебнике.
И не забудьте обновить sa-mp до последний версии.

Подключение NPC

Так, мы имеем путь к файлу, и «Мини» павн скрипт для контролирования NPC, теперь нам надо загрузить NPC В GameMode Или FilterScript
Закройте «Мини» павн скрипт, и загрузите ваш GameMode или FilterScript в павно.
Настало время чтобы познакомится с функцией ConnectNPC, что предлагает эта функция: подключает вашего NPC на ваш сервер.

Давайте изучим эту функцию, её параметры, и что она означает:

PHP:

ConnectNPC("Dave","mynpc");

«Dave» — первый параметр, это имя NPC. С помощь этого вы можете искать различных NPC и выполнять с ними различные действия.
«mynpc» — это имя файла(без расширения), «мини» скрипт мы создали раньше.
С помощью новый знаний о функции ConnectNPC, можно попробовать присоединить NPC в ваш gamemode или filterscript.

PHP:

public OnGameModeInit()   
 {   
 print("my gamemode");   
 ConnectNPC("MyFirstNPC","mynpc");   
 return 1;   
 }

или, если вы добавляете NPC в FilterScript

PHP:

public OnFilterScriptInit()   
 {   
 print("my filterscript");   
 ConnectNPC("MyFirstNPC","mynpc");   
 return 1;   
 }

Сейчас, когда мы создали путь в машине, нам нужно создать машину для NPC.
ПРИМЕЧАНИЕ: Если ваш NPC не находится в машине, вы можете пропустить этот шаг.
Если вы используете NPC в GameMode:

PHP:

new MyFirstNPCVehicle; //Глобальная переменная   
 public OnGameModeInit()   
 {   
 print("my gamemode");   
 ConnectNPC("MyFirstNPC","mynpc");   
 MyFirstNPCVehicle = CreateVehicle(400, 0.0, 0.0, 5.0, 0.0, 3, 3, 5000);   
 return 1;   
 }

Как всегда:
400 — ид машины

Если вы используете NPC в FilterScript:

PHP:

 new MyFirstNPCVehicle; //Глобальная переменная   
 public OnFilterScriptInit()   
 {   
 print("my filterscript");   
 ConnectNPC("MyFirstNPC","mynpc");   
 MyFirstNPCVehicle = CreateVehicle(400, 0.0, 0.0, 5.0, 0.0, 3, 3, 5000);   
 return 1;   
 }

Обратите внимание, что место нахождение машине не имеет значения, так как она будет телепортироваться туда,где начинается путь NPC.
Ещё одна вещь, прежде чем идти в игру и проверять своего первого NPC, мы создали ранее для него автомобиль, теперь мы должны посадить его в автомобиль.
Я сделал это используя public OnPlayerSpawn…
ПРИМЕЧАНИЕ: Если ваш NPC не находится в машине, вы можете пропустить этот шаг.

PHP:

 public OnPlayerSpawn(playerid)   
 {   
 if(IsPlayerNPC(playerid))   
 {   
 new npcname[MAX_PLAYER_NAME];   
 GetPlayerName(playerid, npcname, sizeof(npcname)); //Получем имя NPC   
 if(!strcmp(npcname, "MyFirstNPC", true)) //Проверяем если имя NPC MyFirstNPC   
 {   
 PutPlayerInVehicle(playerid, MyFirstNPCVehicle, 0); //Зажаем его в машину ранее созданную для него   
 }   
 return 1;   
 }   
 return 1;   
 }

Если вы хотите добавить ещё одного NPC, этот код легко изменить, вот пример для двух NPC:

PHP:

 public OnPlayerSpawn(playerid)   
 {   
 if(IsPlayerNPC(playerid)) //Checks if the player that just spawned is an NPC.   
 {   
 new npcname[MAX_PLAYER_NAME];   
 GetPlayerName(playerid, npcname, sizeof(npcname));   
 if(!strcmp(npcname, "MyFirstNPC", true)) //проверяем имя MyFirstNPC   
 {   
 PutPlayerInVehicle(playerid, MyFirstNPCVehicle, 0); // Зажаем NPC В созданую для него машину   
 return 1;   
 }   
 if(!strcmp(npcname, "MySecondNPC", true))   
 {   
 PutPlayerInVehicle(playerid, AnotherVehicleID, 0);   
 return 1;   
 }   
 return 1;   
 }   
 return 1;   
 }

[FAQ] Учимся запускать ботов на сервер.

[CM]A$AP Дата: Воскресенье, 15.05.2016, 15:48 | Сообщение # 1

Всем привет.
Сегодня я научу вас создавать ботов на сервере SA-MP.
Для создания ботов нам понадобится:
1.RakSamp [Ссылку на скачивание оставлю ниже]
2.Прямые руки.
3.Средний PC.
Приступим к созданию.
Качаем сам RakSamp [click]
После того как скачали RakSamp — перекидываем его в любое удобное для вас место.
Заходим в «RakSamp.ini» и меняем «NickName» на любой Rp nick, после чего выходим с данного файла сохранив его!
Далее запускаем «1.exe» и ждём несколько секунд, после подключения к сервере регистрируем аккаунт, выбираем скин, пол и т.д.
Ваш бот появился на бомжатнике и мешает простым игрокам выйти со спавна — [/slap]
Данным способом ставят ботов на таких серверах как: Rufle,Columbia,Adrenalin (Не реклама!)


Сообщение отредактировал [CM]A$APВторник, 07.06.2016, 15:41

CherrisNut Дата: Воскресенье, 15.05.2016, 16:02 | Сообщение # 2

Для множества ботов очень неудобный метод. 100500 задач отдельно запускать надо

[CM]A$AP Дата: Воскресенье, 15.05.2016, 16:05 | Сообщение # 3

CherrisNut, Согласен, но всё же)
Можно админов попросить поставить, под предлогом повышки.


nelle Дата: Воскресенье, 15.05.2016, 16:21 | Сообщение # 4

спасибо, работает)


https://vk.com/id303180929

[CM]Sanch1k Дата: Воскресенье, 15.05.2016, 21:40 | Сообщение # 5

Авторитет

Статус: Offline

Полезная информация, особенно для тех кто собирается создать свой сервер.


____________________
Вы здесь: 1353-й день

Finn[CM] Дата: Понедельник, 16.05.2016, 15:25 | Сообщение # 6

полезная информейшн

[CM]Толстый Дата: Вторник, 17.05.2016, 17:53 | Сообщение # 7

Еще было бы полезно телепортировать их в какое-то скрытое от глаз других игроков место, дабы не было лишнего палева. Согласитесь, не приятно играть на сервере, который использует ботов, вместо реальных игроков :3

La_Mettrie Дата: Вторник, 17.05.2016, 18:04 | Сообщение # 8

Смысл темы то? Как бы до этого любой может додуматься wacko


Maxim68ru Дата: Вторник, 17.05.2016, 18:12 | Сообщение # 9

Полезная инфа. Играл на Руфлес когда был онлайн там 10-15


1 ранг 10% — [Новичок] ,0 Комментариев Цвет — [Серый] [ ✔ ]
2 ранг 20% — [Любитель] ,30 Комментариев Цвет — [Серый] [ ✔ ]
3 ранг 30% — [Боец], 50 Постов Цвет — [Серый] [ ✔ ]
4 ранг 40% — [Боец], 100 Постов Цвет — [Зеленый] [ ✖ ]
5 ранг 50% — [Бывалый], 150 Постов Цвет — [Зеленый] [ ✖ ]
6 ранг 60% — [Знаток], 250 Постов Цвет — [Зеленый] [ ✖ ]
7 ранг 70% — [Советник], 400 Постов Цвет — [Бирюзовый] [ ✖ ]
8 ранг 80% — [Авторитет], 500 Постов Цвет — [Оранжевый] [ ✖ ]
9 ранг 90% — [Легенда], 800 Постов Цвет — [Темно-оранжевый] [ ✖ ]
10 ранг 100% — [Cheat-Master], 1500 Постов Цвет — [Ярко красный] [ ✖ ]

[CM]A$AP Дата: Вторник, 24.05.2016, 12:55 | Сообщение # 10

La_Mettrie, Что тебе мешало написать такую тему? dry

Добавлено (24.05.2016, 12:55)
———————————————
Подниму dry



Jamiraque[t0wer] Дата: Вторник, 24.05.2016, 13:29 | Сообщение # 11

Цитата [CM]A$AP ()

La_Mettrie, Что тебе мешало написать такую тему?

Мыслишь, будто здесь форум, где нужно писать абсолютно понятные вещи.
Как правильно использовать аптечку на арп? Просто напишите /healme.
Тему ему мешал написать здравый смысл.

weisez Дата: Вторник, 24.05.2016, 13:38 | Сообщение # 12

полезно,работает


[✔] 100 репутации
[✔] 150 репутации
[✔] 200 репутации
[✔] 300 репутации
[Х] 500 репутации
[Х] 1000 репутации
[✔] Пробыть на СМ 30 дней
[✔] Пробыть на СМ 60 дней
[X] Пробыть на СМ 100 дней
[Х] Пробыть на СМ 150 дней
[Х] Пробыть на СМ 300 дней
На СМ 50+ дней!

[CM]A$AP Дата: Четверг, 26.05.2016, 18:36 | Сообщение # 13

weisez, Спасибо.
Подниму wink


iTellez Дата: Четверг, 26.05.2016, 18:46 | Сообщение # 14

Полезная инфа, спасибо)

[CM]Rams Дата: Суббота, 28.05.2016, 00:44 | Сообщение # 15

Хорошая тема


  • Главная
  • Форум
  • Pawn-скриптинг, SA:MP
  • Уроки
  • [Урок] Создание NPC бота


  1. 09.01.2014, 20:43


    #1

    Создание NPC бота

    Доброго времени суток дорогие форумчане, в данном уроке вы подробно узнаете как создать своего собственного NPC бота.

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

    Некоторые часто задаваемые вопросы:
    Q:Что такое NPC?
    A:NPC (Non-Playing Characters или ‘боты’) это нововведение в версии SA-MP 0.3. Данная нововведение позволяет вам добавить одного или несколько NPC на вашем сервере. Боты будут работать как «виртуальные игроки», при этом будут занимать 1 слот, также как нормальный игрок. (Подробнее: КЛАЦ)
    Q:Нужны ли определённые дополнения (плагин к примеру) для создания NPC?
    A:Нет, всё нужное встроено в клиентах версии 0.3+. Если же, в папках …/pawno/include/ отсутствуют инлкюды a_npc или a_samp, вы можете их скопировать с официального сайта sa-mp.

    I. Создание NPC

    1) Заходим в корневую папку вашего сервера, находим файл server.cfg, открываем в Блокноте, и добавляем/изменяем после строчки «maxnpc» значение на *количество ботов которых вы хотите создать*.
    2) Открываем pawno, и создаём новый файл. Заменяем всё содержимое на:

     Клик *

    Компилируем под названием record в каталог(папку) filterscripts.


    *Команды данного скрипта скомпилируются на DC_CMD (при наличии includa <dc_cmd>) либо на стандартный командный процессор.

    3) Вводим в консоль команду «loadfs record«(без кавычек), либо в игре: /rcon loadfs record (сперва нужно авторизоваться как администратор).
    4) Заходим в игру и пишем /startrecrod «Название записи» с позиции старта/повтора записи бота.
    После того как мы повторили точные движения бота, вводим /stoprecord.
    -«Запись началась»
    -«Запись остановлена.»
    5) Открываем каталог scriptfiles и находим в нём файл с ранее указанным названием (расширение .rec).


    6) Копируем/вырезаем файл в каталоге npcmodesrecordings

    7) Открываем компилятор, создаём новый файл, и заменяем всё содержимое на:

     Клац*

    Компилируем в каталог npcmodes с тем же названием что и у записи.


    *Не забываем изменить директивы #define на нужные нам параметры.
    *Вы также можете использовать в данный скрипт и другие NPC калбэки, полный список всех NPC калбэков: КЛАЦ

    8) Подключаем бота при помощи функции ConnectNPC(name[], script[]) — желательно в OnGameModeInit*.

    PHP код:


    public OnGameModeInit()
    {
       
    ConnectNPC("Nick_Name","MyRec");
       return 
    1;





    *Так, у бота, без всякого риска останется свободный слот.

    9) Если запись бота происходила а автомобиле, обязательно создавать его (при помощи функции CreateVehicle/AddStaticVehicle). Также, не обязательно указывать точные координаты спавна автомобиля, так как бот сам телепортирует её к месту старта записи, но не нужно забывать про PutPlayerInVehicle.
    Пример:

    PHP код:


    new botcar;
    public 
    OnGameModeInit()
    {
       
    ConnectNPC("Nick_Name","MyRec");
       
    botcar CreateVehicle(*carid*, 0.00.05.00.0
       *
    цвет1*, *цвет2*, 5000);
       return 
    1;
    }
    public 
    OnPlayerSpawn(playerid)
    {
        if(
    IsPlayerNPC(playerid))
        {
            new 
    npcname[MAX_PLAYER_NAME+1];
            
    GetPlayerName(playeridnpcnamesizeof(npcname));
            if(!
    strcmp(npcname"Nick_Name"true))
            {
                
    PutPlayerInVehicle(playeridbotcar0);
                
    SetSpawnInfo(playerid,0,*skinid*,0.0,0.0,0.0,0.0,0,0,0,0,0,0);
            }
            return 
    1;
        }
        return 
    1;




    10) ПРИМЕЧАНИЕ: После его подключение, бот ведёт себя как обычный игрок, и по мимо калбэков в NPC скрипте, он отвечает на обычных калбэков для игроков. Иногда это удобно, но при этом есть некоторые калбэки или функцие которые NPC не сможет пройти, к примеру вашу Реггистрацию, Анти-Чит телепорта и т.д. Следовательно, в данных калбэков нужно исключить NPC простой проверки:

    PHP код:


    if(IsPlayerNPC(playerid)) return 1




    *Можно экспериментировать калбэками (КЛАЦ) и обычными функциями и создать весьма интересные системы ; ).

    Данный урок посвящается порталу pro-pawn.ru, просьба не копировать на посторонних источниках.
    Автор: ^_^

    Тема будет дополнятся.

    Последний раз редактировалось ^_^; 12.01.2014 в 16:27.



  2. 19 пользователя(ей) сказали cпасибо:


  3. 09.01.2014, 20:48


    #2

    Аватар для TWIX

    Пользователь


    Уважаю данных Людей:

    1.

    Osetin(Хороший Администратор)
    2.Daniel_Cortez(Классный скриптер)
    3.Londlem(Офигенный скриптер)
    4.#Carleone(Просто хороший человек)



  4. 09.01.2014, 21:12


    #3



  5. 09.01.2014, 21:32


    #4

    Not bad. За фишку с опциональным использованием dc_cmd уже можно + поставить.

    P.S.: Если не сложно, уменьши ширину 1-го столбца в таблице. Жутко неудобно каждый раз прокручивать страницу вправо, чтобы увидеть содержимое 2-го столбца.

    Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы

    здесь (click)

    .



  6. 09.01.2014, 21:54


    #5

    Цитата Сообщение от Daniel_Cortez
    Посмотреть сообщение

    Not bad. За фишку с опциональным использованием dc_cmd уже можно + поставить.

    P.S.: Если не сложно, уменьши ширину 1-го столбца в таблице. Жутко неудобно каждый раз прокручивать страницу вправо, чтобы увидеть содержимое 2-го столбца.

    Благодарю, первый пост обновлён.



  7. 2 пользователя(ей) сказали cпасибо:


  8. 09.01.2014, 21:56


    #6



  9. 10.01.2014, 09:01


    #7



  10. 11.01.2014, 16:21


    #8

    Аватар для MR_BEN

    Пользователь




  11. 12.01.2014, 00:28


    #9

    Аватар для AndreyKa

    Пользователь


    Отлично,не каждый знает это!



  12. 12.01.2014, 16:25


    #10



  13. 2 пользователя(ей) сказали cпасибо:

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)


Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  
  • BB коды Вкл.
  • Смайлы Вкл.
  • [IMG] код Вкл.
  • [VIDEO] код Вкл.
  • HTML код Выкл.

Правила форума

Понравилась статья? Поделить с друзьями:
  • Как написать бота рэп
  • Как написать бота на пхп
  • Как написать бота на джава скрипт
  • Как написать бота для трейдинга
  • Как написать бота для телеграмм на python