Просмотрел несколько уроков на тему создания NPC, но никак не получается увидеть долгожданного бота.
(Всё компилируется, в server.cfg maxnpc 10, сервер 0.3e)
Записал скриптом npc_record движение игрока в автомобиле id400 примерно 20 сек езды, сохранил в файл mynpc.rec.
Скопировал файл mynpc.rec из папки scriptfiles в npcmodes/recordings.
Далее создал файл new.pwn, удалил там всё и вставил:
Код:
#define RECORDING "mynpc" //Имя вашего записанного файла из 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
Скомпилировал new.pwn
Далее открыл свой мод:
В своём моде:
Код:
#include <a_npc>
new MyFirstNPCVehicle;
public OnGameModeInit()
{
ConnectNPC("MyFirstNPC","mynpc");
MyFirstNPCVehicle = CreateVehicle(400, 0.0, 0.0, 5.0, 0.0, 0, 0, 5000);
public OnPlayerSpawn(playerid)
{
if(IsPlayerNPC(playerid))
{
new npcname[MAX_PLAYER_NAME];
GetPlayerName(playerid, npcname, sizeof(npcname));
if(!strcmp(npcname, "MyFirstNPC", true))
{
PutPlayerInVehicle(playerid, MyFirstNPCVehicle, 0);
}
return 1;
}
В паблики OnPlayerRequestClass, OnPlayerConnect и в диалоги регистрации/авторизации вставил строку:
Код:
if(IsPlayerNPC(playerid)) return 1;
NPC даже не видно как подключается, в черном окне сервера ничего не происходит как и на самом сервере.