Reflex-game-with-Qt-and-Postgresql icon indicating copy to clipboard operation
Reflex-game-with-Qt-and-Postgresql copied to clipboard

Reflex game with Qt and Postgresql.

Reflex game with Qt and PostgreSQL

This game has been written to measure your reaction time, that is, your reflexes. The game was written visually with the Qt (c ++) module, score histories and users data are kept in the Postgresql database..

The gameplay logic of the game : To summarize the game in general, you should not click on the buttons with bombs, you will lose points if you click, you can click on the pizza buttons and you will earn points. Pizza buttons will appear gradually when the game starts, it will start to accelerate towards the end of the game and your reaction time will be measured. If you want, you can stop the game yourself or wait for the game to end, at the end of all games, you can see how much you've improved yourself by looking at your leaderboard.

Postgresql infrastructure : The users in the game are kept in the table named "users". There are 3 columns in this table, the first one keeps the user's ID, the second one keeps the users 'name and the third one keeps the users' passwords encrypted with SHA256.

The scores of the players are kept in the table named "score", the ID of each player is associated with the row here, the highest score of the player and the other 6 highest scores are also kept in this table.

CREATE TABLE IF NOT EXISTS users (
	id SERIAL PRIMARY KEY, 
	username VARCHAR(100), 
	password VARCHAR(100)
);
CREATE TABLE IF NOT EXISTS score (
	id SERIAL PRIMARY KEY, 
	highest INT, 
	score0 INT, 
	score1 INT, 
	score2 INT, 
	score3 INT, 
	score4 INT, 
	score5 INT
);

Requirements

Qt 5.9

Postgresql 12.6

All table operations in the database, etc. It will be created by itself, your only task is to provide the connection between the database (local and server) and Qt.

Screenshot_2021-03-21_16-46-24

Screenshot_2021-03-21_17-35-26

In-game visuals and gameplay video

Video Link
Images

Untitled

Untitled0

Untitled1

Untitled2