This commit is contained in:
Paul 2001-01-11 19:40:55 +00:00
parent d279d098d3
commit e69ccf257a
2 changed files with 225 additions and 0 deletions

154
source/backend/gameover.cpp Normal file
View File

@ -0,0 +1,154 @@
/*=========================================================================
gameover.cpp
Author: PKG
Created:
Project: Spongebob
Purpose:
Copyright (c) 2001 Climax Development Ltd
===========================================================================*/
/*----------------------------------------------------------------------
Includes
-------- */
#include "backend\gameover.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 __FRONTEND_FRONTEND_H__
#include "frontend\frontend.h"
#endif
#ifndef __GFX_FADER_H__
#include "gfx\fader.h"
#endif
/* Std Lib
------- */
/* Data
---- */
#ifndef __STRING_ENUMS__
#include <trans.h>
#endif
/*----------------------------------------------------------------------
Tyepdefs && Defines
------------------- */
/*----------------------------------------------------------------------
Structure defintions
-------------------- */
/*----------------------------------------------------------------------
Function Prototypes
------------------- */
/*----------------------------------------------------------------------
Vars
---- */
CGameOverScene GameOverScene;
/*----------------------------------------------------------------------
Function:
Purpose:
Params:
Returns:
---------------------------------------------------------------------- */
void CGameOverScene::init()
{
m_font=new ("game over font") FontBank();
m_font->initialise(&standardFont);
m_font->setJustification(FontBank::JUST_CENTRE);
m_font->setOt(10);
m_readyToExit=false;
}
/*----------------------------------------------------------------------
Function:
Purpose:
Params:
Returns:
---------------------------------------------------------------------- */
void CGameOverScene::shutdown()
{
m_font->dump(); delete m_font;
}
/*----------------------------------------------------------------------
Function:
Purpose:
Params:
Returns:
---------------------------------------------------------------------- */
void CGameOverScene::render()
{
POLY_F4 *f4;
f4=GetPrimF4();
setXYWH(f4,0,0,512,256);
setRGB0(f4,0,0,0);
AddPrimToList(f4,20);
m_font->setColour(255,255,255);
m_font->print(256,100,STR__BACKEND__GAME_OVER);
}
/*----------------------------------------------------------------------
Function:
Purpose:
Params:
Returns:
---------------------------------------------------------------------- */
void CGameOverScene::think(int _frames)
{
if(!m_readyToExit)
{
if(PadGetDown(0)&(PAD_CROSS|PAD_START))
{
m_readyToExit=true;
CFader::setFadingOut();
GameState::setNextScene(&FrontEndScene);
}
}
}
/*----------------------------------------------------------------------
Function:
Purpose:
Params:
Returns:
---------------------------------------------------------------------- */
int CGameOverScene::readyToShutdown()
{
return m_readyToExit&&!CFader::isFading();
}
/*===========================================================================
end */

71
source/backend/gameover.h Normal file
View File

@ -0,0 +1,71 @@
/*=========================================================================
gameover.h
Author: PKG
Created:
Project: Spongebob
Purpose:
Copyright (c) 2001 Climax Development Ltd
===========================================================================*/
#ifndef __BACKEND_GAMEOVER_H__
#define __BACKEND_GAMEOVER_H__
/*----------------------------------------------------------------------
Includes
-------- */
#ifndef __SYSTEM_GSTATE_H__
#include "system\gstate.h"
#endif
/* Std Lib
------- */
/*----------------------------------------------------------------------
Tyepdefs && Defines
------------------- */
/*----------------------------------------------------------------------
Structure defintions
-------------------- */
class CGameOverScene: public CScene
{
public:
void init();
void shutdown();
void render();
void think(int _frames);
int readyToShutdown();
char *getSceneName() {return"GameOver";}
private:
class FontBank *m_font;
int m_readyToExit;
};
/*----------------------------------------------------------------------
Globals
------- */
extern CGameOverScene GameOverScene;
/*----------------------------------------------------------------------
Functions
--------- */
/*---------------------------------------------------------------------- */
#endif /* __BACKEND_GAMEOVER_H__ */
/*===========================================================================
end */