//========= Copyright © 1996-2002, Valve LLC, All rights reserved. ============
//
// Purpose:
//
// $NoKeywords: $
//=============================================================================
#include "cbase.h"
#include "C_SavePlayerStats.h"
#include <FileSystem.h>
#include <cdll_client_int.h>
#include "c_baseplayer.h"
// memdbgon must be the last include file in a .cpp file!!!
#include "tier0/memdbgon.h"
static WoHItemlist itemList;
WoHItemlist *pItemList = &itemList;
WoHItemList::WoHItemList()
{
m_bOneShotGetList = false;
m_fTimeTempSetList = gpGlobals->curtime;
m_nMaxHearts = 3;
m_nHasKokiriSword = 0;
m_nHasDekuShield = 0;
}
void WoHItemList::GetList( void )
{
C_BasePlayer *pPlayer = C_BasePlayer::GetLocalPlayer();
if(!pPlayer)
return;
if (!g_pFullFileSystem->FileExists("savefile.txt"))
Msg("Error loading savestate\n");
if (g_pFullFileSystem->FileExists("savefile.txt"))
{
CUtlBuffer buffer;
g_pFullFileSystem->ReadFile("savefile.txt", "MOD", buffer);
m_nMaxHearts = buffer.GetInt();
m_nHasKokiriSword = buffer.GetInt();
m_nHasDekuShield = buffer.GetInt();
}
}
void WoHItemList::SetList( void )
{
if (!g_pFullFileSystem->FileExists("savefile.txt"))
Msg("Error loading savestate\n");
if (g_pFullFileSystem->FileExists("savefile.txt"))
{
C_BasePlayer *pPlayer = C_BasePlayer::GetLocalPlayer();
if(!pPlayer)
return;
CUtlBuffer buffer;
buffer.PutInt( m_nMaxHearts );
buffer.PutInt( m_nHasKokiriSword );
buffer.PutInt( m_nHasDekuShield );
g_pFullFileSystem->WriteFile("savefile.txt", "MOD", buffer);
}
}
void WoHItemList::ListManager( void )
{
C_BasePlayer *pPlayer = C_BasePlayer::GetLocalPlayer();
if(!pPlayer)
return;
static bool timerReset = true;
if (!m_bOneShotGetList)
{
GetList();
m_fTimeTempSetList = gpGlobals->curtime;
m_bOneShotGetList = true;
}
if (timerReset)
{
m_fTimeTempSetList = gpGlobals->curtime;
timerReset = false;
}
if (gpGlobals->curtime >= m_fTimeTempSetList + 15.0f)
{
SetList();
timerReset = true;
}
}