Added tick numbers.

This commit is contained in:
Barra Ó Catháin 2023-07-25 23:32:11 +01:00
parent 2d4028f140
commit fd710e2cb6
3 changed files with 18 additions and 0 deletions

View File

@ -159,21 +159,25 @@ void * graphicsThreadHandler(void * parameters)
{ {
case SDLK_LEFT: case SDLK_LEFT:
{ {
message->tickNumber = state->tickNumber;
message->left = true; message->left = true;
break; break;
} }
case SDLK_RIGHT: case SDLK_RIGHT:
{ {
message->tickNumber = state->tickNumber;
message->right = true; message->right = true;
break; break;
} }
case SDLK_UP: case SDLK_UP:
{ {
message->tickNumber = state->tickNumber;
message->up = true; message->up = true;
break; break;
} }
case SDLK_DOWN: case SDLK_DOWN:
{ {
message->tickNumber = state->tickNumber;
message->down = true; message->down = true;
break; break;
} }
@ -190,21 +194,25 @@ void * graphicsThreadHandler(void * parameters)
{ {
case SDLK_LEFT: case SDLK_LEFT:
{ {
message->tickNumber = state->tickNumber;
message->left = false; message->left = false;
break; break;
} }
case SDLK_RIGHT: case SDLK_RIGHT:
{ {
message->tickNumber = state->tickNumber;
message->right = false; message->right = false;
break; break;
} }
case SDLK_UP: case SDLK_UP:
{ {
message->tickNumber = state->tickNumber;
message->up = false; message->up = false;
break; break;
} }
case SDLK_DOWN: case SDLK_DOWN:
{ {
message->tickNumber = state->tickNumber;
message->down = false; message->down = false;
break; break;
} }

View File

@ -14,6 +14,14 @@ void updateInput(struct gameState * state, struct clientInput * message)
void doGameTick(struct gameState * state) void doGameTick(struct gameState * state)
{ {
if ((state->tickNumber % UINT64_MAX) == 0)
{
state->tickNumber = 0;
}
else
{
state->tickNumber++;
}
for (int index = 0; index < 16; index++) for (int index = 0; index < 16; index++)
{ {
// Calculate acceleration: // Calculate acceleration:

View File

@ -13,11 +13,13 @@ struct clientMovement
struct clientInput struct clientInput
{ {
int clientNumber; int clientNumber;
uint64_t tickNumber;
bool left, right, up, down; bool left, right, up, down;
}; };
struct gameState struct gameState
{ {
uint64_t tickNumber;
struct timeval timestamp; struct timeval timestamp;
struct clientMovement clients[16]; struct clientMovement clients[16];
}; };