0 / 0 / 1
Регистрация: 08.11.2012
Сообщений: 11

Пужно доработать воспроизведение звука в меню ( 1 секунда звук), спс заранее

12.04.2013, 23:35. Показов 1348. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Пишу игру в XNA 4
Получилось что? при пересечении текстуры курсора с другой текстурой играется Play звук Mamon :

protected override void Update(GameTime gameTime)
{
if (CursorBoundingBox.Intersects(NewBoundin gBox))
{
M1.Mamon.Play();
}
}

Звук мамон берется из класса: и там создается переменная типа SoundEffect ( если неправильно но обозвал не бейте)
class SoundManager
{
public SoundEffect Mamon;

public SoundManager()
{
Mamon = null;
}

public void LoadContent(ContentManager Content)
{
Mamon = Content.Load<SoundEffect>("ЗВУК МАМОН");
}
}

работает но :
НУЖНо что? чтоб б при наведении курсором на мою текстуру он воспроизводился, но не бесконечное число раз, а только 1 раз!!

ПОМОГИТЕ))) какое условие прописать?, заранее спс за любой совет
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.04.2013, 23:35
Ответы с готовыми решениями:

При нажатие кнопки меню, менялось страница DIV блоках, все это локально будет работать. Заранее большое спс!
Здравствуйте!!! Помогите сделать на HTML. Я чайник в этом деле. Заглянул в этот форум(если честно в первые) мне очень понравился здесь,...

Как правильно в английском произносить переходы со звука [Ө] на звук [s] и со звука [ð] на звук [z]?
Как правильно в английском произносить переходы со звука на звук и со звука на звук ? Например: Строчка из песни &quot;No, no,...

Ребят,помогите решить эти задачи ПЛЗ!!!!!заранее спс!!!!
я прост в лиспе нуль!!!помогите решить эти задачи в программе DrRcket!!заранее спс=) 1)Ввести последовательность символов,...

5
25 / 25 / 0
Регистрация: 02.10.2012
Сообщений: 63
13.04.2013, 01:29
Хм.. ну так как это SoundEffect, то можно создать SoundEffectInstance от звука Mamon, потом просто:
C#
1
2
3
4
5
6
7
8
protected override void Update(GameTime gameTime)
{
    if (CursorBoundingBox.Intersects(NewBoundingBox))
    { 
        if (mamonInstance.State != SoundState.Playing)
            mamonInstance.Play(); 
    } 
}
Тогда звук будет воспроизводиться с периодом в свою длину. Тобишь если звук 1 сек, то он проиграет и через 1 сек проиграет ещё раз, и так дальше..

Если надо чтобы звук играл всего 1 раз (вообще), то надо использовать какой-небудь флаг, например сделать пару значений:
<SoundEffectInstance, bool> тобишь: экземпляр звука, и флаг (был воспроизведен или нет). и тогда когда звук будет воспроизводиться:
C#
1
2
3
4
5
6
7
8
9
10
11
protected override void Update(GameTime gameTime)
{
    if (CursorBoundingBox.Intersects(NewBoundingBox))
    { 
        if (MySoundInstances[mamonInstance] == false)
        {
            mamonInstance.Play();
            MySoundInstances[mamonInstance] = true;
        }
    } 
}
0
0 / 0 / 1
Регистрация: 08.11.2012
Сообщений: 11
13.04.2013, 01:57  [ТС]
ShellesT,
Привет, за код твой спс большое, но я не могу понять как его применить:
вот фрагмент моего кода подправь может, если знаешь, спс.....

SoundEffectInstance Mamon = new SoundEffectInstance();

Mamon = Content.Load<SoundEffectInstance>("мамон ");

а дальше ошибки у меня

if (CursorBoundingBox.Intersects(NewGame1Bo undingBox))
{
if (SoundEffectInstance[Mamon] == false) ...вот здесь ошибка
{
Mamon.Play();
SoundEffectInstance[Mamon] = true; ... и здесь не знаю как править
}

}
0
 Аватар для makedonsky94
45 / 45 / 4
Регистрация: 14.02.2013
Сообщений: 139
13.04.2013, 14:29
Попробуй пример полегче
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
bool play=true;
protected override void Update(GameTime gameTime)
{
if (CursorBoundingBox.Intersects(NewBoundingBox))
{
if (play)
{
M1.Mamon.Play(); 
play=false;
}
}
else
play=true;
}
0
25 / 25 / 0
Регистрация: 02.10.2012
Сообщений: 63
13.04.2013, 15:57
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// Загружаем звук и создаем для него экзепляр
SoundEffect Mamon = Content.Load<SoundEffect>("мамон");
SoundEffectInstance mamonInstance = Mamon.CreateInstance();
 
// Создаем коллекцию звуков (Экземпляр => Флаг):
Dictonary<SoundEffectInstance, bool> MySoundInstances = 
   new Dictonary<SoundEffectInstance, bool>();
 
// Добавляем экземпляр в коллекцию
MySoundInstances.Add(mamonInstance, false);
 
...............
 
// Потом как это используем:
protected override void Update(GameTime gameTime)
{
    if (CursorBoundingBox.Intersects(NewBoundingBox))
    { 
        if (MySoundInstances[mamonInstance] == false)
        {
            mamonInstance.Play();
            MySoundInstances[mamonInstance] = true;
        }
    } 
}
Ну или как в примере от makedonsky94, сделай просто переменную bool play.
0
0 / 0 / 1
Регистрация: 08.11.2012
Сообщений: 11
13.04.2013, 17:03  [ТС]
Ребята огромное спс, ShellesT, тебе персональное спс, ты наверное предложил красивый вариант, но я так и не разобрался с ним, где создавать коллекцию, ее всегда подчеркивает блин, а вот пример от makedonsky94 проще и понятней, теперь работает, спс еще раз вам!
Будут вопросы напишу в л.с., не против?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.04.2013, 17:03
Помогаю со студенческими работами здесь

Пропал звук. Нет звука после изменения настройки во вкладке Звук=> Связь
Здравствуйте уважаемые жители форума. Подскажите кто чем может,облазил уже 3 вкладки Google. Ситуация такая, изменил стандартную...

Воспроизведение звука
Доброго времени суток всем! Подскажите пожалуйста, как в WPF воспроизвести несколько звуков одновременно? Т.е. есть фоновый звук, который...

Qt 5.1.1 воспроизведение звука
Подскажите какой нибудь способ воспроизведение аудио с использованием ресурсов Qt 5.1.1 minGW 32bit windows 8.1 64bit

Воспроизведение звука
Добрый вечер :) Пояснение: Я хочу сделать что-то вроде пианино на клавиатуре(примитивное). Я загнал в файл ресурсов несколько WAV...

Воспроизведение звука
В продолжение предыдущей темы =) Берется строка, просматривается посимвольно, и каждый символ озвучивается Вот кусок процедуры: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

Новые блоги и статьи
Префабы в Unity: Использование, хранение, управление
GameUnited 18.04.2025
Префабы — один из краеугольных элементов разработки игр в Unity, представляющий собой шаблоны объектов, которые можно многократно использовать в различных сценах. Они позволяют создавать составные. . .
RabbitMQ как шина данных в интеграционных решениях на C# (с MassTransit)
stackOverflow 18.04.2025
Современный бизнес опирается на множество специализированных программных систем, каждая из которых заточена под решение конкретных задач. CRM управляет отношениями с клиентами, ERP контролирует. . .
Типы в TypeScript
run.dev 18.04.2025
TypeScript представляет собой мощное расширение JavaScript, которое добавляет статическую типизацию в этот динамический язык. В JavaScript, где переменная может свободно менять тип в процессе. . .
Погружение в Kafka: Концепции и примеры на C# с ASP.NET Core
stackOverflow 18.04.2025
Apache Kafka изменила подход к обработке данных в распределенных системах. Эта платформа потоковой передачи данных выходит далеко за рамки обычной шины сообщений, предлагая мощные возможности,. . .
Коммуникация в реальном времени с SignalR в C# на примере создания чата
UnmanagedCoder 17.04.2025
Современный веб стремительно эволюционирует от статичных страниц к динамичным приложениям, где пользователи ожидают мгновенной реакции на свои действия. Представим, что вы отправляете сообщение. . .
Реализация CQRS с MediatR на C# .NET
stackOverflow 17.04.2025
Современная разработка программного обеспечения постоянно ищет пути повышения эффективности организации кода. Архитектурные паттерны появляются, эволюционируют, и те, что проявляют свою. . .
Verilog и интеллектуальная собственность - "глазами" обученной LM модели.
Hrethgir 17.04.2025
В сети встречаются участники, заявляющие что код на Verilog ни о чём не говорит. Но вот патентная практика на самом деле показывает обратное ими утверждаемому. То-есть код на Verilog включают в. . .
Свап-файл дополнительно к разделу (если вдруг не хватает или не создан)
jigi33 17.04.2025
ПОДКЛЮЧЕНИЕ ДОПОЛНИТЕЛЬНОГО SWAP ПРОСТРАНСТВА, Т. О. , РАСШИРЕНИЕ ЕГО РАЗМЕРА В Linux можно использовать как раздел подкачки (swap), так и файл подкачки (swap-файл). Чтобы создать swap-файл вместо. . .
Указатели в Swift: Небезопасные, буферные, необработанные и управляемые указатели
mobDevWorks 16.04.2025
Указатели относятся к наиболее сложным и мощным инструментам языка Swift. В своей сути указатель — это переменная, которая хранит адрес участка памяти, где расположены данные, а не сами данные. . . .
Жизненный цикл HTTP-запросов в ASP.NET Core MVC
UnmanagedCoder 16.04.2025
Разработка веб-приложений на ASP. NET MVC часто выглядит как простой процесс: получили запрос, обработали его в контроллере, отрендерили представление и отправили ответ пользователю. Однако за этой. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru