Boombox Help
#1

Hello I have a boombox filter script ready and done I put it on server.cfg it runs and all that but when I do

/boombox [url]

it says "You can use this Command Now" how do I fix?

+rep for helpful person.
Reply
#2

Show me thee script...The problem lies here
Reply
#3

/*
Boombox filterscript created by Soumi.
Copyright Soumi 2012.
Commands:
- /boombox : It will open a dialog where you can choose a radio station to play. After choosing the radio station,
it will create a boombox object and starts playing the radio station for the players in range of 20.0.
- /radiostation : To switch to another radio station.
- /turnoff : To turn off the boombox.

P.S : - If a player leaves the boombox range, the audio stream will stop for him.
- If a player enters the boombox range, the audio stream will start playing for him.
*/

#define filterscript
#include <a_samp>
#include <zcmd>
#include <sscanf2>
#include <streamer>

// Colors defines

#define GREY 0xCECECEFF
#define WHITE 0xFFFFFFFF
#define RED 0xAA3333AA
#define GOLD 0xB8860BAA
#define ACTION_COLOR 0xC2A2DAAA
#define GREEN 0x33AA33AA
#define ORANGE 0xFF9900AA
#define GUARDS_RADIO 0x33CCFFAA
#define DOCTORS_RADIO 0xFFC0CBAA
#define YELLOW 0xFFFF00AA
#define BRONZE 0x800000AA
#define SILVER 0xF5F5F5FF

// Player Stats

enum PlayerInfo
{
BoomBoxObject,
Float: BoomBoxObjectX,
Float: BoomBoxObjectY,
Float: BoomBoxObjectZ,
BoomBoxStatus,
BoomBoxLink[512],
ListeningToBoomBox,

}
new PlayerStat[MAX_PLAYERS][PlayerInfo];

forward OneSecondPlayerCheck(playerid);

#if defined FILTERSCRIPT

public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Boombox filterscript by Soumi ");
print("--------------------------------------\n");
LoadGangs();
return 1;
}

public OnFilterScriptExit()
{
return 1;
}

#else

main()
{
print("\n--------------------------------------");
print(" Boombox filterscript by Soumi ");
print("--------------------------------------\n");
}

#endif

public OnPlayerConnect(playerid)
{
PlayerStat[playerid][BoomBoxStatus] = -1;
PlayerStat[playerid][ListeningToBoomBox] = -1;
SetTimerEx("OneSecondPlayerCheck", 1000, true, "d", playerid);
return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
if(PlayerStat[playerid][BoomBoxStatus] == playerid)
{
DestroyDynamicObject(PlayerStat[playerid][BoomBoxObject]);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerInRangeOfPoint(i, 20.0, PlayerStat[playerid][BoomBoxObjectX], PlayerStat[playerid][BoomBoxObjectY], PlayerStat[playerid][BoomBoxObjectZ]))
{
StopAudioStreamForPlayer(i);
PlayerStat[i][ListeningToBoomBox] = 0;
}
}
}
return 1;
}

public OneSecondPlayerCheck(playerid)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(PlayerStat[i][BoomBoxStatus] == i && PlayerStat[playerid][ListeningToBoomBox] == -1)
{
if(IsPlayerInRangeOfPoint(i, 20.0, PlayerStat[playerid][BoomBoxObjectX], PlayerStat[playerid][BoomBoxObjectY], PlayerStat[playerid][BoomBoxObjectZ]))
{
PlayAudioStreamForPlayer(playerid, PlayerStat[i][BoomBoxLink], PlayerStat[playerid][BoomBoxObjectX], PlayerStat[playerid][BoomBoxObjectY], PlayerStat[playerid][BoomBoxObjectZ], 10.0, 1);
PlayerStat[playerid][ListeningToBoomBox] = i;
}
}
if(PlayerStat[i][BoomBoxStatus] == i && PlayerStat[playerid][ListeningToBoomBox] == i)
{
if(!IsPlayerInRangeOfPoint(i, 20.0, PlayerStat[playerid][BoomBoxObjectX], PlayerStat[playerid][BoomBoxObjectY], PlayerStat[playerid][BoomBoxObjectZ]))
{
StopAudioStreamForPlayer(playerid);
PlayerStat[playerid][ListeningToBoomBox] = -1;
}
}
}
return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 888
{
if(!response) return 1;
else if(response)
{
switch(listitem)
{
case 0:
{
if(PlayerStat[playerid][BoomBoxStatus] != playerid)
{
GetPlayerPos(playerid, PlayerStat[playerid][BoomBoxObjectX], PlayerStat[playerid][BoomBoxObjectY], PlayerStat[playerid][BoomBoxObjectZ]);
PlayerStat[playerid][BoomBoxObject] = CreateDynamicObject(2103 ,PlayerStat[playerid][BoomBoxObjectX], PlayerStat[playerid][BoomBoxObjectY], PlayerStat[playerid][BoomBoxObjectZ] -1,0.0000000,0.00000000,0.00000000);
PlayerStat[playerid][BoomBoxStatus] = playerid;
format(PlayerStat[playerid][BoomBoxLink], 512, "http://somafm.com/tags.pls");
SendClientMessage(playerid, GREEN, "Boombox turned [ON].");
SendClientMessage(playerid, WHITE, "Use /radiostation to switch to another radio station!");
}
else if(PlayerStat[playerid][BoomBoxStatus] == playerid)
{
format(PlayerStat[playerid][BoomBoxLink], 512, "http://somafm.com/tags.pls");
SendClientMessage(playerid, GREEN, "Radio station changed.");
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerInRangeOfPoint(i, 20.0, PlayerStat[playerid][BoomBoxObjectX], PlayerStat[playerid][BoomBoxObjectY], PlayerStat[playerid][BoomBoxObjectZ]))
{
PlayAudioStreamForPlayer(i, PlayerStat[i][BoomBoxLink], PlayerStat[playerid][BoomBoxObjectX], PlayerStat[playerid][BoomBoxObjectY], PlayerStat[playerid][BoomBoxObjectZ], 10.0, 1);
}
}
}
}
case 1:
{
if(PlayerStat[playerid][BoomBoxStatus] != playerid)
{
GetPlayerPos(playerid, PlayerStat[playerid][BoomBoxObjectX], PlayerStat[playerid][BoomBoxObjectY], PlayerStat[playerid][BoomBoxObjectZ]);
PlayerStat[playerid][BoomBoxObject] = CreateDynamicObject(2103 ,PlayerStat[playerid][BoomBoxObjectX], PlayerStat[playerid][BoomBoxObjectY], PlayerStat[playerid][BoomBoxObjectZ] -1,0.0000000,0.00000000,0.00000000);
PlayerStat[playerid][BoomBoxStatus] = playerid;
format(PlayerStat[playerid][BoomBoxLink], 512, "http://www.sky.fm/mp3/tophits.pls");
SendClientMessage(playerid, GREEN, "Boombox turned [ON].");
SendClientMessage(playerid, WHITE, "Use /radiostation to switch to another radio station!");
}
else if(PlayerStat[playerid][BoomBoxStatus] == playerid)
{
format(PlayerStat[playerid][BoomBoxLink], 512, "http://www.sky.fm/mp3/tophits.pls");
SendClientMessage(playerid, GREEN, "Radio station changed.");
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerInRangeOfPoint(i, 20.0, PlayerStat[playerid][BoomBoxObjectX], PlayerStat[playerid][BoomBoxObjectY], PlayerStat[playerid][BoomBoxObjectZ]))
{
PlayAudioStreamForPlayer(i, PlayerStat[i][BoomBoxLink], PlayerStat[playerid][BoomBoxObjectX], PlayerStat[playerid][BoomBoxObjectY], PlayerStat[playerid][BoomBoxObjectZ], 10.0, 1);
}
}
}
}
}
}
}
return 1;
}


//-----------------------------------------------------------------------[Commands]------------------------------------------------------------------------------
COMMAND:boombox(playerid, params[])
{
if(PlayerStat[playerid][BoomBoxStatus] == playerid) return SendClientMessage(playerid, GREY, "You can't use this command now.");
if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, GREY, "You can't use this command now.");
ShowPlayerDialog(playerid, 8888, DIALOG_STYLE_LIST, "Radio Stations:","SomaFM\nSkyFM","Play","Quit");
return 1;
}

COMMAND:radiostation(playerid, params[])
{
if(PlayerStat[playerid][BoomBoxStatus] == -1) return SendClientMessage(playerid, GREY, "You can't use this command now.");
ShowPlayerDialog(playerid, 8888, DIALOG_STYLE_LIST, "Radio Stations:","SomaFM\nWWOZ","Play","Quit");
return 1;
}

COMMAND:turnoff(playerid, params[])
{
if(PlayerStat[playerid][BoomBoxStatus] == -1) return SendClientMessage(playerid, GREY, "You can't use this command now.");
SendClientMessage(playerid, RED, "Boombox turned [OFF].");
DestroyDynamicObject(PlayerStat[playerid][BoomBoxObject]);
StopAudioStreamForPlayer(playerid);
PlayerStat[playerid][BoomBoxStatus] = -1;
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerInRangeOfPoint(i, 20.0, PlayerStat[playerid][BoomBoxObjectX], PlayerStat[playerid][BoomBoxObjectY], PlayerStat[playerid][BoomBoxObjectZ]))
{
StopAudioStreamForPlayer(i);
PlayerStat[i][ListeningToBoomBox] = -1;
}
}
return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)