[Ajuda] Mъsica no Player
#1

Boa Tarde, preciso de uma ajudinha aqui no seguinte sistema que elaborei...
objetivo do sistema й o player andar tocando o som junto com ele e conforme ele vai chegando perto do player o som aumenta e quando ele sai o som abaixa, isso jб estб acontecendo, sу que para a mъsica ser tocada tem que ser floodada varias vezes, e nem todo mundo que estб perto do player esculta, sу as vezes, o objetivo estб sendo feito sу estб bugado.
eu botei para cada 1 segundo ele atualizar a localidade dele e da mъsica, sу que fica floodando desse jeito
http://i.imgur.com/c6N6jk8.png
Quem poder ajudar agradeзo desde jб.
Код:
CMD:tocar(playerid)
{
	ShowPlayerDialog(playerid, DIALOG_TOCAR,DIALOG_STYLE_INPUT,"{0000FF}Toque sua mъsica.","{FFFFFF}Link Abaixo:","Tocar","Cancelar");
	return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	if(dialogid == DIALOG_TOCAR)
	{
		if(response)
		{
			BLigarMP3(playerid, inputtext);

		}
	}
	return 1;
}
stock BLigarMP3(playerid, url[])
{
	for(new i=0;i<MAX_PLAYERS; i++)
	{
		new Float:X,Float:Y,Float:Z,Float:Distance = 60.0;
  		GetPlayerPos(playerid,X,Y,Z);
		if(strlen(url) <= 1) return SendClientMessage(playerid, -1, "ERRO: Digite a URL da mъsica");
		StopAudioStreamForPlayer(i);
		StopAudioStreamForPlayer(playerid);
		if(GetandoDistancia(playerid, i) <= 60.0)
		{
			PlayAudioStreamForPlayer(i, url,X,Y,Z,Distance,true);
		}
	}
	SetTimerEx("AtualizarMusica",1000,false, "i",playerid);
	return 1;
}
forward AtualizarMusica(playerid, url[]);
public AtualizarMusica(playerid, url[])
{
	for(new i=0;i<MAX_PLAYERS; i++)
	{
		new Float:X,Float:Y,Float:Z,Float:Distance = 60.0;
		GetPlayerPos(playerid,X,Y,Z);
		if(GetandoDistancia(playerid, i) <= 60.0)
		{
        	PlayAudioStreamForPlayer(i, url,X,Y,Z,Distance,true);
		}
	}
	return SetTimerEx("AtualizarMusica",1000,false, "i",playerid);

}
stock GetandoDistancia(playerid,playerid2)
{
	new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
	new Float:tmpdis;
	GetPlayerPos(playerid,x1,y1,z1);
	GetPlayerPos(playerid2,x2,y2,z2);
	tmpdis = floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
	return floatround(tmpdis);
}
Reply
#2

alguem salva ?
Reply
#3

Infelizmente , no SAMP nгo temos funзгo para tocar o PlayAudioStreamForPlayer aumentando e abaixando ao Mudar de X Y Z .

Mais vocк pode ta fazendo sem aumentar e Abaixar ai sim seria possivel pega a base do meu Codigo !

Base Code:
https://sampforum.blast.hk/showthread.php?tid=542653
Reply
#4

Quote:
Originally Posted by Jimmmy
Посмотреть сообщение
Infelizmente , no SAMP nгo temos funзгo para tocar o PlayAudioStreamForPlayer aumentando e abaixando ao Mudar de X Y Z .

Mais vocк pode ta fazendo sem aumentar e Abaixar ai sim seria possivel pega a base do meu Codigo !

Base Code:
https://sampforum.blast.hk/showthread.php?tid=542653
mais eu juro pra vc, que esse code q eu fiz estб pegando ele aumenta e abaixa certinho conforme o player anda e talz, sу que ele й bugado acho que deve ter alguma forma de se resolver isso nгo й possivel, mais obrigado pela intenзгo..
Reply
#5

Quote:
Originally Posted by Caiton
Посмотреть сообщение
mais eu juro pra vc, que esse code q eu fiz estб pegando ele aumenta e abaixa certinho conforme o player anda e talz, sу que ele й bugado acho que deve ter alguma forma de se resolver isso nгo й possivel, mais obrigado pela intenзгo..
Foi como eu disse й possivel abaixar e aumentar , so que atualizar a X Y Z nгo , so Atualizando o PlayAudioStreamForPlayer que ia fazer um lag .

Faz do tipo do meu codigo vocк conseguira o sistema mais proximo que vocк esta tentando fazer . E sem Lag .
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)