From b62b652eabb823203791d539d0725d8aa13a5d5a Mon Sep 17 00:00:00 2001 From: Paul Date: Thu, 11 Jan 2001 20:58:42 +0000 Subject: [PATCH] --- source/backend/complete.cpp | 150 ++++++++++++++++++++++++++++++++++++ source/backend/complete.h | 71 +++++++++++++++++ 2 files changed, 221 insertions(+) create mode 100644 source/backend/complete.cpp create mode 100644 source/backend/complete.h diff --git a/source/backend/complete.cpp b/source/backend/complete.cpp new file mode 100644 index 000000000..e0202db38 --- /dev/null +++ b/source/backend/complete.cpp @@ -0,0 +1,150 @@ +/*========================================================================= + + complete.cpp + + Author: PKG + Created: + Project: Spongebob + Purpose: Game complete scene. Shown when the game has been completed + + Copyright (c) 2001 Climax Development Ltd + +===========================================================================*/ + + +/*---------------------------------------------------------------------- + Includes + -------- */ + +#include "backend\complete.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 + ---- */ + +/*---------------------------------------------------------------------- + Tyepdefs && Defines + ------------------- */ + +/*---------------------------------------------------------------------- + Structure defintions + -------------------- */ + +/*---------------------------------------------------------------------- + Function Prototypes + ------------------- */ + +/*---------------------------------------------------------------------- + Vars + ---- */ + +CGameCompletedScene GameCompletedScene; + + +/*---------------------------------------------------------------------- + Function: + Purpose: + Params: + Returns: + ---------------------------------------------------------------------- */ +void CGameCompletedScene::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; + CFader::setFadingIn(CFader::BLACK_FADE); +} + + +/*---------------------------------------------------------------------- + Function: + Purpose: + Params: + Returns: + ---------------------------------------------------------------------- */ +void CGameCompletedScene::shutdown() +{ + m_font->dump(); delete m_font; +} + + +/*---------------------------------------------------------------------- + Function: + Purpose: + Params: + Returns: + ---------------------------------------------------------------------- */ +void CGameCompletedScene::render() +{ + POLY_F4 *f4; + + f4=GetPrimF4(); + setXYWH(f4,0,0,512,256); + setRGB0(f4,50,40,30); + AddPrimToList(f4,20); + + m_font->setColour(255,255,255); + m_font->print(256,100,"Game complete.."); +} + + +/*---------------------------------------------------------------------- + Function: + Purpose: + Params: + Returns: + ---------------------------------------------------------------------- */ +void CGameCompletedScene::think(int _frames) +{ + if(!CFader::isFading()&&!m_readyToExit) + { + if(PadGetDown(0)&(PAD_CROSS|PAD_START)) + { + m_readyToExit=true; + CFader::setFadingOut(CFader::BLACK_FADE); + GameState::setNextScene(&FrontEndScene); + } + } +} + + +/*---------------------------------------------------------------------- + Function: + Purpose: + Params: + Returns: + ---------------------------------------------------------------------- */ +int CGameCompletedScene::readyToShutdown() +{ + return m_readyToExit&&!CFader::isFading(); +} + + +/*=========================================================================== + end */ \ No newline at end of file diff --git a/source/backend/complete.h b/source/backend/complete.h new file mode 100644 index 000000000..30eed69dd --- /dev/null +++ b/source/backend/complete.h @@ -0,0 +1,71 @@ +/*========================================================================= + + complete.h + + Author: PKG + Created: + Project: Spongebob + Purpose: + + Copyright (c) 2001 Climax Development Ltd + +===========================================================================*/ + +#ifndef __BACKEND_COMPLETE_H__ +#define __BACKEND_COMPLETE_H__ + +/*---------------------------------------------------------------------- + Includes + -------- */ + +#ifndef __SYSTEM_GSTATE_H__ +#include "system\gstate.h" +#endif + + +/* Std Lib + ------- */ + +/*---------------------------------------------------------------------- + Tyepdefs && Defines + ------------------- */ + +/*---------------------------------------------------------------------- + Structure defintions + -------------------- */ + +class CGameCompletedScene: public CScene +{ +public: + void init(); + void shutdown(); + void render(); + void think(int _frames); + int readyToShutdown(); + char *getSceneName() {return"GameCompleted";} + + +private: + class FontBank *m_font; + int m_readyToExit; + +}; + + +/*---------------------------------------------------------------------- + Globals + ------- */ + +extern CGameCompletedScene GameCompletedScene; + + +/*---------------------------------------------------------------------- + Functions + --------- */ + +/*---------------------------------------------------------------------- */ + +#endif /* __BACKEND_COMPLETE_H__ */ + +/*=========================================================================== + end */