37 lines
985 B
C
37 lines
985 B
C
/**
|
|
* Copyright (c) 2021 Dominic Masters
|
|
*
|
|
* This software is released under the MIT License.
|
|
* https://opensource.org/licenses/MIT
|
|
*/
|
|
|
|
#pragma once
|
|
#include "../libs.h"
|
|
#include "../display/animation/queue.h"
|
|
#include "vncharacter.h"
|
|
#include "vntextbox.h"
|
|
|
|
typedef struct _vnconversation_t vnconversation_t;
|
|
|
|
typedef struct {
|
|
/** Pointer to the original conversation */
|
|
vnconversation_t *conversation;
|
|
|
|
/** Storage for pointer to text for text conversation elements */
|
|
char *text;
|
|
|
|
/** Character this conversation piece belongs to */
|
|
vncharacter_t *character;
|
|
} vnconversationitemdata_t;
|
|
|
|
/** Representation of a conversation, laid out similarly to a timeline. */
|
|
typedef struct _vnconversation_t {
|
|
/** Internal Textbox for text elements */
|
|
vntextbox_t textbox;
|
|
|
|
/** Data Storage for items' data */
|
|
vnconversationitemdata_t itemData[ANIMATION_QUEUE_ITEM_MAX];
|
|
|
|
/** Internal Queue for queueing the conversation */
|
|
queue_t actionQueue;
|
|
} vnconversation_t; |