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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
#include "HudSubScene.h"
#include "HudConfig.h"
#include "../Config.h"
#include <crepe/api/GameObject.h>
#include <crepe/api/Text.h>
using namespace crepe;
using namespace std;
void HudSubScene::create(Scene & scn) {
// Distance
GameObject hud_dis = scn.new_object(HUD_DISTANCE);
crepe::vec2 size_distance
= {DISTANCE_CHAR_WIDTH * DISTANCE_LENGTH, (DISTANCE_CHAR_WIDTH) * 2};
hud_dis.add_component<Text>(
size_distance, FONT,
Text::Data {
.world_space = false,
.text_color = Color::WHITE,
},
TOP_LEFT + FONTOFFSET + vec2 {DISTANCE_LENGTH * DISTANCE_CHAR_WIDTH / 2, 0},
DISTANCE_PLACEHOLDER
);
// Best
GameObject hud_best = scn.new_object(HUD_BEST);
crepe::vec2 size_best = {BEST_CHAR_WIDTH * BEST_LENGTH, (BEST_CHAR_WIDTH) * 2};
hud_best.add_component<Text>(
size_best, FONT,
Text::Data {
.world_space = false,
.text_color = Color::GREY,
},
TOP_LEFT + FONTOFFSET + BEST_OFFSET + vec2 {BEST_LENGTH * BEST_CHAR_WIDTH / 2, 0}, BEST
);
// Coins
GameObject hud_coin = scn.new_object(HUD_COINS);
crepe::vec2 size_coin = {COINS_CHAR_WIDTH * COINS_LENGTH, (COINS_CHAR_WIDTH) * 2};
hud_coin.add_component<Text>(
size_coin, FONT,
Text::Data {
.world_space = false,
.text_color = Color::YELLOW,
},
TOP_LEFT + FONTOFFSET + COINS_OFFSET + vec2 {COINS_LENGTH * COINS_CHAR_WIDTH / 2, 0},
COINS
);
// Fps
GameObject hud_fps = scn.new_object(HUD_FPS);
crepe::vec2 size_fps = {FPS_CHAR_WIDTH * FPS_LENGTH, (FPS_CHAR_WIDTH) * 2};
hud_fps
.add_component<Text>(
size_fps, FONT,
Text::Data {
.world_space = false,
.text_color = Color::GREEN,
},
TOP_LEFT + FONTOFFSET + FPS_OFFSET + vec2 {FPS_LENGTH * FPS_CHAR_WIDTH / 2, 0}, FPS
)
.active
= false;
}
|