func_door: Use sound shaders instead of hardcoding sounds.

This commit is contained in:
Marco Cawthorne 2020-09-09 21:39:34 +02:00
parent 90b716bd5d
commit 1b6e5985a4
2 changed files with 81 additions and 12 deletions

View File

@ -0,0 +1,73 @@
func_door.move_1
{
sample doors/doormove1.wav
}
func_door.move_2
{
sample doors/doormove2.wav
}
func_door.move_3
{
sample doors/doormove3.wav
}
func_door.move_4
{
sample doors/doormove4.wav
}
func_door.move_5
{
sample doors/doormove5.wav
}
func_door.move_6
{
sample doors/doormove6.wav
}
func_door.move_7
{
sample doors/doormove7.wav
}
func_door.move_8
{
sample doors/doormove8.wav
}
func_door.move_9
{
sample doors/doormove9.wav
}
func_door.move_10
{
sample doors/doormove10.wav
}
func_door.stop_1
{
sample doors/doorstop1.wav
}
func_door.stop_2
{
sample doors/doorstop2.wav
}
func_door.stop_3
{
sample doors/doorstop3.wav
}
func_door.stop_4
{
sample doors/doorstop4.wav
}
func_door.stop_5
{
sample doors/doorstop5.wav
}
func_door.stop_6
{
sample doors/doorstop6.wav
}
func_door.stop_7
{
sample doors/doorstop7.wav
}
func_door.stop_8
{
sample doors/doorstop8.wav
}

View File

@ -119,7 +119,7 @@ func_door::Arrived(void)
m_iState = DOORSTATE_RAISED;
if (m_strSndStop) {
sound(this, CHAN_VOICE, m_strSndStop, 1.0f, ATTN_NORM);
Sound_Play(this, CHAN_VOICE, m_strSndStop);
} else {
sound(this, CHAN_VOICE, "common/null.wav", 1.0f, ATTN_NORM);
}
@ -149,7 +149,7 @@ void
func_door::Returned(void)
{
if (m_strSndStop) {
sound(this, CHAN_VOICE, m_strSndStop, 1.0f, ATTN_NORM);
Sound_Play(this, CHAN_VOICE, m_strSndStop);
} else {
sound(this, CHAN_VOICE, "common/null.wav", 1.0f, ATTN_NORM);
}
@ -165,7 +165,7 @@ void
func_door::MoveBack(void)
{
if (m_strSndMove) {
sound(this, CHAN_VOICE, m_strSndMove, 1.0f, ATTN_NORM);
Sound_Play(this, CHAN_VOICE, m_strSndMove);
} else {
sound(this, CHAN_VOICE, "common/null.wav", 1.0f, ATTN_NORM);
}
@ -187,7 +187,7 @@ func_door::MoveAway(void)
}
if (m_strSndMove) {
sound(this, CHAN_VOICE, m_strSndMove, 1.0f, ATTN_NORM);
Sound_Play(this, CHAN_VOICE, m_strSndMove);
} else {
sound(this, CHAN_VOICE, "common/null.wav", 1.0f, ATTN_NORM);
}
@ -430,15 +430,11 @@ func_door::SpawnKey(string strKey, string strValue)
/* GoldSrc compat */
case "movesnd":
x = stoi(strValue);
if (x >= 1 && x <= 10) {
m_strSndMove = sprintf("doors/doormove%i.wav", x);
}
m_strSndMove = sprintf("func_door.move_%i", x);
break;
case "stopsnd":
x = stoi(strValue);
if (x >= 1 && x <= 8) {
m_strSndStop = sprintf("doors/doorstop%i.wav", x);
}
m_strSndStop = sprintf("func_door.stop_%i", x);
break;
default:
CBaseTrigger::SpawnKey(strKey, strValue);
@ -451,9 +447,9 @@ func_door::func_door(void)
CBaseTrigger::CBaseTrigger();
if (m_strSndMove)
precache_sound(m_strSndMove);
Sound_Precache(m_strSndMove);
if (m_strSndStop)
precache_sound(m_strSndStop);
Sound_Precache(m_strSndStop);
}
void