This commit is contained in:
Paul 2001-01-10 22:03:20 +00:00
parent 59b457114d
commit 1def70b88f
8 changed files with 85 additions and 36 deletions

View File

@ -62,6 +62,7 @@ frontend_src := credits \
start
game_src := game \
gameslot \
thing \
convo

View File

@ -84,7 +84,7 @@
---------------------------------------------------------------------- */
#include "memcard\memcard.h"
#include "memcard\saveload.h"
SaveLoadDatabase *sl;
CSaveLoadDatabase *sl;
enum{mode_none,mode_save,mode_load};
int mode=mode_none;
void CFrontEndCredits::init()
@ -111,7 +111,7 @@ static u8 *s_image;
void CFrontEndCredits::select()
{
MemCard::Start();
sl=new ("sldb") SaveLoadDatabase();
sl=new ("sldb") CSaveLoadDatabase();
mode=mode_none;
m_shuttingDown=false;
s_image=CFileIO::loadFile(BACKDROP_CREDITS_GFX);
@ -178,9 +178,9 @@ if(mode==mode_none)
else if(mode==mode_save)
{
int status=sl->getSaveStatus();
if(status!=SaveLoadDatabase::IN_PROGRESS)
if(status!=CSaveLoadDatabase::IN_PROGRESS)
{
if(status==SaveLoadDatabase::FINISHED_OK)
if(status==CSaveLoadDatabase::FINISHED_OK)
{
MEMCARD_DBGMSG("saved ok");
}
@ -194,9 +194,9 @@ else if(mode==mode_save)
else if(mode==mode_load)
{
int status=sl->getLoadStatus();
if(status!=SaveLoadDatabase::IN_PROGRESS)
if(status!=CSaveLoadDatabase::IN_PROGRESS)
{
if(status==SaveLoadDatabase::FINISHED_OK)
if(status==CSaveLoadDatabase::FINISHED_OK)
{
MEMCARD_DBGMSG("loaded ok");
}

View File

@ -7,7 +7,7 @@
Project: Spongebob
Purpose:
Copyright (c) 2000 Climax Development Ltd
Copyright (c) 2001 Climax Development Ltd
===========================================================================*/

View File

@ -7,7 +7,7 @@
Project: Spongebob
Purpose:
Copyright (c) 2000 Climax Development Ltd
Copyright (c) 2001 Climax Development Ltd
===========================================================================*/

View File

@ -84,7 +84,7 @@ static int s_callbackStatus=0;
Params:
Returns:
---------------------------------------------------------------------- */
SaveLoadDatabase::SaveLoadDatabase()
CSaveLoadDatabase::CSaveLoadDatabase()
{
m_saving=false;
m_loading=false;
@ -104,7 +104,7 @@ SaveLoadDatabase::SaveLoadDatabase()
Params:
Returns:
---------------------------------------------------------------------- */
SaveLoadDatabase::~SaveLoadDatabase()
CSaveLoadDatabase::~CSaveLoadDatabase()
{
MemFree(m_memcardHeader);
}
@ -116,7 +116,7 @@ SaveLoadDatabase::~SaveLoadDatabase()
Params:
Returns:
---------------------------------------------------------------------- */
void SaveLoadDatabase::think()
void CSaveLoadDatabase::think()
{
MemCard::Handler();
}
@ -128,7 +128,7 @@ void SaveLoadDatabase::think()
Params:
Returns:
---------------------------------------------------------------------- */
void SaveLoadDatabase::gatherData()
void CSaveLoadDatabase::gatherData()
{
ASSERT(!m_saving);
ASSERT(!m_loading);
@ -145,7 +145,7 @@ void SaveLoadDatabase::gatherData()
Params:
Returns:
---------------------------------------------------------------------- */
bool SaveLoadDatabase::startSave(char *_filename,int _fileNum=-1)
bool CSaveLoadDatabase::startSave(char *_filename,int _fileNum=-1)
{
char nameBuf[9]="\0";
@ -189,7 +189,7 @@ bool SaveLoadDatabase::startSave(char *_filename,int _fileNum=-1)
Params:
Returns:
---------------------------------------------------------------------- */
int SaveLoadDatabase::getSaveStatus()
int CSaveLoadDatabase::getSaveStatus()
{
int ret=INACTIVE;
@ -231,7 +231,7 @@ MEMCARD_DBGMSG("======= weird card removal - bonus 50 points");
Params:
Returns:
---------------------------------------------------------------------- */
bool SaveLoadDatabase::startLoad(int _file)
bool CSaveLoadDatabase::startLoad(int _file)
{
ASSERT(!m_saving);
ASSERT(!m_loading);
@ -260,7 +260,7 @@ bool SaveLoadDatabase::startLoad(int _file)
Params:
Returns:
---------------------------------------------------------------------- */
int SaveLoadDatabase::getLoadStatus()
int CSaveLoadDatabase::getLoadStatus()
{
int ret=INACTIVE;
@ -323,7 +323,7 @@ int SaveLoadDatabase::getLoadStatus()
Params:
Returns:
---------------------------------------------------------------------- */
bool SaveLoadDatabase::startFormat()
bool CSaveLoadDatabase::startFormat()
{
ASSERT(!m_saving);
ASSERT(!m_loading);
@ -349,7 +349,7 @@ MEMCARD_DBGMSG("======= m_formatting=true");
Params:
Returns:
---------------------------------------------------------------------- */
int SaveLoadDatabase::getFormatStatus()
int CSaveLoadDatabase::getFormatStatus()
{
int ret=INACTIVE;
@ -389,7 +389,7 @@ MEMCARD_DBGMSG("======= still formatting...");
Params:
Returns:
---------------------------------------------------------------------- */
void SaveLoadDatabase::startAutoload()
void CSaveLoadDatabase::startAutoload()
{
MEMCARD_DBGMSG("Trying autoload..");
m_autoloadFrameCounter=0;
@ -403,7 +403,7 @@ void SaveLoadDatabase::startAutoload()
Params:
Returns:
---------------------------------------------------------------------- */
bool SaveLoadDatabase::monitorAutoload()
bool CSaveLoadDatabase::monitorAutoload()
{
if(m_autoloading)
{
@ -441,7 +441,7 @@ bool SaveLoadDatabase::monitorAutoload()
Params:
Returns:
---------------------------------------------------------------------- */
void SaveLoadDatabase::createData()
void CSaveLoadDatabase::createData()
{
int i;
@ -456,6 +456,12 @@ void SaveLoadDatabase::createData()
m_dataBuffer.m_systemDetails.m_volumes[i]=CSoundMediator::getVolume((CSoundMediator::VOLUMETYPE)i);
}
m_dataBuffer.m_systemDetails.m_language=(char)TranslationDatabase::getLanguage();
// Game slots
for(i=0;i<CGameSlotManager::NUM_GAME_SLOTS;i++)
{
m_dataBuffer.m_gameSlots[i]=CGameSlotManager::getSlotData(i);
}
}
@ -465,7 +471,7 @@ void SaveLoadDatabase::createData()
Params:
Returns:
---------------------------------------------------------------------- */
void SaveLoadDatabase::restoreData()
void CSaveLoadDatabase::restoreData()
{
int i;
@ -479,6 +485,12 @@ void SaveLoadDatabase::restoreData()
{
TranslationDatabase::loadLanguage(m_dataBuffer.m_systemDetails.m_language);
}
// Game slots
for(i=0;i<CGameSlotManager::NUM_GAME_SLOTS;i++)
{
CGameSlotManager::setSlotData(i,&m_dataBuffer.m_gameSlots[i]);
}
}
@ -488,7 +500,7 @@ void SaveLoadDatabase::restoreData()
Params:
Returns:
---------------------------------------------------------------------- */
void SaveLoadDatabase::allocateBuffer()
void CSaveLoadDatabase::allocateBuffer()
{
ASSERT(!m_tempBuffer);
@ -504,7 +516,7 @@ void SaveLoadDatabase::allocateBuffer()
Params:
Returns:
---------------------------------------------------------------------- */
void SaveLoadDatabase::freeBuffer()
void CSaveLoadDatabase::freeBuffer()
{
ASSERT(m_tempBuffer);

View File

@ -22,6 +22,10 @@
#include "sound\sound.h"
#endif
#ifndef __GAME_GAMESLOT_H__
#include "game\gameslot.h"
#endif
/* Std Lib
------- */
@ -36,19 +40,20 @@
struct SaveLoad_SystemDetails
{
char m_screenOffX,m_screenOffY;
unsigned char m_volumes[CSoundMediator::NUM_VOLUMETYPES];
unsigned char m_language;
char m_screenOffX,m_screenOffY;
unsigned char m_volumes[CSoundMediator::NUM_VOLUMETYPES];
unsigned char m_language;
};
struct SaveLoad_DataBuffer
{
unsigned char m_headerId;
SaveLoad_SystemDetails m_systemDetails;
unsigned char m_headerId;
SaveLoad_SystemDetails m_systemDetails;
CGameSlotManager::GameSlot m_gameSlots[CGameSlotManager::NUM_GAME_SLOTS];
};
class SaveLoadDatabase
class CSaveLoadDatabase
{
public:
enum
@ -60,8 +65,8 @@ public:
} STATUS;
SaveLoadDatabase();
~SaveLoadDatabase();
CSaveLoadDatabase();
~CSaveLoadDatabase();
void think();

View File

@ -53,6 +53,10 @@ CPaulScene s_paulScene;
#include "gui\gui.h"
#endif
#ifndef __GAME_GAMESLOT_H__
#include "game\gameslot.h"
#endif
#ifndef __GFX_FADER_H__
#include "gfx\fader.h"
#endif
@ -100,10 +104,9 @@ void InitSystem() // reordered to reduce black screen (hope all is well
SetDispMask(1);
GameState::initialise();
CSoundMediator::initialise();
initGUIStuff();
CGameSlotManager::init();
CBubicleFactory::init();
@ -189,7 +192,7 @@ int main()
CFileIO::GetAllFilePos();
InitSystem();
#ifdef __USER_paul__
#ifdef __USER_paul__NOT
GameState::setNextScene( &FrontEndScene );
#else
GameState::setNextScene( &GameScene );

View File

@ -83,11 +83,11 @@ CFG=spongebob project - Win32 Debug
# Begin Group "source"
# PROP Default_Filter ""
# Begin Group "enemy"
# PROP Default_Filter ""
# End Group
# PROP Default_Filter ""
# Begin Group "fileio"
# PROP Default_Filter ""
@ -205,6 +205,14 @@ SOURCE=..\..\..\source\game\game.h
# End Source File
# Begin Source File
SOURCE=..\..\..\source\game\gameslot.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\source\game\gameslot.h
# End Source File
# Begin Source File
SOURCE=..\..\..\source\game\thing.cpp
# End Source File
# Begin Source File
@ -217,6 +225,14 @@ SOURCE=..\..\..\source\game\thing.h
# PROP Default_Filter ""
# Begin Source File
SOURCE=..\..\..\source\gfx\anim.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\source\gfx\anim.h
# End Source File
# Begin Source File
SOURCE=..\..\..\source\gfx\animtex.cpp
# End Source File
# Begin Source File
@ -265,6 +281,18 @@ SOURCE=..\..\..\source\gfx\prim.h
# End Source File
# Begin Source File
SOURCE=..\..\..\source\gfx\primplus.h
# End Source File
# Begin Source File
SOURCE=..\..\..\source\gfx\skel.cpp
# End Source File
# Begin Source File
SOURCE=..\..\..\source\gfx\skel.h
# End Source File
# Begin Source File
SOURCE=..\..\..\source\gfx\sprbank.cpp
# End Source File
# Begin Source File