summaryrefslogtreecommitdiff
path: root/apps/plugins/xrick/screens.h
diff options
context:
space:
mode:
authorSebastian Leonhardt <sebastian.leonhardt@web.de>2016-01-08 01:05:36 +0100
committerSolomon Peachy <pizza@shaftnet.org>2024-06-30 17:24:16 -0400
commit102c3742487dba76ec72d5f56a2c3041344b2d68 (patch)
tree4931ad34d2cc0bac56d9984b9ead355d012ad63a /apps/plugins/xrick/screens.h
parent6f1e67e5e318ba2fd0f5ec1892c7b6633ec6521c (diff)
downloadrockbox-102c3742487dba76ec72d5f56a2c3041344b2d68.tar.gz
rockbox-102c3742487dba76ec72d5f56a2c3041344b2d68.zip
added xrick game
original xrick code by 'BigOrno' at: http://www.bigorno.net/xrick/ Rockbox port, plus bugfixes at: https://github.com/pierluigi-vicinanza/xrick Further changes: * Additonal fixes from g#3026 * Port to modern plugin API * Add Pluginlib keymap fallback * Support all >1bpp screens * Fix build warnings in miniz * Better error message when resources are missing Change-Id: Id83928bc2539901b0221692f65cbca41389c58e7
Diffstat (limited to 'apps/plugins/xrick/screens.h')
-rw-r--r--apps/plugins/xrick/screens.h74
1 files changed, 74 insertions, 0 deletions
diff --git a/apps/plugins/xrick/screens.h b/apps/plugins/xrick/screens.h
new file mode 100644
index 0000000000..60564a99d2
--- /dev/null
+++ b/apps/plugins/xrick/screens.h
@@ -0,0 +1,74 @@
1/*
2 * xrick/screens.h
3 *
4 * Copyright (C) 1998-2002 BigOrno (bigorno@bigorno.net).
5 * Copyright (C) 2008-2014 Pierluigi Vicinanza.
6 * All rights reserved.
7 *
8 * The use and distribution terms for this software are contained in the file
9 * named README, which can be found in the root of this distribution. By
10 * using this software in any fashion, you are agreeing to be bound by the
11 * terms of this license.
12 *
13 * You must not remove this notice, or any other, from this software.
14 */
15
16#ifndef _SCREENS_H
17#define _SCREENS_H
18
19#include "xrick/system/basic_types.h"
20#include "xrick/config.h"
21
22#include <stddef.h> /* size_t */
23
24#define SCREEN_TIMEOUT 4000
25#define SCREEN_RUNNING 0
26#define SCREEN_DONE 1
27#define SCREEN_EXIT 2
28
29typedef struct {
30 U16 count; /* number of loops */
31 U16 dx, dy; /* sprite x and y deltas */
32 U16 base; /* base for sprite numbers table */
33} screen_imapsteps_t; /* description of one step */
34
35enum { HISCORE_NAME_SIZE = 10 };
36typedef struct {
37 U32 score;
38 U8 name[HISCORE_NAME_SIZE];
39} hiscore_t;
40
41extern size_t screen_nbr_imapsl;
42extern U8 *screen_imapsl; /* sprite lists */
43
44extern size_t screen_nbr_imapstesps;
45extern screen_imapsteps_t *screen_imapsteps; /* map intro steps */
46
47extern size_t screen_nbr_imapsofs;
48extern U8 *screen_imapsofs; /* first step for each map */
49
50extern size_t screen_nbr_imaptext;
51extern U8 **screen_imaptext; /* map intro texts */
52
53extern size_t screen_nbr_hiscores;
54extern hiscore_t *screen_highScores; /* highest scores (hall of fame) */
55
56#ifdef GFXPC
57extern U8 *screen_imainhoft; /* hall of fame title */
58extern U8 *screen_imainrdt; /* rick dangerous title */
59extern U8 *screen_imaincdc; /* core design copyright text */
60extern U8 *screen_congrats; /* congratulations */
61#endif /* GFXPC */
62extern U8 *screen_gameovertxt; /* game over */
63extern U8 *screen_pausedtxt; /* paused */
64
65extern U8 screen_xrick(void); /* splash */
66extern U8 screen_introMain(void); /* main intro */
67extern U8 screen_introMap(void); /* map intro */
68extern U8 screen_gameover(void); /* gameover */
69extern U8 screen_getname(void); /* enter you name */
70extern void screen_pause(bool); /* pause indicator */
71
72#endif /* ndef _SCREENS_H */
73
74/* eof */