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.