/**
 * Copyright (c) 2021 Dominic Masters
 * 
 * This software is released under the MIT License.
 * https://opensource.org/licenses/MIT
 */

#pragma once
#include "../../libs.h"
#include "../../poker/poker.h"
#include "../../vn/conversation/talk.h"
#include "../../vn/vnscene.h"
#include "../../util/array.h"
#include "../../engine/thread.h"
#include "../../scene/loadingscene.h"
#include "pokergame.h"
#include "pokergameassets.h"
#include "pokerui.h"
#include "pokerworld.h"
#include "pokergameaction.h"
#include "actions/start.h"

/**
 * Initializes the game state for the poker game.
 * 
 * @param game Game to initialize.
 * @returns True if successful, otherwise false.
 */
bool pokerGameInit(pokergame_t *game);

/**
 * Updates the poker game instance.
 * @param game Poker game to update for.
 */
void pokerGameUpdate(pokergame_t *game);

/**
 * Disposes a previously initialized poker game instance.
 * @param game Game to dispose.
 */
void pokerGameDispose(pokergame_t *game);