From f2bfe89481217625f74224289947f7bcd839c55f Mon Sep 17 00:00:00 2001 From: Thomas White Date: Fri, 1 Mar 2019 23:28:27 +0100 Subject: Debug narrative rendering machinery --- libstorycode/narrative.c | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'libstorycode/narrative.c') diff --git a/libstorycode/narrative.c b/libstorycode/narrative.c index 85f5410..81c69b1 100644 --- a/libstorycode/narrative.c +++ b/libstorycode/narrative.c @@ -48,6 +48,16 @@ void narrative_free(Narrative *n) } +static struct narrative_item *add_item(Narrative *n) +{ + struct narrative_item *new_items; + new_items = realloc(n->items, (n->n_items+1)*sizeof(struct narrative_item)); + if ( new_items == NULL ) return NULL; + n->items = new_items; + return &n->items[n->n_items++]; +} + + void narrative_add_prestitle(Narrative *n, const char *text) { } @@ -58,8 +68,17 @@ void narrative_add_bp(Narrative *n, const char *text) } -void narrative_add_text(Narrative *n, const char *text) +void narrative_add_text(Narrative *n, char *text) { + struct narrative_item *item; + + item = add_item(n); + if ( item == NULL ) return; + + item->type = NARRATIVE_ITEM_TEXT; + item->text = text; + item->align = ALIGN_LEFT; + item->layout = NULL; } -- cgit v1.2.3