Added a dynamic array.

This commit is contained in:
2021-09-05 00:34:29 -07:00
parent c0d13042b4
commit cb447a6033
20 changed files with 403 additions and 25 deletions

View File

@ -29,6 +29,19 @@ bool pokerGameInit(game_t *game) {
pokerGameActionStartAdd(pokerGame);
queueNext(&pokerGame->scene.conversation.actionQueue);
// Testing
dynArrayInit(&dynarr, sizeof(int32_t), 100);
int32_t i, count;
count = 32;
for(i = 0; i < count; i++) {
dynArrayPush(&dynarr, &i);
printf("Count i is %i\n", *((int32_t *)dynArrayGet(&dynarr, i)) );
}
dynArraySploice(&dynarr, 0, 16);
printf("Count 0 is %i\n", *((int32_t *)dynArrayGet(&dynarr, 0)) );
printf("Count 8 is %i\n", *((int32_t *)dynArrayGet(&dynarr, 8)) );
return true;
}
@ -50,7 +63,7 @@ void pokerGameUpdate(game_t *game) {
// Render the UI
vnSceneRenderGui(&pokerGame->scene, &game->engine, &pokerGame->assets.shader);
pokerUiRender(pokerGame);
pokerUiRender(pokerGame, &game->engine);
}
void pokerGameDispose(game_t *game) {

View File

@ -25,7 +25,9 @@ void pokerPlayerUiRender(
// Render chips
sprintf(buffer, "$%i", player->chips);
labelSetText(&ui->label, font, buffer);
labelRender(&ui->label, shader, x, y);
labelRender(&ui->label, shader, x - ui->label.info.width, y);
// Render Face
// Render state
if(player->state & POKER_PLAYER_STATE_OUT) {
@ -40,10 +42,9 @@ void pokerPlayerUiRender(
sprintf(buffer, "Whatever");
}
labelSetText(&ui->label, font, buffer);
labelRender(&ui->label, shader, x, y + scale * FONT_LINE_HEIGHT);
// Render face?
labelRender(&ui->label, shader,
x - ui->label.info.width, y + scale * FONT_LINE_HEIGHT
);
}
void pokerPlayerUiDispose(pokerplayerui_t *ui) {

View File

@ -8,6 +8,9 @@
#pragma once
#include <dawn/dawn.h>
#include "../../../ui/label.h"
#include "../../../ui/image.h"
#include "../../../display/framebuffer.h"
#include "../../../display/camera.h"
void pokerPlayerUiInit(pokerplayerui_t *ui);

View File

@ -15,7 +15,7 @@ void pokerUiInit(pokergame_t *pokerGame) {
}
}
void pokerUiRender(pokergame_t *pokerGame) {
void pokerUiRender(pokergame_t *pokerGame, engine_t *engine) {
uint8_t i;
pokerplayerui_t *ui;
@ -23,9 +23,8 @@ void pokerUiRender(pokergame_t *pokerGame) {
ui = pokerGame->ui.player + i;
pokerPlayerUiRender(ui, pokerGame,
&pokerGame->assets.shader, &pokerGame->assets.font,
i,
i * 150.0f, 0
&pokerGame->assets.shader, &pokerGame->assets.font, i,
engine->render.width, i * 75.0f
);
}
}

View File

@ -21,8 +21,9 @@ void pokerUiInit(pokergame_t *pokerGame);
* Render the Poker Game UI.
*
* @param pokerGame Game to render the UI for.
* @param engine Engine to use for the render.
*/
void pokerUiRender(pokergame_t *pokerGame);
void pokerUiRender(pokergame_t *pokerGame, engine_t *engine);
/**
* Cleanup only the UI elements for a poker game.