Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Новости

30-дек
29-дек
26-дек
15-дек

To Play Radio

Статус пользователя ShaTalKiN
сообщение 7.1.2015, 13:45
Сообщение #1
Стаж: 2 года 8 месяцев
Город: Витебск

Сообщений: 39
Благодарностей: 13
Полезность: 255

Автор: ShaTalKiN
Версия: 1.0
Исходник присутствует.

Описание:
Обычное меню с отправкой MOTD окна клиенту.

Установка:
Раскидать всё по папочкам.

На заметку:
Я выбрал 4 Радиостанции которые пока что лидируют по количеству слушателей.
Вы можете добавить свои.
Для этого:
1. Заходим на сайт, я выбрал этот: http://pofm.ru/
2. Выбираем нужную вам станцию.
3. Открываем её.
4. Копируем URL страницы.
5. Создаём файлик название.txt
6. Пример ниже:
Код:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="refresh" content="0;URL=ВСТАВЛЯЕМ ССЫЛКУ СКОПИРОВАННОГО URL">
</head>
<body
</body>
</html>

7. Дальше, дело техники. Не знаете как ? - Пишите мне.

Мои Контакты:
(Skype) - shatacs16 или в [BK] - vk.com/shatalkin123

Отредактировал: ShaTalKiN, - 7.1.2015, 13:46
Прикрепленные файлы:
Прикрепленный файл  To_Play_Radio.zip ( 5.8 килобайт ) Кол-во скачиваний: 47


[Продажа] Knife Engine v 0.2: ссылка
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя se7en2614
сообщение 7.1.2015, 13:47
Сообщение #2


Стаж: 4 года 8 месяцев

Сообщений: 1096
Благодарностей: 125
Полезность: < 0

хоть дифм есть :D

А прямой поток ни как не воспроизвести? например у меня есть поток от моей станции (http://s6.radioheart.ru:8010/cheremshan64) то его как?

Отредактировал: se7en2614, - 7.1.2015, 13:48
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ShaTalKiN
сообщение 7.1.2015, 13:51
Сообщение #3
Стаж: 2 года 8 месяцев
Город: Витебск

Сообщений: 39
Благодарностей: 13
Полезность: 255

Цитата(se7en2614 @ 7.1.2015, 14:47) *
хоть дифм есть :D

А прямой поток ни как не воспроизвести? например у меня есть поток от моей станции (http://s6.radioheart.ru:8010/cheremshan64) то его как?


По другому не пробовал. Там обычный html от странички считывает.


[Продажа] Knife Engine v 0.2: ссылка
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Kasper55
сообщение 8.1.2015, 11:26
Сообщение #4
Стаж: 6 лет 8 месяцев

Сообщений: 1145
Благодарности: выкл.

Не запускается , пишет missing plugin-in

Переход между станциями вообще не возможен , открыл рекорд радио , потом открываеш европу плюс и окно стоит зависшее на рекорде

клиент steam
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ShaTalKiN
сообщение 8.1.2015, 17:08
Сообщение #5
Стаж: 2 года 8 месяцев
Город: Витебск

Сообщений: 39
Благодарностей: 13
Полезность: 255

Цитата(Kasper55 @ 8.1.2015, 12:26) *
Не запускается , пишет missing plugin-in

Переход между станциями вообще не возможен , открыл рекорд радио , потом открываеш европу плюс и окно стоит зависшее на рекорде

клиент steam


У самого Steam, работает исправно.


[Продажа] Knife Engine v 0.2: ссылка
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Kasper55
сообщение 8.1.2015, 17:15
Сообщение #6
Стаж: 6 лет 8 месяцев

Сообщений: 1145
Благодарности: выкл.

Цитата(ShaTalKiN @ 8.1.2015, 18:08) *
У самого Steam, работает исправно.


Ну хз , мне так не удалось послушать через кс радио
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя voed
сообщение 8.1.2015, 18:15
Сообщение #7


Стаж: 2 года 6 месяцев

Сообщений: 2446
Благодарностей: 1648
Полезность: 616

Достаточно show_motd(id, "http://pofm.ru/pub/184_stat.html","[EUROPA PLUS]"), зачем делать кучу файлов и редиректы @_@


ปี้ ฏ๎๎
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя ShaTalKiN
сообщение 18.1.2015, 19:35
Сообщение #8
Стаж: 2 года 8 месяцев
Город: Витебск

Сообщений: 39
Благодарностей: 13
Полезность: 255

Цитата(voed @ 8.1.2015, 19:15) *
Достаточно show_motd(id, "http://pofm.ru/pub/184_stat.html","[EUROPA PLUS]"), зачем делать кучу файлов и редиректы @_@


Проще наверно в .txt заменить, чем по 100 раз компилировать...


[Продажа] Knife Engine v 0.2: ссылка
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя voed
сообщение 18.1.2015, 19:44
Сообщение #9


Стаж: 2 года 6 месяцев

Сообщений: 2446
Благодарностей: 1648
Полезность: 616

Цитата(ShaTalKiN @ 18.1.2015, 19:35) *
Проще наверно в .txt заменить, чем по 100 раз компилировать...

Не вижу простоты


ปี้ ฏ๎๎
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя yuri235
сообщение 19.3.2015, 14:38
Сообщение #10
Стаж: 2 года 6 месяцев

Сообщений: 8
Благодарностей: 1
Полезность: 0

Вот добавил актуальные рабочие станции.Если что убрал авторство в название меню.

Скрытый текст
#include <amxmodx>
#include <amxmisc>

new name_receiver[33], receivers[256], user_fm[33],count
static buffer[4096], buffer_off[2048]

/*
От автора:

*За основу взят плагин от SLIMSHADY © версии 2.0
*3.0 Версия онлайн радио
*Все станции работают
*авто Bind на кнопку F3
*Цвет DHUDa Зелёный
*Информер справа сверху
*Плагин by AWPIIIHI/IK v3.0
*/

/*
Для того, чтобы добавить свою станцию, добавьте строчку в массив ниже.
На примере других станций, в формате: {"Название","Ссылка на потоковое вещание"},
Учтите, что если добавляете станцию в самый конец, то запятая в конце строки не нужна.
Желательно, чтобы станции были вида: "ссылка.m3u"
*/

new const fm_id[][][] =
{
{"",""}, /*Для удобства оставляем первую строчку пустой, удалять ее не нужно.*/

{"Русское радио", "http://rr.fmtuner.ru/"},
{"Европа+", "http://ep128server.streamr.ru:8030/ep128"},
{"Радио Record", "http://online.radiorecord.ru:8101/rr_128"},
{"Русский рэп", "http://relay.myradio.ua:8000/rep128.mp3?v=24"},
{"Виктор Цой и Кино", "http://relay.myradio.ua:8000/viktor-tsoy-i-gruppa-kino128.mp3?v=17"},
{"Танцевальные хиты", "http://relay.myradio.ua:8000/dance128.mp3?v=14"},
{"Российская поп-музыка", "http://music.myradio.ua:8000/Rus-pop128.mp3?v=21"},
{"Радио DFM", "http://radio.tatinf.ru:8800/dfm"},
{"Шансон", "http://music.myradio.ua:8000/shanson128.mp3?v=13"},
{"АвтоРадио", "http://ru2.101.ru:8000/v3_1"},
{"Дорожное Радио", "http://dorognoe.hostingradio.ru:8000/radio"},
{"Дискотека 90-х", "http://music.myradio.ua:8000/disco90128.mp3?v=25"}
}

/*Функция для отображения списка слушателей.*/
public who()
{
/*Настройка цвета и позиции для сообщения.*/
set_hudmessage(0, 255, 0, 0.84, 0.20, 2, 0.04, 30.0, 0.03, 0.02, 1)

/*Если слушателей нет, то показываем это сообщение.*/
if(!name_receiver[0])
show_hudmessage(0, "Играй с музыкой! =)^nF3, Напиши /fm в чат.")

/*Если есть, то это.*/
else
show_hudmessage(0, "Играй с музыкой! =)^nF3, Напиши /fm в чат.^nСлушатели:^n%s", receivers)

}

public fm(id)
{
new i_Menu = menu_create("\yServerRadio:","radio")
new item[3], form[64]

/*Составляем пункты меню из списка станций.*/
for(new i=1; i<=count; i++)
{
num_to_str(i, item, 3)

/*Если текущая станция - проигрываемая, то указываем это.*/
if(i==user_fm[id])
{
formatex(form, charsmax(form), "\d%s (играет)", fm_id[i][0])
menu_additem(i_Menu, form, item,0)
}
/*Если нет, то обычная строка.*/
else
menu_additem(i_Menu, fm_id[i][0], item)
}

/*Русификация пунктов: Back, Next, Exit.*/
menu_setprop(i_Menu, MPROP_NEXTNAME, "\yДалее")
menu_setprop(i_Menu, MPROP_BACKNAME, "\yНазад")
menu_setprop(i_Menu, MPROP_EXITNAME, "\yГл. меню")
menu_setprop(i_Menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, i_Menu, 0)
return PLUGIN_HANDLED
}

/*Биндим кнопку на включение радио*/
public client_authorized(id)
{
client_cmd(id, "bind ^"F3^" ^"say /fm^"")
}

public client_disconnect(id)
{
if(user_fm[id])
{
user_fm[id] = 0
hudradio();
}
}

/*Функция для пересчета слушателей и прослушиваемых станций.*/
public hudradio()
{
name_receiver[0] = '^0';
receivers[0] = '^0';
new num=get_maxplayers()
for(new id = 1; id <= num; id++)
{
if(!is_user_connected(id) || !user_fm[id])
continue;
get_user_name(id, name_receiver, 31)
formatex(receivers, 255, "%s %s (%s)^n", receivers, name_receiver, fm_id[user_fm[id]][0])
}
}

/*Основное меню плагина*/
public fm_menu(id)
{
new i_Menu

if(user_fm[id] > 0)
{
i_Menu = menu_create_format("\yServerRadio^n\wВы слушаете: \y%s", "radiod", fm_id[user_fm[id]][0])
menu_additem(i_Menu, "\yОтключить" , "1", 0)
menu_additem(i_Menu, "Случайная станция", "3", 0)
menu_additem(i_Menu, "\wСписок станций", "2", 0)
}

else
{
i_Menu = menu_create("\yServerRadio", "radiod")
menu_additem(i_Menu, "\yСлучайная станция", "1", 0)
menu_additem(i_Menu, "\wСписок станций", "2", 0)
}

menu_additem(i_Menu, "Слушатели", "4", 0)

/*Русификация пунктов: Back, Next, Exit.*/
menu_setprop(i_Menu, MPROP_NEXTNAME, "\yДалее")
menu_setprop(i_Menu, MPROP_BACKNAME, "\yНазад")
menu_setprop(i_Menu, MPROP_EXITNAME, "\rВыйти")
menu_setprop(i_Menu, MPROP_EXIT, MEXIT_ALL)

menu_display(id, i_Menu, 0)

return PLUGIN_HANDLED
}
public radiod(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
return PLUGIN_HANDLED
}
new s_Data[6], s_Name[64], i_Access, i_Callback
menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)
new i_Key = str_to_num(s_Data)
switch(i_Key)
{
case 1:
{

if(user_fm[id] > 0)
{
user_fm[id] = 0
hudradio();Play(id)
}

else
random_fm(id)

}
case 2:fm(id)
case 3:random_fm(id)
case 4:
{
set_hudmessage(0, 255, 0, 0.84, 0.20, 2, 0.04, 30.0, 0.03, 0.02, 1)

if(!name_receiver[0])
show_hudmessage(id, "Слушателей нет :'(")
else
show_hudmessage(id, "Слушатели:^n%s", receivers)
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}

public Play(id)
{

static motd_show[4096]

/*Если клиент предпочел выключить радио.*/
if(!user_fm[id]) show_motd(id, buffer_off, "OFF")

/*Если включил или выбрал другую станцию.*/
else
{
formatex(motd_show, charsmax(motd_show), buffer, fm_id[user_fm[id]][0], fm_id[user_fm[id]][1])
show_motd(id, motd_show, "СЕРВЕР РАДИО")
}

}

public radio(id, menu, item)
{
if (item == MENU_EXIT)
{
menu_destroy(menu)
fm_menu(id)
return PLUGIN_HANDLED
}

new s_Data[6], s_Name[64], i_Access, i_Callback
menu_item_getinfo(menu, item, i_Access, s_Data, charsmax(s_Data), s_Name, charsmax(s_Name), i_Callback)
user_fm[id] = str_to_num(s_Data)
Play(id);hudradio()
menu_destroy(menu)

return PLUGIN_HANDLED
}

/*Функция для случайного выбора станции.*/
public random_fm(id)
{
new random_int = random_num(1, count);
/*Если случайное радио совпадает с текущей проигрываемой станцией, то выбираем случайное еще раз.*/
if(random_int == user_fm[id])
{
random_fm(id); return PLUGIN_HANDLED
}
user_fm[id] = random_int;
Play(id);hudradio();
return PLUGIN_HANDLED
}


public plugin_init()
{
register_plugin("ServerRadio", "3.0", "AWPIIIHI/IK")

/*Команда для вызова меню плагина.*/
register_clcmd("say /fm", "fm_menu")

/*Регистрация квара для регулировки показа информации о слушателях.*/
new cvar = register_cvar("amx_miniradio_showtime", "100.0")
/*Узнаем общее кол-во FM станций.*/
count = sizeof(fm_id)-1

/*
Формируем окно включения радио
Если хотите добавить строчку пишите через add(buffer, charsmax(buffer), "Ваша строка")

Основные переменные:
<body bgcolor='black'> - цвет фона (аналогично со шрифтом)
<div align='center'>Текст</div> - строка по центру
<div align='left'>Текст</div> - строка влево
<div align='right'>Текст</div> - строка вправо
<font color='grey'>Текст</font> - цвет текста серый
<font color='white'>Текст</font> - цвет текста белый
<font color='green'>Текст</font> - цвет текста зелёный
<font color='yellow'>Текст</font> - цвет текста жёлтый
<font color='red'>Текст</font> - цвет текста красный
<font color='blue'>Текст</font> - цвет текста синий
<big>Текст</big> - большие букофки
<b>Текст</b> - жирный шрифт
<br> - перевод строки
*/
add(buffer, charsmax(buffer), "<meta http-equiv='Content-Type' content='text/html; charset=Utf-8'><p align='center'><body bgcolor='black'>")
add(buffer, charsmax(buffer), "<div align='left'><big><font color='grey'><b>ServerRadio by AWPIIIHI/IK v3.0</b></big></br>")
add(buffer, charsmax(buffer), "<br><div align='left'><font color='white'><b>...Вы слушаете радио: <font color='grey'>%s.</b></font></br>")
add(buffer, charsmax(buffer), "<div align='left'><font color='white'><b>...Идёт загрузка буфера, вы можете закрыть окно нажав ОК.</b></font></br>")
add(buffer, charsmax(buffer), "<div align='left'><font color='white'><b>...Если станция не работает, попробуйте включить её снова.</b></font>")
add(buffer, charsmax(buffer), "<DIV align=center><EMBED style='WIDTH: 298px; HEIGHT: 100px' height=500 type=application/x-mplayer2 pluginspage=http://www.microsoft.com/windows/mediaplayer/ width=500 src='%s' ShowStatusBar='1' showtracker='0'")
add(buffer, charsmax(buffer), "displaysize='0' autosize='1' showcontrols='true' Volume='10' animationatstart='0' transparentatstart='0' autostart='true'></DIV></body>")
add(buffer, charsmax(buffer), "</br></br><div align='left'><font color='white'><b>...Надеюсь вам понравилось радио и вы получили удовольствие от музыки.</b></font><br>")
add(buffer, charsmax(buffer), "<div align='left'><font color='white'><b>...Если вы хотите установить себе на сервер это радио, обращайтесь в Skype: ubivator_mozgov</b></font>")


/*Формируем окно выключения радио.*/
add(buffer_off, charsmax(buffer_off), "<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'><title>play</title></head><body bgcolor='black'><p align='center'>")
add(buffer_off, charsmax(buffer_off), "<div align='left'><big><b><font color='grey'>ServerRadio by AWPIIIHI/IK v3.0</br></div>")
add(buffer_off, charsmax(buffer_off), "<div align='left'><font color='red'><b>...Воспроизведение радио выключено.</font></b></big></br>")
add(buffer_off, charsmax(buffer_off), "</br></br><div align='left'><font color='white'><b>...Надеюсь вам понравилось радио и вы получили удовольствие от музыки.</b></font><br>")


/*Таймер для показа информации о слушателях.*/
if(get_pcvar_float(cvar)>0.0)
set_task(get_pcvar_float(cvar),"who", random_num(100, 600), _, _,"b")

}

/*Функция для быстрого форматирования заголовка.*/
stock menu_create_format(const title[], const handler[], any:...)
{
new menu_title[256]
vformat(menu_title, charsmax(menu_title), title, 3)
return menu_create(menu_title, handler);
}
/*
The End. August 2013
*/


Отредактировал: yuri235, - 19.3.2015, 14:40
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя g0ldenman
сообщение 3.9.2016, 18:17
Сообщение #11


Стаж: 1 год 5 месяцев

Сообщений: 377
Благодарностей: 19
Полезность: < 0

на стиме работать будет?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: