Jump to content

návod Jak vytvořit NPC - překlad ze SA-MP fóra [*]


Recommended Posts

nahravka se vklada do npcmodes/recordings a script do npcmodes

 

 

LOL 100. příspěvek v tomto topicu xD

 

EDIT: U P&M Hostingzu jak tam maš boti tak tam vlož miniscript a pak tam do složky recordings rec soubor pokud tam slozka neni tak ji vytvoř

Link to comment
Share on other sites

  • Replies 311
  • Created
  • Last Reply

Top Posters In This Topic

Boužel nevim, ptal sem se několika lidí, a nikdo nevěděl.

 

#include

#define FILERSCRIPT

#define RECORDING "vojak"

#define RECORDING_TYPE 1

#include

main(){}

public OnRecordingPlaybackEnd() StartRecordingPlayback(RECORDING_TYPE, RECORDING);

public OnNPCEnterVehicle(vehicleid, seatid) StartRecordingPlayback(RECORDING_TYPE, RECORDING);

public OnNPCExitVehicle() StopRecordingPlayback();

new AutoBota;

public OnFilterScriptInit()

{

ConnectNPC("[bOT]Autobusak","vojak");

AutoBota = CreateVehicle(432, 0.0, 0.0, 5.0, 0.0, 3, 3, 5000);

return 1;

}

 

public OnFilterScriptExit()

{

return 1;

}

 

public OnPlayerRequestClass(playerid, classid)

{

SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);

SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);

SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);

return 1;

}

 

public OnPlayerConnect(playerid)

{

return 1;

}

 

public OnPlayerDisconnect(playerid, reason)

{

return 1;

}

 

public OnPlayerSpawn(playerid)

{

if(IsPlayerNPC(playerid)) //Kontrola, pokud je spawnutý NPC.

{

new npcname[MAX_PLAYER_NAME];

GetPlayerName(playerid, npcname, sizeof(npcname)); //Zjišťuje jméno NPC.

if(!strcmp(npcname, "[bOT]Autobusak", true)) //Zjišťuje, jestli je jméno bota Michal

{

PutPlayerInVehicle(playerid, AutoBota, 0); //Strčí NPC do auta, které sme vytvořili

}

}

return 1;

}

 

Errors:

 

C:\Documents and Settings\admin\Plocha\Boti\autobusak.pwn(7) : warning 235: public function lacks forward declaration (symbol "OnRecordingPlaybackEnd")

C:\Documents and Settings\admin\Plocha\Boti\autobusak.pwn(7) : error 017: undefined symbol "StartRecordingPlayback"

C:\Documents and Settings\admin\Plocha\Boti\autobusak.pwn(8) : warning 235: public function lacks forward declaration (symbol "OnNPCEnterVehicle")

C:\Documents and Settings\admin\Plocha\Boti\autobusak.pwn(8) : error 017: undefined symbol "StartRecordingPlayback"

C:\Documents and Settings\admin\Plocha\Boti\autobusak.pwn(9) : warning 235: public function lacks forward declaration (symbol "OnNPCExitVehicle")

C:\Documents and Settings\admin\Plocha\Boti\autobusak.pwn(9) : error 017: undefined symbol "StopRecordingPlayback"

Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase

 

 

3 Errors.

 

Link to comment
Share on other sites

Boužel nevim, ptal sem se několika lidí, a nikdo nevěděl.

 

#include

#define FILERSCRIPT

#define RECORDING "vojak"

#define RECORDING_TYPE 1

#include

main(){}

public OnRecordingPlaybackEnd() StartRecordingPlayback(RECORDING_TYPE, RECORDING);

public OnNPCEnterVehicle(vehicleid, seatid) StartRecordingPlayback(RECORDING_TYPE, RECORDING);

public OnNPCExitVehicle() StopRecordingPlayback();

new AutoBota;

public OnFilterScriptInit()

{

ConnectNPC("[bOT]Autobusak","vojak");

AutoBota = CreateVehicle(432, 0.0, 0.0, 5.0, 0.0, 3, 3, 5000);

return 1;

}

 

public OnFilterScriptExit()

{

return 1;

}

 

public OnPlayerRequestClass(playerid, classid)

{

SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);

SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);

SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);

return 1;

}

 

public OnPlayerConnect(playerid)

{

return 1;

}

 

public OnPlayerDisconnect(playerid, reason)

{

return 1;

}

 

public OnPlayerSpawn(playerid)

{

if(IsPlayerNPC(playerid)) //Kontrola, pokud je spawnutý NPC.

{

new npcname[MAX_PLAYER_NAME];

GetPlayerName(playerid, npcname, sizeof(npcname)); //Zjišťuje jméno NPC.

if(!strcmp(npcname, "[bOT]Autobusak", true)) //Zjišťuje, jestli je jméno bota Michal

{

PutPlayerInVehicle(playerid, AutoBota, 0); //Strčí NPC do auta, které sme vytvořili

}

}

return 1;

}

 

Errors:

 

C:\Documents and Settings\admin\Plocha\Boti\autobusak.pwn(7) : warning 235: public function lacks forward declaration (symbol "OnRecordingPlaybackEnd")

C:\Documents and Settings\admin\Plocha\Boti\autobusak.pwn(7) : error 017: undefined symbol "StartRecordingPlayback"

C:\Documents and Settings\admin\Plocha\Boti\autobusak.pwn(8) : warning 235: public function lacks forward declaration (symbol "OnNPCEnterVehicle")

C:\Documents and Settings\admin\Plocha\Boti\autobusak.pwn(8) : error 017: undefined symbol "StartRecordingPlayback"

C:\Documents and Settings\admin\Plocha\Boti\autobusak.pwn(9) : warning 235: public function lacks forward declaration (symbol "OnNPCExitVehicle")

C:\Documents and Settings\admin\Plocha\Boti\autobusak.pwn(9) : error 017: undefined symbol "StopRecordingPlayback"

Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase

 

 

3 Errors.

píšeš to v pawno 0.3 ?

Link to comment
Share on other sites

To by to psalo co je includ a_npc

chyba je v

public OnRecordingPlaybackEnd() StartRecordingPlayback(RECORDING_TYPE, RECORDING);
public OnNPCEnterVehicle(vehicleid, seatid) StartRecordingPlayback(RECORDING_TYPE, RECORDING);
public OnNPCExitVehicle() StopRecordingPlayback();

Link to comment
Share on other sites

Takze zmena problemu ;)

Ted mam bota v serveru, ALE

Prihlasim se na server a do 10 sekund to napise ze bot se odhlasil.

 

Info:

Bot je v LVPD interieru a jde pesky

 

npc1.pwn mam takto

 

#define RECORDING "npc1" //Název souboru, který jsme nahrávali bez přípony .rec
#define RECORDING_TYPE 2 //1 pokud je v autě, pěšky je to 2

#include 
main(){}
NextPlayback()
{
StartRecordingPlayback(PLAYER_RECORDING_TYPE_ONFOOT,"npc1");
}
public OnRecordingPlaybackEnd()
{
NextPlayback();
}
public OnNPCSpawn()
{
NextPlayback();
}

 

Link to comment
Share on other sites

koukni se poradne do tutu a nebo na nejaky helpy se sejnym problenem.

 

a zjistis ze urcite nemas v OnPlayerRequestSpawn tohle:

if(IsPlayerNPC(playerid)) SpawnPlayer(playerid);

Link to comment
Share on other sites

Script pro bota co chodi

 

#include

main(){}

NextPlayback()

{

StartRecordingPlayback(PLAYER_RECORDING_TYPE_ONFOOT,"npc1");//npc1 je nazev nahravky

}

public OnRecordingPlaybackEnd()

{

NextPlayback();

}

public OnNPCSpawn()

{

NextPlayback();

}

 

 

Script pro bota co jtreba v aute:

 

#define RECORDING "NAZEV NAHRAVKY"

#define RECORDING_TYPE 1

 

#include

main(){}

public OnRecordingPlaybackEnd() StartRecordingPlayback(RECORDING_TYPE, RECORDING);

public OnNPCEnterVehicle(vehicleid, seatid) StartRecordingPlayback(RECORDING_TYPE, RECORDING);

public OnNPCExitVehicle() StopRecordingPlayback();

 

 

a tohle dej samotny do pawn...nakompiluj...a dej do slozky "npcmodes"

 

chapes ? ;)

Link to comment
Share on other sites

Já si už nevím rady. Vše mám, nahrávku, mini script a script ve Filter Scriptu. Žádné errory to nehází. Jdu na server, jdu k botovi a on stojí na místě, místo toho aby jezdil trasu v autě. Mám snad něco blbě?

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...