Szerző Téma: [HELP]NPC Készen van!  (Megtekintve 876 alkalommal)

Nem elérhető scripter01

  • 1035
  • Ex Moderálisan Globális
    • Profil megtekintése
[HELP]NPC Készen van!
« Dátum: 2011. November 17. - 17:30:35 »
0 Show voters
Sziasztok!
Ezzel hogy \"NPC Készen van\" azt akarom érteni hogy már meg van írva....
Szóval fel vettem az NPC-t be raktam ahogy kell FS NPC Modes-be müködött de én nem így akarom hanem modba de ezzel van egy kis gondom...
Szóval akkor hát kezdem is!
Elösszõr is ügye a változó...
Az az ez:
 
new Buszok[2];

 
Következõ ügye a Buszok maga a kordinátával!
 
//=============================== Bus =================================================//
Buszok[0] = UjKocsi(431,1172.8610,-1793.9568,13.4988,178.8199,1,1);
Buszok[1] = UjKocsi(431,1181.9176,-1794.1378,13.4974,181.0004,1,1);

 
Ha ezek meg vannak akkor elvileg Spawnolni kellene az NPC-t!
 
public NPCSpawn(npc)
{
new nev[MAX_PLAYER_NAME];
nev = PlayerName(npc);
//printf(\"NPCSpawn(nev: %s, npc: %d)\", nev, npc);
new nid, car, szoveg[256];
if(egyezik(nev, \"NPC_Buszsofor_LS\"))
{
nid = 0;
car = NPC_Vezetok[nid][nKocsi];
PutPlayerInVehicle(npc, car, 0); printf(\"PutPlayerInVehicle(npc: %d, car: %d, 0)\", npc, car);
format(szoveg, sizeof(szoveg), \"%s\\nKövetkezõ megálló: %s\", NPC_Vezetok[nid][nNev], NPC_MegallokNeve[nid][1]);
NPC_Vezetok[nid][nLeirasID] = CreateDynamic3DTextLabel(szoveg, COLOR_WHITE, 0.0, 0.0, 4.0, 100.0, INVALID_PLAYER_ID, car);
}
else if(egyezik(nev, \"NPC_Buszsofor_LS_2\"))
{
nid = 1;
car = NPC_Vezetok[nid][nKocsi];
PutPlayerInVehicle(npc, car, 0); printf(\"PutPlayerInVehicle(npc: %d, car: %d, 0)\", npc, car);
format(szoveg, sizeof(szoveg), \"%s\\nKövetkezõ megálló: %s\", NPC_Vezetok[nid][nNev], NPC_MegallokNeve[nid][1]);
NPC_Vezetok[nid][nLeirasID] = CreateDynamic3DTextLabel(szoveg, COLOR_WHITE, 0.0, 0.0, 4.0, 100.0, INVALID_PLAYER_ID, car);
}
else if(egyezik(nev, \"NPC_Buszsofor_SF_LV\"))
{
nid = 2;
car = NPC_Vezetok[nid][nKocsi];
PutPlayerInVehicle(npc, car, 0); printf(\"PutPlayerInVehicle(npc: %d, car: %d, 0)\", npc, car);
format(szoveg, sizeof(szoveg), \"%s\\nKövetkezõ megálló: %s\", NPC_Vezetok[nid][nNev], NPC_MegallokNeve[nid][1]);
NPC_Vezetok[nid][nLeirasID] = CreateDynamic3DTextLabel(szoveg, COLOR_WHITE, 0.0, 0.0, 4.0, 100.0, INVALID_PLAYER_ID, car);
}
else if(egyezik(nev, \"NPC_Buszsofor_SF_LV2\"))
{
nid = 3;
car = NPC_Vezetok[nid][nKocsi];
PutPlayerInVehicle(npc, car, 0); printf(\"PutPlayerInVehicle(npc: %d, car: %d, 0)\", npc, car);
format(szoveg, sizeof(szoveg), \"%s\\nKövetkezõ megálló: %s\", NPC_Vezetok[nid][nNev], NPC_MegallokNeve[nid][1]);
NPC_Vezetok[nid][nLeirasID] = CreateDynamic3DTextLabel(szoveg, COLOR_WHITE, 0.0, 0.0, 4.0, 100.0, INVALID_PLAYER_ID, car);
}
else if(egyezik(nev, \"NPC_Arveres\"))
{
SetPlayerVirtualWorld(npc, 9999);
SetPlayerSkin(npc, 141);
ArveresNPC = npc;
if(!IsValidDynamic3DTextLabel(ArveresNPCText)) ArveresNPCText = CreateDynamic3DTextLabel(\"Árverés\", COLOR_LIGHTBLUE, 0.0, 0.0, 0.5, 30.0, npc);
}
return 1;
}

 
Ha ez meg van utána Csatlakoztatni kell az NPC-t...
 
stock NPCCsatlakozas(nev[], npc)
{
//printf(\"NPCCsatlakozas(nev: %s, npc: %d)\", nev, npc);
new nid;
if(egyezik(nev, \"NPC_Buszsofor_LS\"))
{
nid = 0;
SetBuszData(nid, NPC_DATA_NEV, \"[Helyi] Járat 1 - Los Santos\");
SetBuszData(nid, NPC_DATA_FELVETEL, \"lsbusz\");
NPC_Vezetok[nid][nHolTart] = 1;
NPC_Vezetok[nid][nMegallokSzama] = 3;
SetMegallo(nid, 0, \"Városháza\", 1492.098, -1741.344, 13.546, 48);
SetMegallo(nid, 1, \"Bank\", 1490.208, -1059.940, 23.826, 49);
SetMegallo(nid, 2, \"Kórház\", 1188.293, -1341.848, 13.570, 52);
NPC_Vezetok[nid][nMenetIdo] = NPC_MegallokIdo[nid][1];
printf(\"%s betöltése a következõ sloton: %d\", nev, npc);
SetPlayerColor(npc, COLOR_GREY);
NPC_Vezetok[nid][nKocsi] = UjKocsi(437, NPC_Megallok[nid][0][0], NPC_Megallok[nid][0][1], NPC_Megallok[nid][0][2], 269.799, 0, 0);
NPCKocsi[NPC_Vezetok[nid][nKocsi]] = true;
NPC_ID[npc] = nid;
NPC_Vezetok[nid][nConnected] = true;
}
else if(egyezik(nev, \"NPC_Buszsofor_LS_2\"))
{
nid = 1;
SetBuszData(nid, NPC_DATA_NEV, \"[Helyi] Járat 2 - Los Santos\");
SetBuszData(nid, NPC_DATA_FELVETEL, \"LS_\");
NPC_Vezetok[nid][nHolTart] = 1;
NPC_Vezetok[nid][nMegallokSzama] = 9;
SetMegallo(nid, 0, \"Paintball\", 1298.751, -1388.146, 13.489, 27);
SetMegallo(nid, 1, \"Kamion HQ\", 948.763, -1240.345, 16.458, 29);
SetMegallo(nid, 2, \"Fánkos\", 1004.424, -1313.985, 13.546, 21);
SetMegallo(nid, 3, \"VPOP\", 750.472, -1388.663, 13.682, 22);
SetMegallo(nid, 4, \"Ruhabolt\", 430.928, -1487.781, 30.791, 23);
SetMegallo(nid, 5, \"Horgászhely\", 356.275, -1651.912, 32.954, 22);
SetMegallo(nid, 6, \"Reptér\", 1947.086, -2172.943, 13.554, 82);
SetMegallo(nid, 7, \"Benzinkút\", 1968.089, -1770.010, 13.546, 27);
SetMegallo(nid, 8, \"Étterem\", 1484.475, -1585.722, 13.546, 35);
NPC_Vezetok[nid][nMenetIdo] = NPC_MegallokIdo[nid][1];
printf(\"%s betöltése a következõ sloton: %d\", nev, npc);
SetPlayerColor(npc, COLOR_GREY);
NPC_Vezetok[nid][nKocsi] = UjKocsi(437, NPC_Megallok[nid][0][0], NPC_Megallok[nid][0][1], NPC_Megallok[nid][0][2], 269.799, 0, 0);
NPCKocsi[NPC_Vezetok[nid][nKocsi]] = true;
NPC_ID[npc] = nid;
NPC_Vezetok[nid][nConnected] = true;
}
else if(egyezik(nev, \"NPC_Buszsofor_SF_LV\"))
{
nid = 2;
SetBuszData(nid, NPC_DATA_FELVETEL, \"Fort_\");
SetBuszData(nid, NPC_DATA_NEV, \"[Távolsági] Járat 3 - Fort DeMorgan <> San Fierro\");
NPC_Vezetok[nid][nHolTart] = 1;
NPC_Vezetok[nid][nMegallokSzama] = 2;
SetMegallo(nid, 0, \"SF Wang Cars\", -2013.773, 271.785, 32.575, 147);
SetMegallo(nid, 1, \"Fort DeMorgan\", 168.132, 1159.072, 14.558, 141);
NPC_Vezetok[nid][nMenetIdo] = NPC_MegallokIdo[nid][1];
printf(\"%s betöltése a következõ sloton: %d\", nev, npc);
SetPlayerColor(npc, COLOR_GREY);
NPC_Vezetok[nid][nKocsi] = UjKocsi(437, NPC_Megallok[nid][0][0], NPC_Megallok[nid][0][1], NPC_Megallok[nid][0][2], 269.799, 0, 0);
NPCKocsi[NPC_Vezetok[nid][nKocsi]] = true;
NPC_ID[npc] = nid;
NPC_Vezetok[nid][nConnected] = true;
}
else if(egyezik(nev, \"NPC_Buszsofor_SF_LV2\"))
{
nid = 3;
SetBuszData(nid, NPC_DATA_FELVETEL, \"Oktato_\");
SetBuszData(nid, NPC_DATA_NEV, \"[Távolsági] Járat 4 - Los Santos <> Farm <> San Fierro\");
NPC_Vezetok[nid][nHolTart] = 1;
NPC_Vezetok[nid][nMegallokSzama] = 6;
SetMegallo(nid, 0, \"Pályaudvar\", 1168.151, -1822.518, 13.570, 262);
SetMegallo(nid, 1, \"LS Autóbérlõ\", 529.574, -1239.627, 16.604, 57);
SetMegallo(nid, 2, \"Farm\", -289.819, -139.942, 1.864, 93);
SetMegallo(nid, 3, \"Oktatók\", -2027.723, -62.263, 35.320, 119);
SetMegallo(nid, 4, \"SF Városháza\", -2757.362, 370.942, 4.348, 77);
SetMegallo(nid, 5, \"SF Bank\", -1943.025, 595.064, 35.171, 68);
NPC_Vezetok[nid][nMenetIdo] = NPC_MegallokIdo[nid][1];
printf(\"%s betöltése a következõ sloton: %d\", nev, npc);
SetPlayerColor(npc, COLOR_GREY);
NPC_Vezetok[nid][nKocsi] = UjKocsi(437, NPC_Megallok[nid][0][0], NPC_Megallok[nid][0][1], NPC_Megallok[nid][0][2], 269.799, 0, 0);
NPCKocsi[NPC_Vezetok[nid][nKocsi]] = true;
NPC_ID[npc] = nid;
NPC_Vezetok[nid][nConnected] = true;
}
else if(egyezik(nev, \"NPC_Arveres\"))
{
printf(\"%s betöltése a következõ sloton: %d\", nev, npc);
SetPlayerColor(npc, COLOR_GREY);
SetSpawnInfo(npc, 0, 141, 319.203, 130.035, 1007.965, 270.0, 0, 0, 0, 0, 0, 0);
SpawnPlayer(npc);
}
}

 
Majd betölteni az NPC-t...
 
stock NPCBetoltese()
{
ConnectNPC(\"NPC_Buszsofor_LS\", \"Busz\");
ConnectNPC(\"NPC_Buszsofor_LS_2\", \"Busz\");
ConnectNPC(\"NPC_Buszsofor_SF_LV\", \"Busz\");
ConnectNPC(\"NPC_Buszsofor_SF_LV2\", \"Busz\");
return 1;
}

 
Nah most én ezzel azt akarom hogy csak egy NPC-t rakjak be!
Szóval annyit kérek hogy magyarázátok el ide mi hová megy szóval a spawnnál mit hova tegyek a csatlakozásnál mit hova tegyek és  a betöltésnél mit hová tegyek....
Amit ugyan ezt FSbe csinálnám ugyan így kell itt is scak nem értem valakit szépen kérek segítsen!
Jutalmat kap!(+)
Elõre is köszönöm!

Nem elérhető JackBronson

  • 1499
  • ??
    • Profil megtekintése
[HELP]NPC Készen van!
« Válasz #1 Dátum: 2011. November 17. - 19:21:43 »
+1 Show voters
Ugyan ugy kell csak ami az onplayergamemode alatt van az a OnFiletrScriptinit alá kerül a többi meg ugyan oda ahova a módba is raktad.

Gang[St]e[R]

  • Vendég
[HELP]NPC Készen van!
« Válasz #2 Dátum: 2011. November 17. - 19:31:44 »
+1 Show voters
És ahogy írtam pm-ben sztem felejcsd az a_npc.inc-et.
Jah és igen, ezt kihagytam PM-ben, hogy minden ugyanúgy kell, csak az OnFilterScript() eljárásban íródottakat, írd át OnGameModeInit()-be.

Nem elérhető scripter01

  • 1035
  • Ex Moderálisan Globális
    • Profil megtekintése
[HELP]NPC Készen van!
« Válasz #3 Dátum: 2011. November 18. - 14:11:16 »
0 Show voters
Köszi fiuk már meg oldottam igaz egyiknek a segítségével se de azért GangSteR]
PM é bõl értettem emg az egészet köszi GangSteR]!

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal