diff options
author | Alexander Levin <al.le@rockbox.org> | 2009-04-03 20:35:24 +0000 |
---|---|---|
committer | Alexander Levin <al.le@rockbox.org> | 2009-04-03 20:35:24 +0000 |
commit | ed0ac675b04373a1d46426b2636c5ac584e471e7 (patch) | |
tree | b3a96f35bdfc28dd34a5160bb6135f77a4bb7438 /apps/plugins/rocklife.c | |
parent | b549ce9193b6baead786d1a7b9bec9b9ac70ccc2 (diff) | |
download | rockbox-ed0ac675b04373a1d46426b2636c5ac584e471e7.tar.gz rockbox-ed0ac675b04373a1d46426b2636c5ac584e471e7.zip |
Rocklife: allow the cells file to have comment (everything on a line starting with a '!' is a comment). FS#10081, thanks to Justin Hannigan.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20611 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/rocklife.c')
-rw-r--r-- | apps/plugins/rocklife.c | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/apps/plugins/rocklife.c b/apps/plugins/rocklife.c index 2905ab53e2..d67fc470a9 100644 --- a/apps/plugins/rocklife.c +++ b/apps/plugins/rocklife.c | |||
@@ -136,10 +136,12 @@ static bool load_cellfile(const char *file, char *pgrid){ | |||
136 | 136 | ||
137 | char c; | 137 | char c; |
138 | int nc, x, y, xmid, ymid; | 138 | int nc, x, y, xmid, ymid; |
139 | bool comment; | ||
139 | x=0; | 140 | x=0; |
140 | y=0; | 141 | y=0; |
141 | xmid = (GRID_W>>1) - 2; | 142 | xmid = (GRID_W>>1) - 2; |
142 | ymid = (GRID_H>>1) - 2; | 143 | ymid = (GRID_H>>1) - 2; |
144 | comment = false; | ||
143 | 145 | ||
144 | while (true) { | 146 | while (true) { |
145 | nc = read(fd, &c, 1); | 147 | nc = read(fd, &c, 1); |
@@ -147,17 +149,23 @@ static bool load_cellfile(const char *file, char *pgrid){ | |||
147 | break; | 149 | break; |
148 | 150 | ||
149 | switch(c) { | 151 | switch(c) { |
152 | case '!': | ||
153 | comment = true; | ||
150 | case '.': | 154 | case '.': |
151 | x++; | 155 | if (!comment) |
156 | x++; | ||
152 | break; | 157 | break; |
153 | case 'O': | 158 | case 'O': |
154 | if (is_valid_cell(xmid + x, ymid + y)) | 159 | if (!comment) { |
155 | set_cell(xmid + x, ymid + y, pgrid); | 160 | if (is_valid_cell(xmid + x, ymid + y)) |
156 | x++; | 161 | set_cell(xmid + x, ymid + y, pgrid); |
162 | x++; | ||
163 | } | ||
157 | break; | 164 | break; |
158 | case '\n': | 165 | case '\n': |
159 | y++; | 166 | y++; |
160 | x=0; | 167 | x=0; |
168 | comment = false; | ||
161 | break; | 169 | break; |
162 | default: | 170 | default: |
163 | break; | 171 | break; |