Заебали тапать
-
Автор темы
- #1
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Для начала добавим сам hitsound.
NewMenu.cpp
Надеюсь поймёте куда вставить :3
variables.h
EventListener.cpp
19 строка
Потом добавьте сам playsoundapi.h в проект.
EventListener.cpp
180 строка, примерно там
EventListener.cpp
16 строка
Теперь добавим сам hitmark.
Я не стал кидать код, это самоубийство, просто скину свой.
Теперь поговорим, как сделать кастомный hitsound.
Нам нужны сами звуки, именно в формате .wav !1!
Желательно обрезать их, чтоб были короткие.
Качаем
Там выбираем файл и конвертируем в байты, байты которые мы получили кидаем в hitmark.h
Это заменяем
на
И выводим в EventListener
Пример
И выводим в NewMenu
Вроде усо, всем пасеба и пака
NewMenu.cpp
Надеюсь поймёте куда вставить :3
Код:
const char* hitmark[] = { "none", "skeet", "bameware", ":RoflanEbalo:" };
ImGui::Combo("Hitmarker sound", &SETTINGS::settings.hitmark_int, hitmark, ARRAYSIZE(hitmark));
Код:
int hitmark_int;
19 строка
Код:
#include <playsoundapi.h>
Код:
/********************************************************************************
* *
* playsoundapi.h -- ApiSet Contract for api-ms-win-mm-playsound-l1-1-0 *
* *
* Copyright (c) Microsoft Corporation. All rights reserved. *
* *
********************************************************************************/
#ifdef _MSC_VER
#pragma once
#endif // _MSC_VER
#ifndef _PLAYSOUNDAPI_H_
#define _PLAYSOUNDAPI_H_
#include <apiset.h>
#include <apisetcconv.h>
#include <mmsyscom.h> // mm common definitions
/* APISET_NAME: api-ms-win-mm-playsound-l1 */
/* APISET_TAG: public */
#if !defined(RC_INVOKED)
#ifndef _APISET_PLAYSOUND_VER
#ifdef _APISET_TARGET_VERSION
#if _APISET_TARGET_VERSION >= _APISET_TARGET_VERSION_WIN8
#define _APISET_PLAYSOUND_VER 0x0100
#endif
#endif
#endif
#endif // !defined(RC_INVOKED)
#ifdef __cplusplus
extern "C" {
#endif
#pragma region Desktop Family
#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#ifndef MMNOSOUND
/****************************************************************************
Sound support
****************************************************************************/
#ifdef _WIN32
WINMMAPI
BOOL
WINAPI
sndPlaySoundA(
_In_opt_ LPCSTR pszSound,
_In_ UINT fuSound
);
WINMMAPI
BOOL
WINAPI
sndPlaySoundW(
_In_opt_ LPCWSTR pszSound,
_In_ UINT fuSound
);
#ifdef UNICODE
#define sndPlaySound sndPlaySoundW
#else
#define sndPlaySound sndPlaySoundA
#endif // !UNICODE
#else
DLOAD_RET(FALSE)
BOOL WINAPI sndPlaySound(LPCSTR pszSound, UINT fuSound);
#endif
/*
* flag values for fuSound and fdwSound arguments on [snd]PlaySound
*/
#define SND_SYNC 0x0000 /* play synchronously (default) */
#define SND_ASYNC 0x0001 /* play asynchronously */
#define SND_NODEFAULT 0x0002 /* silence (!default) if sound not found */
#define SND_MEMORY 0x0004 /* pszSound points to a memory file */
#define SND_LOOP 0x0008 /* loop the sound until next sndPlaySound */
#define SND_NOSTOP 0x0010 /* don't stop any currently playing sound */
#define SND_NOWAIT 0x00002000L /* don't wait if the driver is busy */
#define SND_ALIAS 0x00010000L /* name is a registry alias */
#define SND_ALIAS_ID 0x00110000L /* alias is a predefined ID */
#define SND_FILENAME 0x00020000L /* name is file name */
#define SND_RESOURCE 0x00040004L /* name is resource name or atom */
#if (WINVER >= 0x0400)
#define SND_PURGE 0x0040 /* purge non-static events for task */
#define SND_APPLICATION 0x0080 /* look for application specific association */
#endif /* WINVER >= 0x0400 */
#define SND_SENTRY 0x00080000L /* Generate a SoundSentry event with this sound */
#define SND_RING 0x00100000L /* Treat this as a "ring" from a communications app - don't duck me */
#define SND_SYSTEM 0x00200000L /* Treat this as a system sound */
#define SND_ALIAS_START 0 /* alias base */
#ifdef _WIN32
#define sndAlias(ch0, ch1) (SND_ALIAS_START + (DWORD)(BYTE)(ch0) | ((DWORD)(BYTE)(ch1) << 8))
#define SND_ALIAS_SYSTEMASTERISK sndAlias('S', '*')
#define SND_ALIAS_SYSTEMQUESTION sndAlias('S', '?')
#define SND_ALIAS_SYSTEMHAND sndAlias('S', 'H')
#define SND_ALIAS_SYSTEMEXIT sndAlias('S', 'E')
#define SND_ALIAS_SYSTEMSTART sndAlias('S', 'S')
#define SND_ALIAS_SYSTEMWELCOME sndAlias('S', 'W')
#define SND_ALIAS_SYSTEMEXCLAMATION sndAlias('S', '!')
#define SND_ALIAS_SYSTEMDEFAULT sndAlias('S', 'D')
WINMMAPI
BOOL
WINAPI
PlaySoundA(
_In_opt_ LPCSTR pszSound,
_In_opt_ HMODULE hmod,
_In_ DWORD fdwSound
);
WINMMAPI
BOOL
WINAPI
PlaySoundW(
_In_opt_ LPCWSTR pszSound,
_In_opt_ HMODULE hmod,
_In_ DWORD fdwSound
);
#ifdef UNICODE
#define PlaySound PlaySoundW
#else
#define PlaySound PlaySoundA
#endif // !UNICODE
#else
DLOAD_RET(FALSE)
BOOL WINAPI PlaySound(LPCSTR pszSound, HMODULE hmod, DWORD fdwSound);
#endif
#endif /* ifndef MMNOSOUND */
#endif // WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
#pragma endregion
#ifdef __cplusplus
}
#endif
#endif // _PLAYSOUNDAPI_H_
180 строка, примерно там
Код:
switch (SETTINGS::settings.hitmark_int)
{
case 0: break;
case 1: INTERFACES::Surface->IPlaySound("buttons\\arena_switch_press_02.wav"); break; // skeet ( metallic )
case 2: PlaySoundA(bameware, NULL, SND_ASYNC | SND_MEMORY); break; // Anime
case 3: PlaySoundA(vitalya, NULL, SND_ASYNC | SND_MEMORY); break; // Vitalya
}
16 строка
Код:
#include "../FEATURES/hitmark.h"
Я не стал кидать код, это самоубийство, просто скину свой.
Пожалуйста, авторизуйтесь для просмотра ссылки.
Теперь поговорим, как сделать кастомный hitsound.
Нам нужны сами звуки, именно в формате .wav !1!
Желательно обрезать их, чтоб были короткие.
Качаем
Пожалуйста, авторизуйтесь для просмотра ссылки.
Пожалуйста, авторизуйтесь для просмотра ссылки.
Там выбираем файл и конвертируем в байты, байты которые мы получили кидаем в hitmark.h
Это заменяем
Код:
BYTE NameArry[/*53568*/] =
{
//тут байты
}
Код:
char название[] = {
//тут байты
}
Пример
Код:
case 4: PlaySoundA(название, NULL, SND_ASYNC | SND_MEMORY); break;
Код:
const char* hitmark[] = { "none", "skeet", "bameware", ":RoflanEbalo:", "Название" };
Последнее редактирование: