Jump to content

NPC probleempje...


minkema

Recommended Posts

Hey mensen :D,

ik ben gister bezig geweest met het maken van een NPC.

wanneer ik het script laadt, zegt hij gewoon dat het script geladen is, maar de NPC connect niet.

Ik las dat maxnpc het probleem kon zijn maar,

-maxnpc staat nu op 10, dus moet genoeg zijn :puh:

als jullie meer willen weten, of mischien het script, of een deel ervan willen zien, zegt u et maar :D

alvast thanx,

minkema.

Link to comment
Delen op andere websites

ik heb er eentje die het wel doet, ik wil je script wel even bekijken (dan ook graag het kleine scriptje)

en als megadreams nog eens kijkt, ga je je tut over npc's nog afmaken anders schrijf ik er wel een

// This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT
#define FILTERSCRIPT
#define RECORDING "nppc"
#define RECORDING_TYPE 1
#define ConnectNPC
#define CreateVehicle
#define SetPlayerPos
#define SetPlayerCameraPos
#define SetPlayerCameraLookAt
#define IsPlayerNPC
#define PutPlayerInVehicle
#define SetPlayerMoney
#define HenkVehicle
new Stretch;
#include <a_npc>
#include <a_samp>
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

#if defined FILTERSCRIPT

public OnFilterScriptInit()
{
print("my gamemode");
ConnectNPC("Henk","nppc");
Stretch = CreateVehicle(409, 0.0, 0.0, 5.0, 0.0, 1, 1, 5000);
return 1;
}

public OnFilterScriptExit()
{
return 1;
}

#else

main()
{
print("\n----------------------------------");
print(" Blank Gamemode by your name here");
print("----------------------------------\n");
}

#endif
public OnGameModeInit()
{
return 1;
}

public OnGameModeExit()
{
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))
 {
   new npcname [MAX_PLAYER_NAME];
   GetPlayerName(playerid, npcname, sizeof(npcname));
   if(!strcmp(npcname, "Henk", true))
   {
	PutPlayerInVehicle(playerid, Stretch, 0);
 	}
 	return 1;
 }

return 1;
}

het is een filterscript, dit is alles wat ik gebruikt heb.

al die #defines komen omdat hij veel errors gaf wanneer ik dit niet deed.

Link to comment
Delen op andere websites

ok dit is eigenlijk best slordig, al helemaal voor een filterscript

als eerste moet je nooit wat boven "#include <a_samp>" zetten (alleen in de fsjes van de npc's waar standaard 2 regels boven staan)

ten tweede heb je helemaal geen apart filterscript ervoor nodig, let op:

1. ik neem aan dat je dus een record bestandje genaamd "nppc.rec" in de map "samp-server\npcmodes\recordings" heb staan

2. open een nieuw pawn bestand, verwijder alles zodat je op regel 1 begint met nog nix

3. zet in dat bestand deze code

#define RECORDING "nppc"
#define RECORDING_TYPE 1
#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

dit is dus het bestandje waarin je npc aangewezen krijgt hoe hij zijn route gaat afleggen

4. sla dit bestand op als bijvoorbeeld "mijneerstenpc.pwn" in de map "samp-server\npcmodes"

5. compile het bestand.

6. ga nu naar je gamemode waar je je npc wilt laten connecten

7. zet daar bovenaan dit:

new Stretch;

8. zet bij OnGameModeInit() het volgende:

ConnectNPC("Henk","mijneerstenpc");
Stretch = CreateVehicle(409, 0.0, 0.0, 5.0, 0.0, 1, 1, 5000);

9. zo te zien zit die van jou in een auto dus moet je dit nog bij OnPlayerSpawn zetten:

{  
   if(IsPlayerNPC(playerid))  
       {    
           new npcname [MAX_PLAYER_NAME];    
           GetPlayerName(playerid, npcname, sizeof(npcname));    
           if(!strcmp(npcname, "Henk", true))    
           {                
               PutPlayerInVehicle(playerid, Stretch, 0);        
           }        
       return 1;  
       }          
   return 1;
}

als je nog problemen hebt kan je me altijd pmmen

Bewerkt: door Morph1
Link to comment
Delen op andere websites

ok dit is eigenlijk best slordig, al helemaal voor een filterscript

als eerste moet je nooit wat boven "#include <a_samp>" zetten (alleen in de fsjes van de npc's waar standaard 2 regels boven staan)

ten tweede heb je helemaal geen apart filterscript ervoor nodig, let op:

1. ik neem aan dat je dus een record bestandje genaamd "nppc.rec" in de map "samp-server\npcmodes\recordings" heb staan

2. open een nieuw pawn bestand, verwijder alles zodat je op regel 1 begint met nog nix

3. zet in dat bestand deze code

#define RECORDING "nppc"
#define RECORDING_TYPE 1
#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

dit is dus het bestandje waarin je npc aangewezen krijgt hoe hij zijn route gaat afleggen

4. sla dit bestand op als bijvoorbeeld "mijneerstenpc.pwn" in de map "samp-server\npcmodes"

5. compile het bestand.

6. ga nu naar je gamemode waar je je npc wilt laten connecten

7. zet daar bovenaan dit:

new Stretch;

8. zet bij OnGameModeInit() het volgende:

ConnectNPC("Henk","mijneerstenpc");
Stretch = CreateVehicle(409, 0.0, 0.0, 5.0, 0.0, 1, 1, 5000);

9. zo te zien zit die van jou in een auto dus moet je dit nog bij OnPlayerSpawn zetten:

{  
   if(IsPlayerNPC(playerid))  
       {    
           new npcname [MAX_PLAYER_NAME];    
           GetPlayerName(playerid, npcname, sizeof(npcname));    
           if(!strcmp(npcname, "Henk", true))    
           {                
               PutPlayerInVehicle(playerid, Stretch, 0);        
           }        
       return 1;  
       }          
   return 1;
}

als je nog problemen hebt kan je me altijd pmmen

ik heb alles gevolgd, en het staat in mijn script zoals het hoord, alleen mijn npc staat op het spawnpoint, en hij heeft geen naam boven zijn hoofd, ik weet niet of je dat appart moet adden, omdat ik dat bij zogoed als alle npc's zie, dat ze een text boven hun hoofd hebben.

Link to comment
Delen op andere websites

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

×   Je hebt text geplaatst met opmaak.   Opmaak verwijderen

  Only 75 emoji are allowed.

×   Je link is automatisch ingevoegd.   In plaats daarvan weergeven als link

×   Je vorige bewerkingen zijn hersteld.   Alles verwijderen

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.
×
×
  • Create New...