[CS:S/CS:GO] Random Sound

exeorb

Участник
Сообщения
2
Реакции
4
Round Sound Plugin

Текущая версия 1.1

Описание плагина


  • Сопровождение евентов случайной музыкой из заданной папки с указанным шаблоном имен файлов
  • Поддержка source, go
  • Сlient preference
  • Меню для включения и выключения звуков

Планы на будующее



  • Добавить updater
  • Больше евентов
  • Поддержка dota, tf и т.д
  • Приоритет звуков (например убийство ножом для вас важнее чем firstblood)
  • Текстовое сопровождение
  • Translations


Usage:
"[event]"
{
"pattern" "[некоторое слово]"
"folder" "[некоторая папка в директории sound]"
"config"  "[0 или 1 или 2 или 3]"
}
Описание полей:

[pattern]
По данному шаблону, регулярным выражением вида [some pattern]\w*\.mp3$, плагин ищет совпадения в папке (поле folder).

Замечание

Пустой pattern означает что звук выключен

[folder]
Название папки из директории sound.

Внимание

Указанная папка обязательно должна быть, иначе будет вызвана SetFailState

[config]
Следующий enum описывает config

enum SoundSetting
{
NOBODY = 0,
CLIENT = 1,
ATTACKER_VICTIM = 2,
ALL = 3
};

Замечание

Event'ы типа joingame не могут иметь значение типа 2
Примеры
"firstblood"
{
"pattern" "first"
"folder" "testfolder/anotherfolder"
"config" "3
}

Файлы

first1.mp3, firstblablabacl.mp3, firstfirst.mp3, first1234.mp3, firstblood.mp3
подходят шаблону, теперь при возникновении события "firstblood" прозвучит выбранный случайным образом один из этих файлов
Установка
Закинуть папки в sourcemod

Исходники

https://github.com/exeorb/Random-Sound

 

Вложения

  • rds.zip
    22.2 КБ · Просмотры: 125
Последнее редактирование:

acik_traiks

Что нибудь напишем?)
Сообщения
770
Реакции
627
exeorb,
PHP:
			if((GetEngineTime() - g_LastKillTime[attackerClient]) < GetConVarFloat(g_ComboDelay) 
				|| g_LastKillTime[attackerClient] == UNDEFINED_TIME) 
			{
				switch(++g_ComboScore[attackerClient])
				{
					case 2:
						stype = DOUBLEKILL;
					case 3:
						stype = TRIPLEKILL;
					case 4:
						stype = QUAD;
					case 5:
						stype = MONSTERKILL;
				}
			}
			else
			{
				g_ComboScore[attackerClient] = 0;// сдесь должно быть 1
			}
так как с overlay на одно меньше показывало (троих то дабл)
 

exeorb

Участник
Сообщения
2
Реакции
4
Мы исходили из следующей логики
Если человек не успел доделать комбо за определенное время, то счет комбо упал.
Исходники выложены, и вы всегда вправе изменить код (ссылаясь на источник)
Скоро выйдет дополнение :)



Добавлено через 20 часов 42 минуты
Внимание
Введены следующие изменения

  • Плагин получил короткое название rds
  • Изменение всех конфигов на префик rds т.е. (../configs/rds_list.cfg, ../cfg/rds.cfg, ../data/rds_storage.txt)
  • Добавлены нужные convar​
Так же исходный код по ссылке ниже
Пожелания и исправления приветствуются
 
Последнее редактирование:

acik_traiks

Что нибудь напишем?)
Сообщения
770
Реакции
627
Даниил Пронин, Оффтоп
если не знаешь не задавай вопрос не показывай себя с "лучшей" стороны
 

Мария Фомина

Участник
Сообщения
41
Реакции
14
На v34 не работает(

SourceMod v1.5.3

L 11/09/2014 - 21:11:24: SourceMod error session started
L 11/09/2014 - 21:11:24: Info (map "de_dust2") (file "errors_20141109.log")
L 11/09/2014 - 21:11:24: [SM] Plugin encountered error 25: Call was aborted
L 11/09/2014 - 21:11:24: [SM] Native "SetFailState" reported: Plugin enable only on css and csgo:(
L 11/09/2014 - 21:11:24: [SM] Displaying call stack trace for plugin "randomsound.smx":
L 11/09/2014 - 21:11:24: [SM] [0] Line 155, randomsound.sp::OnPluginStart()

Может кто-то сделать fix под v34)?
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #7
Мария Фомина, пробуй
 

Вложения

  • randomsound.smx
    13 КБ · Просмотры: 9
  • randomsound.sp
    16.2 КБ · Просмотры: 9
Последнее редактирование:

Мария Фомина

Участник
Сообщения
41
Реакции
14
R1KO, спасибо) Сервер запустился без ошибок. Можно исходничек)?

Добавлено через 13 часов 28 минут
R1KO, а не подскажите почему когда я компилирую плагин и кидаю его на сервер то мне в логи пишет ошибку:

L 11/10/2014 - 11:28:18: SourceMod error session started
L 11/10/2014 - 11:28:18: Info (map "de_dust2") (file "errors_20141110.log")
L 11/10/2014 - 11:28:18: [SM] Unable to load plugin "randomsound.smx": Native "__FLOAT_LT__" was not found

Даже если я ничего не меняю в исходнике. А если закину Ваш готовый плагин то все работает отлично) Я просто хочу сделать перевод и изменить команду !rds на !sounds
 
Последнее редактирование:

Серый™

CS:S Server
Сообщения
2,925
Реакции
1,376
Мария Фомина, думаю что просто изначально плагин писался для нового см.
 

Мария Фомина

Участник
Сообщения
41
Реакции
14
Серый™, нет, все на в34 нормально работает! Тат плагин что кинул R1KO работает, но когда я компилирую его исходник даже если ничего не меняю то мне выдает эту ошибку при запуске сервера... SM 1.6.2 При компиляции кстати тоже выдает какую-то ошибку, но ее и на оригинальном плагине выдает)
 

Мария Фомина

Участник
Сообщения
41
Реакции
14
R1KO, спасибо большое! А Вы можете чуть подправить плагин)? Я хочу бы когда игрок вкл/выкл звуки ему писало Вы включили музыку в конце раунда. Вот кусок кода:

public Action:Menu(client, args)
{
new Handle:hmenu = CreateMenu(AMenuHandler);
SetMenuTitle(hmenu, "rds menu");

AddMenuItemWithBuffer(hmenu, g_ClientSoundEnable[client], "все звуки");

AddMenuItemWithBuffer(hmenu, g_ClientSoundSetPreference[client][ROUNDEND], "музыку в конце раунда");

//enough to check only one quake event
AddMenuItemWithBuffer(hmenu, g_ClientSoundSetPreference[client][FIRSTBLOOD], "quake звуки");

AddMenuItemWithBuffer(hmenu, g_ClientSoundSetPreference[client][JOINGAME], "музыку при вход");

DisplayMenu(hmenu, client, GetConVarInt(g_DisplayTime));

return Plugin_Handled;
}


И что бы меню сразу не закрывалось само а то это так тупо)
 
Сверху Снизу