comparison src/scenario.h @ 0:c84446dfb3f5

initial add
author paulo@localhost
date Fri, 13 Mar 2009 00:39:12 -0700
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:b02c1d501fd1
1 /* PC preset code for LOCKJAW, an implementation of the Soviet Mind Game
2
3 Copyright (C) 2008 Damian Yerrick <tepples+lj@spamcop.net>
4
5 This work is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
19 Original game concept and design by Alexey Pajitnov.
20 The Software is not sponsored or endorsed by Alexey Pajitnov, Elorg,
21 or The Tetris Company LLC.
22
23 */
24
25 #ifndef PCPRESET_H
26 #define PCPRESET_H
27 #include <sys/types.h>
28 #include "ljcontrol.h"
29
30 typedef struct PresetRule {
31 unsigned char line, value;
32 } PresetRule;
33
34 #define PRESET_NAME_LEN 32
35 #define PRESET_MAX_RULES 32
36
37 typedef struct Preset {
38 char name[PRESET_NAME_LEN];
39 PresetRule rules[PRESET_MAX_RULES];
40 } Preset;
41
42 /**
43 * Resets all options in the preset buffer to inherit.
44 */
45 void presetStart(void);
46
47 /**
48 * Adds a preset to the preset buffer.
49 */
50 void presetAdd(size_t which);
51
52 /**
53 * Unpacks the preset buffer onto a view.
54 */
55 void presetFinish(struct LJView *v);
56
57 extern const Preset *loadedPresets;
58 extern size_t nLoadedPresets;
59
60 #endif