From efdd46f97a897be9ef16f358a903b2f610ace781 Mon Sep 17 00:00:00 2001 From: Andrew Pamment Date: Sun, 27 May 2018 13:07:07 +1000 Subject: [PATCH] add PAUSE code to ansis --- src/bbs.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/bbs.c b/src/bbs.c index 83d0ec0..c6affc6 100644 --- a/src/bbs.c +++ b/src/bbs.c @@ -349,8 +349,11 @@ void s_displayansi_pause(char *file, int pause) { char ch; int lines = 0; char lastch = 0; + char buffer[9]; + int len; fptr = fopen(file, "r"); + if (!fptr) { return; } @@ -358,6 +361,22 @@ void s_displayansi_pause(char *file, int pause) { while (!feof(fptr) && c != 0x1a) { if (c == '\n' && lastch != '\r') { s_putchar('\r'); + } else if (c == '@') { + memset(buffer, 0, 10); + len = fread(buffer, 1, 8, fptr); + + if (len != 8 || strcmp(buffer, "@PAUSE@@") != 0) { + s_putchar('@'); + s_putstring(buffer); + c = fgetc(fptr); + continue; + } else { + s_printf(get_string(185)); + ch = s_getchar(); + s_printf("\r\n"); + c = fgetc(fptr); + continue; + } } s_putchar(c);