musica no carro -
wallacematheus - 26.02.2013
tipo eu fiz um code aqui sу que ele ficou pegando a coordenada tipo eu dava /musicas ai quando escolhia a musica a musica tocava somente naquela coordenada gostaria que ele ficasse no carro quando o carro fosse andando ela ficasse tocando com o e nгo ficasse somente na coordenada que deu /musicas?
PHP код:
for(new i = 0; i < MAX_PLAYERS; i++)
{
static Float:X, Float:Y, Float:Z, Float:Distance = 5.0;
GetPlayerPos(i, X,Y,Z);
// new Float:slx, Float:sly, Float:slz, Float:slDistance = 5.0;
PlayAudioStreamForPlayer(i, "https://dl.dropbox.com/s/ewoyr0ydsfcff4z/Lfao2.mp3", X, Y, Z, Distance, 1);
}
Re: musica no carro -
Schocc - 26.02.2013
Simples Use a funзгo sem os parametros Da posiзгo;
pawn Код:
for(new i = 0; i < MAX_PLAYERS; i++)
{
PlayAudioStreamForPlayer( i, "dl.dropbox.com/s/ewoyr0ydsfcff4z/Lfao2.mp3" );
}
AW: musica no carro -
wallacematheus - 26.02.2013
sim, mais o som nгo vai ficar com a distancia :/
Re: musica no carro -
Supera - 26.02.2013
Acho que se vocк fizer um settimer para atualizar a posiзгo do jogador, seria a melhor opзгo.
AW: musica no carro -
wallacematheus - 26.02.2013
poderia me explicar como ficaria pois estou comeзando agora seria muito grado
Re: musica no carro -
Maklister - 26.02.2013
pawn Код:
// No Topo do GM
new bool:AtivouMusica[MAX_PLAYERS];
new TimerAtuMusica[MAX_PLAYERS];
public OnPlayerDisconnect(playerid)
{
// Resetamos a variavel para quando o jogador deslogar e logar outro com o mesmo ID nгo bulgar
AtivouMusica[playerid] = false;
KillTimer(TimerAtuMusica[playerid]);
return 1;
}
// No cmd que ativa a musica
CMD:musicas(playerid)
{
// Code aqui
AtivouMusica[playerid] = true;
TimerAtuMusica[playerid] = SetTimerEx("AtualizarMusica", 10000, true, "d", playerid);
return 1;
}
// para atualizar
forward AtualizarMusica(playerid);
public AtualizarMusica(playerid)
{
if(AtivouMusica[playerid] == true)
{
if(IsPlayerConnected(playerid))
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
static Float:X, Float:Y, Float:Z, Float:Distance = 5.0;
GetPlayerPos(i, X,Y,Z);
PlayAudioStreamForPlayer(i, "https://dl.dropbox.com/s/ewoyr0ydsfcff4z/Lfao2.mp3", X, Y, Z, Distance, 1);
}
}
}
return 1;
}
// Mude o tempo desejad para atualizar a posiзгo do jogador, no caso estб em 10 segundos,
Re: musica no carro -
Supera - 26.02.2013
Quote:
Originally Posted by Murilo_sousa
pawn Код:
// No Topo do GM new bool:AtivouMusica[MAX_PLAYERS]; new TimerAtuMusica[MAX_PLAYERS];
public OnPlayerDisconnect(playerid) { // Resetamos a variavel para quando o jogador deslogar e logar outro com o mesmo ID nгo bulgar AtivouMusica[playerid] = false; KillTimer(TimerAtuMusica[playerid]); return 1; }
// No cmd que ativa a musica
CMD:musicas(playerid) { // Code aqui AtivouMusica[playerid] = true; TimerAtuMusica[playerid] = SetTimerEx("AtualizarMusica", 10000, true, "d", playerid); return 1; }
// para atualizar
forward AtualizarMusica(playerid); public AtualizarMusica(playerid) { if(AtivouMusica[playerid] == true) { if(IsPlayerConnected(playerid)) { for(new i = 0; i < MAX_PLAYERS; i++) { static Float:X, Float:Y, Float:Z, Float:Distance = 5.0; GetPlayerPos(i, X,Y,Z); PlayAudioStreamForPlayer(i, "https://dl.dropbox.com/s/ewoyr0ydsfcff4z/Lfao2.mp3", X, Y, Z, Distance, 1); } } } return 1; }
// Mude o tempo desejad para atualizar a posiзгo do jogador, no caso estб em 10 segundos,
|
Desse modo a funзгo "PlayAudioStreamForPlayer", nгo irб ser chamada varias vezes e irб bugar ?
Re: musica no carro -
Maklister - 26.02.2013
Nгo, pois apenas serб chamada ser a variavel
for igual a
true
pois se a var for igual a
false que dizer que ele nгo ligou a mъsica;
AW: musica no carro -
wallacematheus - 26.02.2013
mano a musica ta sendo chamada novamente a cada 10 segundos :/
Re: musica no carro -
Supera - 26.02.2013
Aqui vai um exemplo, depois vocк adapta ao seu comando
pawn Код:
// Topo do gamemode
new Float:Pos[3];
new bool: Ouvindo[MAX_PLAYERS];
new Timer[MAX_PLAYERS];
// No comando /musicas
CMD:musicas(playerid, params[])
{
Ouvindo[playerid] = true;
PlayAudioStreamForPlayer(playerid, "link", Pos[0], Pos[1], Pos[2], 5.0);
Timer[playerid] = SetTimerEx("Ouvir", 1000, true, "i", playerid);
return 1;
}
// Na public OnPlayerDisconnect
public OnPlayerDisconnect(playerid)
{
Ouvindo[playerid] = false;
return 1;
}
// Final do gamemode
forward Ouvir(playerid);
public Ouvir(playerid)
{
if(Ouvindo[playerid] == true)
{
GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
}
else
KillTimer(Timer[playerid]);
return 1;
}
Onde possui a variavel "Ouvindo[playerid] = true;" vocк vai colocar dentro do seu comando de musicas, depois coloca "Ouvindo[playerid] = false", onde tem a opзгo para parar a radio , ao desligar, abaixo de "StopAudioStreamForPlayer"