@@ -38,12 +38,13 @@ static void render_callback(Canvas* canvas, void* ctx) {
38
38
DolphinStats * stats = ctx ;
39
39
40
40
char level_str [20 ];
41
+ char xp_str [12 ];
41
42
char mood_str [32 ];
42
43
uint8_t mood = 0 ;
43
44
44
45
if (stats -> butthurt <= 4 ) {
45
46
mood = 0 ;
46
- snprintf (mood_str , 20 , "Mood: Squachy!" );
47
+ snprintf (mood_str , 20 , "Mood: Squachy !" );
47
48
} else if (stats -> butthurt <= 9 ) {
48
49
mood = 1 ;
49
50
snprintf (mood_str , 20 , "Mood: Meh" );
@@ -53,6 +54,7 @@ static void render_callback(Canvas* canvas, void* ctx) {
53
54
}
54
55
55
56
uint32_t xp_progress = 0 ;
57
+ uint32_t xp_above_last_levelup = dolphin_state_xp_to_levelup (stats -> icounter );
56
58
uint32_t xp_to_levelup = dolphin_state_xp_to_levelup (stats -> icounter );
57
59
uint32_t xp_for_current_level =
58
60
xp_to_levelup + dolphin_state_xp_above_last_levelup (stats -> icounter );
@@ -67,21 +69,28 @@ static void render_callback(Canvas* canvas, void* ctx) {
67
69
68
70
// portrait
69
71
furi_assert ((stats -> level > 0 ) && (stats -> level <= 3 ));
70
- canvas_draw_icon (canvas , 9 , 5 , portraits [mood ][stats -> level - 1 ]);
71
- canvas_draw_line (canvas , 58 , 16 , 123 , 16 );
72
- canvas_draw_line (canvas , 58 , 30 , 123 , 30 );
73
- canvas_draw_line (canvas , 58 , 44 , 123 , 44 );
72
+ canvas_draw_icon (canvas , 11 , 2 , portraits [mood ][stats -> level - 1 ]);
74
73
75
74
const char * my_name = furi_hal_version_get_name_ptr ();
75
+ // LEVEL DISPLAY
76
76
snprintf (level_str , 20 , "Level: %hu" , stats -> level );
77
- canvas_draw_str (canvas , 58 , 12 , my_name ? my_name : "Unknown" );
78
- canvas_draw_str (canvas , 58 , 26 , mood_str );
79
- canvas_draw_str (canvas , 58 , 40 , level_str );
80
-
77
+ // XP / XP DISPLAY
78
+ snprintf (xp_str , 12 , "%lu/%lu" , xp_above_last_levelup , xp_for_current_level );
79
+ canvas_set_font (canvas , FontSecondary );
80
+ // POSITION OF NAME (58,12 ofw) -> TO CUSTOM NAME : change [my_name ? my_name] to [my_name ? "WHATYOUWANT"]
81
+ canvas_draw_str (canvas , 59 , 10 , my_name ? my_name : "Unknown" );
82
+ // POSITION OF MOOD (58,26 ofw):
83
+ canvas_draw_str (canvas , 59 , 22 , mood_str );
84
+ canvas_set_color (canvas , ColorBlack );
85
+ // POSITION OF LEVEL (58,40 ofw):
86
+ canvas_draw_str (canvas , 59 , 34 , level_str );
87
+ // POSITION OF XP / XP
88
+ canvas_draw_str (canvas , 59 , 43 , xp_str );
89
+ // POSITION AND SIZE OF XP BAR (123... 47... +1, 6 [bar thickness] ofw)
90
+
81
91
canvas_set_color (canvas , ColorWhite );
82
- canvas_draw_box (canvas , 123 - xp_progress , 47 , xp_progress + 1 , 6 );
92
+ canvas_draw_box (canvas , 123 - xp_progress , 45 , xp_progress + 1 , 5 );
83
93
canvas_set_color (canvas , ColorBlack );
84
- canvas_draw_line (canvas , 123 , 47 , 123 , 52 );
85
94
}
86
95
87
96
int32_t passport_app (void * p ) {
0 commit comments