NpC's que no condicen su coche
#1

hola, resulta que aсado unos NPCS a mi server. pero ocurre lo siguiente:
>los 2 conductores de tren conducen un carro aleatorio (he llegado a ver un alpha a la altura del tren), otro estб en el sub suelo
>Los conductores estбn perdidos por ahн, a veces vuelan con carros
їQue pasa?
Reply
#2

Lo que pasa es que no consiguen el vehнculo en el cual deberнan entrar, por lo que entran a uno aleatorio. Crea un vehнculo para cada uno de ellos y has que los usen.
Reply
#3

їEstбs seguro que les estбs asignando su vehнculo?

Tienes que usar una variable para guardar la ID del vehнculo, y luego poner al jugador en el vehнculo de su variable.
Reply
#4

Quote:
Originally Posted by SAMPGammer
Посмотреть сообщение
hola, resulta que aсado unos NPCS a mi server. pero ocurre lo siguiente:
>los 2 conductores de tren conducen un carro aleatorio (he llegado a ver un alpha a la altura del tren), otro estб en el sub suelo
>Los conductores estбn perdidos por ahн, a veces vuelan con carros
їQue pasa?
Quote:
Originally Posted by MrDeath
Посмотреть сообщение
їEstбs seguro que les estбs asignando su vehнculo?

Tienes que usar una variable para guardar la ID del vehнculo, y luego poner al jugador en el vehнculo de su variable.
Aca te dejo un ejemplo de lo que se refiere MrDeath utilizando 3 trenes y 3 aviones:

pawn Код:
new Vehiculo_de_Bots[6]; // aca voy a almacenar el id con que se crea cada tren y avion.
dentro del callback en donde crees los autos (OnGameModeInit u OnFilterScriptInit)
pawn Код:
Vehiculo_de_Bots[0] = AddStaticVehicle(538,1462.0745,2630.8787,10.8203,200.0,-1,-1);  // el primer tren
Vehiculo_de_Bots[1] = AddStaticVehicle(537,-1942.7950,168.4164,27.0006,200.0,-1,-1);  // el segundo
Vehiculo_de_Bots[2] = AddStaticVehicle(538,1700.7551,-1953.6531,14.8756,200.0,-1,-1); // el tercero
Vehiculo_de_Bots[3] = AddStaticVehicle(577,1477.4631,1647.4589,10.7281,180.2741,8,7); // el primer avion
Vehiculo_de_Bots[4] = AddStaticVehicle(577,-1513.0963,-21.4589,14.0641,314.4915,8,7); // segundo
Vehiculo_de_Bots[5] = AddStaticVehicle(577,2014.6605,-2493.9668,13.4887,89.6533,8,7); // tercero...
// Aclaracion... la funcion AddStaticVehicle retorna en el id del vehiculo creado, por eso puedo almacenarla
// de esta manera.
Omitiendo la parte que seguro ya tenes hecha en donde asignas la SpawnInfo en OnPlayerRequestClass...
pasamos a OnPlayerSpawn.

Calculo que actialmente tenes algo similar a:

pawn Код:
if(IsPlayerNPC(playerid))
    {
        if(!strcmp(Jugador_Nombre[playerid], "TrainDriverLV", true)) {
            PutPlayerInVehicle(playerid, 0, 0);
            SetPlayerColor(playerid, 0x00FFFF55);
        } else if(!strcmp(Jugador_Nombre[playerid], "TrainDriverSF", true)) {
            PutPlayerInVehicle(playerid, 4, 0);
            SetPlayerColor(playerid, 0x00FFFF55);
        } else if(!strcmp(Jugador_Nombre[playerid], "TrainDriverLS", true)) {
            PutPlayerInVehicle(playerid, 8, 0);
            SetPlayerColor(playerid, 0x00FFFF55);
        } else if(!strcmp(Jugador_Nombre[playerid], "PilotLV", true)) {
            PutPlayerInVehicle(playerid, 12, 0);
            SetPlayerColor(playerid, 0x00FFFF55);
        } else if(!strcmp(Jugador_Nombre[playerid], "PilotSF", true)) {
            PutPlayerInVehicle(playerid, 13, 0);
            SetPlayerColor(playerid, 0x00FFFF55);
        } else if(!strcmp(Jugador_Nombre[playerid], "PilotLS", true)) {
            PutPlayerInVehicle(playerid, 14, 0);
            SetPlayerColor(playerid, 0x00FFFF55);
        }
        return 1;
    }
Bueno .. si tenes algo similar el problema esta...

Код:
    PutPlayerInVehicle(playerid, ACA , 0);
Tendriamos que reemplazar ese numero por la variable correspondiente a cada una:

pawn Код:
if(IsPlayerNPC(playerid))
    {
        if(!strcmp(Jugador_Nombre[playerid], "TrainDriverLV", true)) {
            PutPlayerInVehicle(playerid, Vehiculo_de_Bots[0], 0);
            SetPlayerColor(playerid, 0x00FFFF55);
        } else if(!strcmp(Jugador_Nombre[playerid], "TrainDriverSF", true)) {
            PutPlayerInVehicle(playerid, Vehiculo_de_Bots[1], 0);
            SetPlayerColor(playerid, 0x00FFFF55);
        } else if(!strcmp(Jugador_Nombre[playerid], "TrainDriverLS", true)) {
            PutPlayerInVehicle(playerid, Vehiculo_de_Bots[2], 0);
            SetPlayerColor(playerid, 0x00FFFF55);
        } else if(!strcmp(Jugador_Nombre[playerid], "PilotLV", true)) {
            PutPlayerInVehicle(playerid, Vehiculo_de_Bots[3], 0);
            SetPlayerColor(playerid, 0x00FFFF55);
        } else if(!strcmp(Jugador_Nombre[playerid], "PilotSF", true)) {
            PutPlayerInVehicle(playerid, Vehiculo_de_Bots[4], 0);
            SetPlayerColor(playerid, 0x00FFFF55);
        } else if(!strcmp(Jugador_Nombre[playerid], "PilotLS", true)) {
            PutPlayerInVehicle(playerid, Vehiculo_de_Bots[5], 0);
            SetPlayerColor(playerid, 0x00FFFF55);
        }
        return 1;
    }
...

Espero que te sirva...


Nota: Los ejemplos los hice con los NPC que creo el equipo de SAMP que viene incluido en la descarga del server.
Reply
#5

Lo que ocurre es que existen, pero no los usan `
Maсana vere si funcan
Reply
#6

Pasa todo el script para ver el problema.
Reply
#7

їCon el include?
Reply
#8

NO, el script de todos los NPC!, el que esta en filterscripts
Reply
#9

Aquн estб:
Pastebin
Reply
#10

El problema es que no defines el vehiculo, lo pones en un vehiculo, sin asignarselo.

Usa el ejemp de cocolabush.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)