NPC/Bot Készítése by Mr.M[aa]rK/maarkmaki
Na hali!
Készítettem egy jobb leírást, mert az előző egy kalap szart sem ért, és a videó meg hülyeség, mert itt részletesebb leírást adok...
Na skacok, vágjunk bele :)
1. Menjünk fel a saját szerverünkre és (ha nincs) töltsük be az npc_record nevű filterszkriptet. Ezt úgy tehetjük meg, hogy a szerveren bejelenkezünk rconba - /rcon login [jelszó] - és beírjuk /rcon loadfs npc_record
2. Járműves felvétel: /vrecord [ megnevezés ( *.rec fájl neve lesz ) ]
Gyalogos felvétel: /ofrecord [ megnevezés ( *.rec fájl neve lesz ) ]
Én példának "mynpc"-nek fogom megnevezni
Ha befejeztük akkor /stoprecord
3. Lépjünk ki és a szervermappa/npcmodes/recordings mappába találhatjuk a *.rec fájlt (mynpc.rec) - Hagyuk ott a fájlt -
4. Hozzunk létre egy pawnot az npcmodes mappába, "load" néven
5. Nyissuk meg a load pawnot, töröljük ki az összes alap dolgot és illesszük bele ezt az egészet:
-
#define RECORDING "mynpc" // Ez az NPC-d neve, melyet felvettél
-
#define RECORDING_TYPE 2 // Az NPC közlekedése, 1 ha járműt vezet, 2 ha gyalogol
-
-
#include <a_npc> // Az NPC függvénykönyvtár beágyazása
-
-
public OnRecordingPlaybackEnd ( )
-
{
-
StartRecordingPlayback ( RECORDING_TYPE, RECORDING );
-
return 0;
-
}
-
-
#if RECORDING_TYPE == 1 // Ha az NPC típusa járműves vezető
-
public OnNPCEnterVehicle ( vehicleid, seatid )
-
{
-
StartRecordingPlayback ( RECORDING_TYPE, RECORDING );
-
return 0;
-
}
-
public OnNPCExitVehicle ( )
-
{
-
StopRecordingPlayback ( );
-
return 0;
-
}
-
#else // Viszont ha gyalogos
-
public OnNPCSpawn ( )
-
{
-
StartRecordingPlayback ( RECORDING_TYPE, RECORDING );
-
return 0;
-
}
-
#endif
6. Kattintsunk a kék nyilra ( Complite/Run ) és ha jól csináltad akkor hibátlan
7. Menjünk bele a szervermappa/filterscripts -be és hozzunk létre egy új pawnot, aminek pl.: "npc" legyen a neve
8. Na most figyelj ide!
Ha gyalogos a felvételed akkor:
Az npc nevű pawnoban lévő összes alap dolgot töröljük ki és ezt tegyük be:
-
#include <a_samp>
-
public OnFilterScriptInit ( )
-
{
-
ConnectNPC("Gyuri", "load");
-
return 1;
-
}
-
public OnPlayerSpawn ( playerid )
-
{
-
if ( IsPlayerNPC ( playerid ) )
-
{
-
new npcname [ MAX_PLAYER_NAME ];
-
GetPlayerName ( playerid, npcname, sizeof ( npcname ) );
-
if ( !strcmp ( npcname, "Gyuri", true ) )
-
{
-
SetPlayerSkin(playerid, 194);
-
}
-
return 1;
-
}
-
return 1;
-
}
Magyarázatok < katt
Működik ez srácok!
Csak töltsétek be filterscriptet a játékban!
/rcon loadfs npc (vagy ahogy elnevezted)