view src/ljplay.h @ 3:17286938e22a

change DS alt. rotate key to rotate twice
author paulo@localhost
date Wed, 08 Apr 2009 21:50:13 -0700
parents
children
line source
1 /* Platform hooks for LOCKJAW, an implementation of the Soviet Mind Game
3 Copyright (C) 2006 Damian Yerrick <tepples+lj@spamcop.net>
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.
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.
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
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.
23 */
25 #ifndef LJPLAY_H
26 #define LJPLAY_H
27 #include "lj.h"
28 #include "ljcontrol.h"
30 /**
31 * Plays Lockjaw.
32 * @param v view
33 */
34 void play(LJView *const v[], size_t nPlayers);
36 /*
37 * Platform-native code must implement the following callbacks,
38 * which will be described later:
39 */
40 LJBits readPad(unsigned int player);
41 void updField(const LJView *const v, LJBits rows);
42 void startingAnimation(LJView *v);
43 void blitField(LJView *v);
44 int pauseGame(struct LJPCView *v);
45 void playSoundEffects(LJView *v, LJBits sounds, int countdown);
46 void drawShadow(LJView *v);
47 void drawFallingPiece(LJView *v);
48 void drawScore(LJView *v);
49 int getTime(void);
50 void yieldCPU(void);
51 void ljBeginDraw(LJView *v, int sync);
52 void ljEndDraw(LJView *v);
53 int ljHandleConsoleButtons(LJView *v);
54 void playRedrawScreen(LJView *v);
57 #endif