Skip to content

Commit 4a06226

Browse files
committed
feat: blinking cursor
1 parent 28a038d commit 4a06226

File tree

2 files changed

+20
-2
lines changed

2 files changed

+20
-2
lines changed

source/Main.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,8 @@ int main() {
3030
// VideoMode videoMode = VideoMode(1920, 1080);
3131

3232
// RenderWindow window(videoMode, "Brain Blast!", ContextSettings(0, 0, 8));
33-
// RenderWindow window(videoMode, "Brain Blast!", Style::None, ContextSettings(0, 0, 8));
34-
RenderWindow window(videoMode, "Brain Blast!", Style::Fullscreen, ContextSettings(0, 0, 8));
33+
RenderWindow window(videoMode, "Brain Blast!", Style::None, ContextSettings(0, 0, 8));
34+
// RenderWindow window(videoMode, "Brain Blast!", Style::Fullscreen, ContextSettings(0, 0, 8));
3535

3636
// window.setMouseCursorVisible(false);
3737
window.setVerticalSyncEnabled(true);

source/Scenes/GameOver.cpp

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,13 @@ SceneChange GameOver::run(RenderWindow &window) {
3535
textSetOriginCenter(nameText);
3636
nameText.setPosition(enterYourNameText.getPosition() + Vector2f(0, 100));
3737

38+
RectangleShape nameCursor = RectangleShape(Vector2f(5, nameText.getCharacterSize()));
39+
nameCursor.setFillColor(Color::White);
40+
shapeSetOriginCenter(nameCursor);
41+
nameCursor.setPosition(nameText.getPosition() + Vector2f(nameText.getLocalBounds().width / 2 + 10, 14));
42+
43+
Clock nameCursorTimer;
44+
3845
Text saveText("Save Score", fontBebas);
3946
saveText.setFillColor(Color::Black);
4047
saveText.setCharacterSize(60);
@@ -105,6 +112,16 @@ SceneChange GameOver::run(RenderWindow &window) {
105112
}
106113
nameText.setString(nameString);
107114
textSetOriginCenter(nameText);
115+
nameCursor.setPosition(nameText.getPosition() + Vector2f(nameText.getLocalBounds().width / 2 + 10, 14));
116+
}
117+
}
118+
119+
if (nameCursorTimer.getElapsedTime() > milliseconds(500)) {
120+
nameCursorTimer.restart();
121+
if (nameCursor.getFillColor() == Color::White) {
122+
nameCursor.setFillColor(Color::Transparent);
123+
} else {
124+
nameCursor.setFillColor(Color::White);
108125
}
109126
}
110127

@@ -115,6 +132,7 @@ SceneChange GameOver::run(RenderWindow &window) {
115132
window.draw(exitText);
116133
window.draw(enterYourNameText);
117134
window.draw(nameText);
135+
window.draw(nameCursor);
118136
window.draw(saveButton);
119137
window.draw(saveText);
120138
window.display();

0 commit comments

Comments
 (0)