SA-MP Forums Archive
Music won't stop - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+---- Forum: Help Archive (https://sampforum.blast.hk/forumdisplay.php?fid=89)
+---- Thread: Music won't stop (/showthread.php?tid=159585)



Music won't stop - [KMA]DlennartD - 13.07.2010

Hi,

I made some nice map and added some music to it using the following code in OnPlayerSpawn:

Код:
PlayerPlaySound(playerid, 1068, 835.6853, -2019.2902, 12.8672);
The code works, the music start playing, but the problem is, when you leave the area, the music keep on playing and won't stop.

How can I stop the music when somebody leave the area?

Thanks!


Re: Music won't stop - felipex - 13.07.2010

public OnPlayerDeath(playerid, killerid, reason)
{
PlayerPlaySound(playerid, 1069, 835.6853, -2019.2902, 12.8672);
return 1;
}

or on the command /leave, for leave the area


Re: Music won't stop - [KMA]DlennartD - 13.07.2010

Nah, thats not what I want, I want the music to play automatic when somebody walks into the area, and it needs to stop automatic when he/she walks out of the area, now I tried this but it's still not working:

Код:
public isPlayerInArea()
{
   new Float:X, Float:Y, Float:Z; //We use this to store player position
   for(new i=0; i < MAX_PLAYERS; i++) //This line defines a name for all player, the name is "i"
   {
       GetPlayerPos(i, X, Y, Z); //Here we are storing the player position on the variables X, Y, and Z defined previously
       if (X <= 852.5654 && X >= 820.3245 && Y <= -2067.6201 && -2016.4636 >= 37)
       /* This line is the important one!. Here, is where you change those numbers, by the ones
       you get from the /pos command. As you can see, those coordinates, are only the X and Y ones, the Z
       doesnt matter*/
       {
           	PlayerPlaySound(i, 1076, 0.0, 0.0, 10.0); //start muziek
       }else{
       		PlayerPlaySound(i, 1077, 0.0, 0.0, 10.0); // stop muziek
       }
   }
}



Re: Music won't stop - felipex - 13.07.2010

Код:
if(IsPlayerInRangeOfPoint(playerid, distance, x, y, z)) {
Код:
PlayerPlaySound(playerid,1068,0.0,0.0,0.0);
Код:
 }
Код:
else {
Код:
PlayerPlaySound(playerid,1069,0.0,0.0,0.0);



Re: Music won't stop - [KMA]DlennartD - 13.07.2010

Alright, thanks for your help, I solved it, this did the trick:

Код:
	for(new i=0; i < MAX_PLAYERS; i++) //This line defines a name for all player, the name is "i"
   	{
       if(IsPlayerInRangeOfPoint(i, 15, 835.6853, -2019.2902, 12.8672))
       {
            if(muziekspelen[i] == 0)
			{
			    muziekspelen[i] = 1;
	   			GameTextForPlayer(i, "~w~Music is now ~g~on", 5000, 5);
	   			PlayerPlaySound(i, 1068, 835.6853, -2019.2902, 12.8672);
			}
           	//PlayerPlaySound(i, 1076, 0.0, 0.0, 10.0); //start music
       }else{
            if(muziekspelen[i] == 1)
			{
	       		muziekspelen[i] = 0;
				GameTextForPlayer(i, "~w~Music is now ~r~off", 5000, 5);
				PlayerPlaySound(i, 1069, 835.6853, -2019.2902, 12.8672);
			}
			//PlayerPlaySound(i, 1077, 0.0, 0.0, 10.0); // stop music
       }
   }
This way the script keep checking if you are in the range of the point or not.

Thanks again!