annotate src/scenario.h @ 0:c84446dfb3f5

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