[AJUDA] OnPlayerStateChange nгo funciona em helicoptero? -
ASDF - 30.06.2011
Pessoal, estou usando OnPlayerStateChange, para proibir tal player pegar tal veнculo, funcionou legal em
carros, mas quando eu faзo o sistema para um
helicoptero/aviхes, nгo funciona!
Estou usando essa funзгo:
pawn Код:
if(newstate == PLAYER_STATE_DRIVER)
{
if(CX == Heli[0] || CX == Heli[1] || CX == Heli[2]) // Variбvel que pega o veнculo em OnGame...
{
if(dini_Int(arquivo, "Variavel") == Variavel2) // Se nгo for tal coisa, ele nгo vai poder pilotar
{
}
else
{
SendClientMessage(playerid, XX, "| ERRO | Vocк nгo pode pilotar esse veнculo.");
RemovePlayerFromVehicle(playerid);
}
}
}
Serб que alguйm poderia tirar essa dъvida? Agradeзo desde jб.
OBS: Quando eu entro no helicoptero, nгo acontece nada.
Re: [DЪVIDA] OnPlayerStateChange nгo funciona em helicoptero? -
ASDF - 30.06.2011
The Knight, obrigado, mas ainda nгo funciona! :\
Alguйm poderia me ajudar?
Re: [DЪVIDA] OnPlayerStateChange nгo funciona em helicoptero? -
lucas_mdr1235 - 30.06.2011
@ OFF
Ai The Knight como vc faz pra fazer as letras coloridas dentro de [pawn][/pawn*]
Re: [DЪVIDA] OnPlayerStateChange nгo funciona em helicoptero? -
RockFire - 30.06.2011
@TOPIC
The Knight se vocк criou a variбvel kVeiculo por que colocou Veiculo lб ? :B
@OFF
nгo й [ pawn ] й [ php ]
Re: [DЪVIDA] OnPlayerStateChange nгo funciona em helicoptero? -
ASDF - 30.06.2011
The knight, um exemplo:
pawn Код:
if(dini_Int(arquivo, "Gangue") == Macumbeiros_rairia)
{
Se o player nгo for da gangue Macumbeiros, ele nгo pode dirigir o veнculo e й ejetado, entendeu? xD
Re: [DЪVIDA] OnPlayerStateChange nгo funciona em helicoptero? -
ASDF - 30.06.2011
Ainda nгo estб funcionando! (Ta difнcil de arrumar isso, funciona com carros, mas com helicopteros nгo!) #TENSO
Alguйm ai poderia me ajudar? :\
Re: [DЪVIDA] OnPlayerStateChange nгo funciona em helicoptero? - rjjj - 30.06.2011
Quote:
Originally Posted by ASDF
Ainda nгo estб funcionando! (Ta difнcil de arrumar isso, funciona com carros, mas com helicopteros nгo!) #TENSO
Alguйm ai poderia me ajudar? :\
|
Aparentemente, o problema estб na variбvel
Heli[x] (sendo 0 <= x < sizeof(Heli)) .
Bem, mas como vocк citou o termo "helicуpteros" junto com o termo "carros", entгo o primeiro foi utilizado de forma genйrica, ou seja, vale utilizar o seguinte cуdigo (crйditos б Calg00ne pelo mesmo)
:
pawn Код:
//Coloque no Final do GM:
stock IsAHelicopter(vehicleid)
{
new model = GetVehicleModel(vehicleid);
if(model == 548 || model == 525 || model == 417 || model == 487 || model == 488 || model == 497 || model == 563 || model == 447 || model == 469)
{
return 1;
}
return 0;
}
E, por fim, aqui estб o seu cуdigo, agora, arrumado
:
pawn Код:
if(newstate == PLAYER_STATE_DRIVER)
{
if(IsAHelicopter(GetPlayerVehicleID(playerid))) // Variбvel que pega o veнculo em OnGame...
{
if(dini_Int(arquivo, "Variavel") != Variavel2) // Se nгo for tal coisa, ele nгo vai poder pilotar
{
SendClientMessage(playerid, XX, "| ERRO | Vocк nгo pode pilotar esse veнculo.");
RemovePlayerFromVehicle(playerid);
}
else
{
SendClientMessage(playerid, XX, "| ERRO | Vocк nгo й do grupo que pode usar este veнculo.");
}
}
else
{
SendClientMessage(playerid, XX, "| ERRO | Vocк nгo estб em um helicуptero.");
}
}
Qualquer problema, basta explicar o cуdigo com detalhes (se as variбveis sгo globais, o que cada sнmbolo significa, entre outros).
Espero ter ajudado
.
Re: [DЪVIDA] OnPlayerStateChange nгo funciona em helicoptero? -
ASDF - 30.06.2011
Mas na onde eu vou usar a variбvel do OnGame nesse cуdigo ai? Pq nesse cуdigo que vocк postou, se o player pegar qualquer helicoptero, vai dar a mensagem pra ele, e eu quero que sу dк a mensagem em 3 helicopteros que criei...
Explicando como fiz:
pawn Код:
// Topo
new Heli[3];
// OnGameModeInit
Heli[0] = AddStaticVehicle(...
Heli[1] = AddStaticVehicle(...
Heli[2] = AddStaticVehicle(...
if(newstate == PLAYER_STATE_DRIVER)
{
new CX = GetPlayerVehicleID(playerid); // Como vocкs nгo deveriam saber oq era CX, acabei de adicionar.
if(CX == Heli[0] || CX == Heli[1] || CX == Heli[2]) // Variбvel que pega o veнculo em OnGame...
{
if(dini_Int(arquivo, "Variavel") == Variavel2) // Se nгo for tal coisa, ele nгo vai poder pilotar
{
}
else
{
SendClientMessage(playerid, XX, "| ERRO | Vocк nгo pode pilotar esse veнculo.");
RemovePlayerFromVehicle(playerid);
}
}
}
O problema й: Eu uso esse mesmo cуdigo em tal veнculo, e funciona normalmente, sу que, adicionei o cуdigo para funcionar em helicoptero, eu entro nele, e nгo acontece nada!
Re: [DЪVIDA] OnPlayerStateChange nгo funciona em helicoptero? - rjjj - 30.06.2011
Agora todo o cуdigo jб estб esclarecido !
.
E, acho que jб entendi o que estб acontecendo, use este cуdigo
:
pawn Код:
if(newstate == PLAYER_STATE_DRIVER)
{
new CX = GetPlayerVehicleID(playerid);
if(CX == Heli[0] || CX == Heli[1] || CX == Heli[2]) // Variбvel que pega o veнculo em OnGame...
{
if(dini_Int(arquivo, "Variavel") != Variavel2) // Se nгo for tal coisa, ele nгo vai poder pilotar
{
SendClientMessage(playerid, XX, "| ERRO | Vocк nгo pode pilotar esse veнculo.");
RemovePlayerFromVehicle(playerid);
}
else
{
SendClientMessage(playerid, XX, "| ERRO | Vocк й do grupo do qual pertence o helicуptero, entгo pode pilotб-lo normalmente.");
}
}
else
{
SendClientMessage(playerid, XX, "| ERRO | Vocк nгo estб em um helicуptero.");
}
}
E repare nesta linha:
pawn Код:
if(dini_Int(arquivo, "Variavel") != Variavel2) // Se nгo for tal coisa, ele nгo vai poder pilotar
Vocк deverб indicar nessa linha, a condiзгo do jogador que
faзa ele sair do veнculo, por exemplo, se ela for:
pawn Код:
if(IsPlayerConnected(playerid))
Entгo, o jogador terб que estб online para que ele
seja ejetado .
Concluindo, basta usar o cуdigo que postei e adaptar o
if para a condiзгo necessбria para que o jogador seja ejetado.
Qualquer problema, basta testar o cуdigo IN-GAME, pois coloquei alguns
elses para "debug" que enviarгo uma mensagem ao jogador, com conteъdo relacionado ao que estб acontecendo de errado
.
Espero ter ajudado
.
Re: [DЪVIDA] OnPlayerStateChange nгo funciona em helicoptero? -
ASDF - 30.06.2011
Nгo funcionou, estou achando que OnPlayerStateChange nгo funciona em helicopteros! Obrigado por ajudar Rjjj.
Alguйm por favor me ajuda! e_e