28.07.2013, 11:10
Eu gostaria de saber como e que se cria um trem no sa-mp por que eu nгo estou conseguindo cria-los pelos comandos /cv ou /setcar 537 e 538
Amigo, muito obrigado pela dedicaзгo, mas isso nгo estб pegando. Na verdade eu queria fazer o seguinte:
Haverб apenas 1 trem na estaзгo. Quando o player entrar, ele cria outro no lugar daquele, e quando o player sair do trem, ele exclui. Assim nгo precisarб ter muitos trens na estaзгo, e evitarб muitos trens espalhados pelo mapa.
Pode me ajudar? Abraзos!
Adicione isto ao seu OnGameModeInit :p:
TremID = AddStaticVehicle(537, TremX, TremY, TremZ, TremRotacao, 1, 1);
E mude esta linha dele:
public OnGameModeInit()
Para:
public OnGameModeInit() <Trem:nao>
Por fim, coloque :mrgreen::
//No Topo do GM:
new TremJogador[MAX_PLAYERS];
new Float:NovoTrem[4];
stock TremID;
#define TremX 2777.5945 //Troque 2777.5945 pela coordenada X da posiзгo do trem.
#define TremY 1642.2833 //Troque 1642.2833 pela coordenada Y da posiзгo do trem.
#define TremZ 10.8203 //Troque 10.8203 pela coordenada Z da posiзгo do trem.
#define TremRotacao 280.0056 //Troque 280.0056 pela coordenada de rotaзгo do trem.
//No main:
state Trem:nao;
OnGameModeInit();
//No OnPlayerStateChange:
if(newstate == PLAYER_STATE_DRIVER && GetPlayerVehicleID(playerid) == TremID)
{
TremJogador[playerid] = TremID;
TremID = CriarTrem(TremX, TremY, TremZ, TremRotacao);
}
if(oldstate == PLAYER_STATE_DRIVER)
{
DestroyVehicle(TremJogador[playerid]);
TremJogador[playerid] = 0;
}
//E, no Final do GM:
public OnGameModeInit() <Trem:sim>
{
return AddStaticVehicle(537, NovoTrem[0], NovoTrem[1], NovoTrem[2], NovoTrem[3], 1, 1);
}
stock CriarTrem(Float:X, Float:Y, Float:Z, Float:Rotacao)
{
NovoTrem[0] = X;
NovoTrem[1] = Y;
NovoTrem[2] = Z;
NovoTrem[3] = Rotacao;
state Trem:sim;
return OnGameModeInit();
}
Espero ter ajudado :p.
pawn Код:
|