Files
itgmania212121/stepmania/src/LifeMeter.h
T
Glenn Maynard 1b33b46e29 add GetLife
2003-10-23 06:15:58 +00:00

68 lines
2.1 KiB
C++

#ifndef LIFEMETER_H
#define LIFEMETER_H
/*
-----------------------------------------------------------------------------
Class: LifeMeter
Desc: A graphic displayed in the LifeMeterBar during Dancing.
Copyright (c) 2001-2002 by the person(s) listed below. All rights reserved.
Chris Danford
-----------------------------------------------------------------------------
*/
#include "PlayerNumber.h"
#include "GameConstantsAndTypes.h"
#include "ActorFrame.h"
class LifeMeter : public ActorFrame
{
public:
LifeMeter() {};
virtual ~LifeMeter() {};
virtual void Load( PlayerNumber pn ) { m_PlayerNumber = pn; }
virtual void OnSongEnded() {};
/* Change life after receiving a tap note grade. This *is* called for
* the head of hold notes. */
virtual void ChangeLife( TapNoteScore score ) = 0;
/* Change life after receiving a hold note grade. tscore is the score
* received for the initial tap note. */
virtual void ChangeLife( HoldNoteScore score, TapNoteScore tscore ) = 0;
virtual void OnDancePointsChange() = 0; // look in GAMESTATE and update the display
virtual bool IsInDanger() = 0;
virtual bool IsHot() = 0;
virtual bool IsFailing() = 0;
virtual float GetLife() const { return 0; } // for cosmetic use only
virtual void UpdateNonstopLifebar(int cleared, int total, int ProgressiveLifebarDifficulty) = 0;
protected:
PlayerNumber m_PlayerNumber;
};
class CombinedLifeMeter : public ActorFrame
{
public:
CombinedLifeMeter() {};
virtual ~CombinedLifeMeter() {};
virtual void OnSongEnded() {};
/* Change life after receiving a tap note grade. This *is* called for
* the head of hold notes. */
virtual void ChangeLife( PlayerNumber pn, TapNoteScore score ) = 0;
/* Change life after receiving a hold note grade. tscore is the score
* received for the initial tap note. */
virtual void ChangeLife( PlayerNumber pn, HoldNoteScore score, TapNoteScore tscore ) = 0;
virtual void OnDancePointsChange( PlayerNumber pn ) = 0; // look in GAMESTATE and update the display
virtual bool IsInDanger( PlayerNumber pn ) = 0;
virtual bool IsHot( PlayerNumber pn ) = 0;
virtual bool IsFailing( PlayerNumber pn ) = 0;
virtual void OnTaunt() {};
};
#endif