SBSPSS/source/paul/sndtest.cpp
2001-07-19 19:13:21 +00:00

168 lines
3.2 KiB
C++

/*=========================================================================
sndtest.cpp
Author: PKG
Created:
Project: Spongebob
Purpose:
Copyright (c) 2000 Climax Development Ltd
===========================================================================*/
/*----------------------------------------------------------------------
Includes
-------- */
#include "paul\sndtest.h"
#ifndef __GFX_FONT_H__
#include "gfx\font.h"
#endif
#ifndef __PAD_PADS_H__
#include "pad\pads.h"
#endif
#ifndef __PRIM_HEADER__
#include "gfx\prim.h"
#endif
#ifndef __SOUND_SOUND_H__
#include "sound\sound.h"
#endif
/* Std Lib
------- */
/* Data
---- */
/*----------------------------------------------------------------------
Tyepdefs && Defines
------------------- */
/*----------------------------------------------------------------------
Structure defintions
-------------------- */
/*----------------------------------------------------------------------
Function Prototypes
------------------- */
/*----------------------------------------------------------------------
Vars
---- */
CSceneSoundTest SoundTestScene;
static int s_soundId;
/*----------------------------------------------------------------------
Function:
Purpose:
Params:
Returns:
---------------------------------------------------------------------- */
void CSceneSoundTest::init()
{
m_font=new ("scene select font") ScalableFontBank();
m_font->initialise(&standardFont);
m_font->setJustification(FontBank::JUST_CENTRE);
m_font->setOt(10);
m_font->setScale(400);
s_soundId=0;
}
/*----------------------------------------------------------------------
Function:
Purpose:
Params:
Returns:
---------------------------------------------------------------------- */
void CSceneSoundTest::shutdown()
{
m_font->dump(); delete m_font;
}
/*----------------------------------------------------------------------
Function:
Purpose:
Params:
Returns:
---------------------------------------------------------------------- */
void CSceneSoundTest::render()
{
POLY_F4 *f4;
char buf[20];
f4=GetPrimF4();
setXYWH(f4,0,0,512,256);
setRGB0(f4,10,20,30);
AddPrimToList(f4,15);
sprintf(buf,"%d",s_soundId);
m_font->print(256,80,buf);
m_font->print(256,140,"UP/DOWN - Select");
m_font->print(256,160,"X - Play");
}
/*----------------------------------------------------------------------
Function:
Purpose:
Params:
Returns:
---------------------------------------------------------------------- */
void CSceneSoundTest::think(int _frames)
{
int padDown,padRepeat;
padDown=PadGetDown(0);
padRepeat=PadGetRepeat(0);
if(padRepeat&PAD_DOWN)
{
if(--s_soundId<0)
{
s_soundId=CSoundMediator::NUM_SFXIDS-1;
}
}
else if(padRepeat&PAD_UP)
{
if(++s_soundId==CSoundMediator::NUM_SFXIDS)
{
s_soundId=0;
}
}
if(padDown&PAD_CROSS)
{
CSoundMediator::playSfx((CSoundMediator::SFXID)s_soundId);
}
}
/*----------------------------------------------------------------------
Function:
Purpose:
Params:
Returns:
---------------------------------------------------------------------- */
int CSceneSoundTest::readyToShutdown()
{
return false;
}
/*===========================================================================
end */