aboutsummaryrefslogtreecommitdiff
path: root/game/menus/IButtonScript.cpp
blob: 34efbd0864175b199fe9d8a6baad46ae782bc59b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include "IButtonScript.h"

#include "system/InputSystem.h"

#include <crepe/api/Sprite.h>
#include <crepe/types.h>

using namespace crepe;
using namespace std;

void IButtonScript::init() {
	this->subscribe<ButtonExitEvent>([this](const ButtonExitEvent & e) {
		return this->on_button_exit(e);
	});
	this->subscribe<ButtonEnterEvent>([this](const ButtonEnterEvent & e) {
		return this->on_button_enter(e);
	});
}
bool IButtonScript::on_button_exit(const ButtonExitEvent & e) {
	RefVector<Sprite> sprites = this->get_components<Sprite>();
	for (Sprite & sprite : sprites) {
		sprite.data.color = Color {255, 255, 255, 255};
	}
	return false;
}
bool IButtonScript::on_button_enter(const ButtonEnterEvent & e) {
	RefVector<Sprite> sprites = this->get_components<Sprite>();
	for (Sprite & sprite : sprites) {
		sprite.data.color = Color {200, 200, 200, 255};
	}
	return false;
}