Files
mathwars/Score.cpp
2017-10-13 08:11:07 +02:00

33 lines
678 B
C++

#include "Score.h"
#include "api.h"
namespace {
int lives = 3;
int score = 0;
}
Score::Score() {
lives = 3;
score = 0;
RegisterMessage("IncreaseScore", this);
RegisterMessage("DecreaseLives", this);
}
void Score::Update() {
char strScore[10];
itoa(score, strScore, 10);
Print(220, 4, strScore, 255, 255, 0);
if (lives > 0) Draw(5, 5, 10, 85, 18, 18);
if (lives > 1) Draw(25, 5, 10, 85, 18, 18);
if (lives > 2) Draw(45, 5, 10, 85, 18, 18);
}
void Score::ProcessMessage(const char* msg) {
if (msg == "IncreaseScore") {
int* params = GetMessageParams();
score += params[0];
} else if (msg == "DecreaseLives") {
lives--;
}
}