summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/games/sfcave/helpwindow.cpp77
-rw-r--r--noncore/games/sfcave/helpwindow.h4
-rw-r--r--noncore/games/sfcave/sfcave.cpp7
3 files changed, 42 insertions, 46 deletions
diff --git a/noncore/games/sfcave/helpwindow.cpp b/noncore/games/sfcave/helpwindow.cpp
index 8a5d034..bd6035a 100644
--- a/noncore/games/sfcave/helpwindow.cpp
+++ b/noncore/games/sfcave/helpwindow.cpp
@@ -2,78 +2,75 @@
2 helpwindow.cpp - description 2 helpwindow.cpp - description
3 ------------------- 3 -------------------
4 begin : Sun Sep 8 2002 4 begin : Sun Sep 8 2002
5 copyright : (C) 2002 by Andy Qua 5 copyright : (C) 2002 by Andy Qua
6 email : andy.qua@blueyonder.co.uk 6 email : andy.qua@blueyonder.co.uk
7 ***************************************************************************/ 7 ***************************************************************************/
8 8
9/*************************************************************************** 9/***************************************************************************
10 * * 10 * *
11 * This program is free software; you can redistribute it and/or modify * 11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by * 12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or * 13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. * 14 * (at your option) any later version. *
15 * * 15 * *
16 ***************************************************************************/ 16 ***************************************************************************/
17 17
18#include <qlayout.h> 18#include <qlayout.h>
19#include <qtextview.h> 19#include <qtextview.h>
20 20
21#include <qpe/qpeapplication.h> 21#include <qpe/qpeapplication.h>
22 22
23#include "helpwindow.h" 23#include "helpwindow.h"
24 24
25 25
26#define HELP_TEXT \ 26static QString HELP_TEXT() {
27"<qt><h1>SFCave Help</h1><p> " \ 27return QObject::tr("<qt><h1>SFCave Help</h1><p> "
28"SFCave is a flying game for the Zaurus.<br><br> " \ 28 "SFCave is a flying game for the Zaurus.<br><br> "
29"The aim is to stay alive for as long as possible and get the highest score " \ 29 "The aim is to stay alive for as long as possible and get the highest score "
30"you can.<br><br>" \ 30 "you can.<br><br>"
31"There are three game types currently - SFCave, Gates, and Fly.<br>" \ 31 "There are three game types currently - SFCave, Gates, and Fly.<br>"
32"<b>SFCave</b> is a remake of the classic SFCave game - fly through the " \ 32 "<b>SFCave</b> is a remake of the classic SFCave game - fly through the "
33"cavern avoiding all the blocks that just happen to be hanging in " \ 33 "cavern avoiding all the blocks that just happen to be hanging in "
34"midair<br><br>" \ 34 "midair<br><br>"
35"<b>Gates</b> is similar to SFCave but instead you must fly through the " \ 35 "<b>Gates</b> is similar to SFCave but instead you must fly through the "
36"without crashing.<br><br>" \ 36 "without crashing.<br><br>"
37"<b>Fly</b> is somewhat different to SFCave and above. Instead, you have " \ 37 "<b>Fly</b> is somewhat different to SFCave and above. Instead, you have "
38"are flying in the open air above a scrolling landscape, and the aim is to " \ 38 "are flying in the open air above a scrolling landscape, and the aim is to "
39"hug the ground - the closer to the land you fly the more points " \ 39 "hug the ground - the closer to the land you fly the more points "
40"scored.<br><br><br>" \ 40 "scored.<br><br><br>"
41"Basic instruction - Press <b>Up</B> or <b>Down</b> on the circle pad to " \ 41 "Basic instruction - Press <b>Up</B> or <b>Down</b> on the circle pad to "
42"start a new game, press the middle of the pad to apply thrust (makes you " \ 42 "start a new game, press the middle of the pad to apply thrust (makes you "
43"go up), and release the pad to remove thrust and drop down.<br><br>" \ 43 "go up), and release the pad to remove thrust and drop down.<br><br>"
44"Also, if playing the Fly game, you can press z to toggle the display " \ 44 "Also, if playing the Fly game, you can press z to toggle the display "
45"of the scoring zones. This will display 4 red lines at varying heights " \ 45 "of the scoring zones. This will display 4 red lines at varying heights "
46"above the landscape - if your ship falls into this zone, point are scored. " \ 46 "above the landscape - if your ship falls into this zone, point are scored. "
47"The closer to the landscape you get the more points you get.<br><br>" \ 47 "The closer to the landscape you get the more points you get.<br><br>"
48"In addition, SFCave has replays - save and load too so you can show off to all " \ 48 "In addition, SFCave has replays - save and load too so you can show off to all "
49"your friends (or vice versa). Currently, this is in its infancy but will improve.<br>" \ 49 "your friends (or vice versa). Currently, this is in its infancy but will improve.<br>"
50"To use, once you have crashed, press 'r' to replay the last game.<br>" \ 50 "To use, once you have crashed, press 'r' to replay the last game.<br>"
51"To save the replay press 's'.<br>" \ 51 "To save the replay press 's'.<br>"
52"To load a saved replay press 'l' (after you've crashed at least once).<br><br>" \ 52 "To load a saved replay press 'l' (after you've crashed at least once).<br><br>"
53"Replays are currently saved to your home directory in a file called sfcave.replay." \ 53 "Replays are currently saved to your home directory in a file called sfcave.replay."
54"This file can be copied and given to others as long as it it put in their home directory.<br><br>" \ 54 "This file can be copied and given to others as long as it it put in their home directory.<br><br>"
55"Have lots of fun.<br>" \ 55 "Have lots of fun.<br>"
56"Andy" \ 56 "Andy"
57"</p></qt>" 57 "</p></qt>");
58}
58 59
59 60
60HelpWindow::HelpWindow( QWidget *parent, const char *name, bool modal, WFlags flags ) 61HelpWindow::HelpWindow( QWidget *parent, const char *name)
61 : QDialog( parent, name, modal, flags ) 62 : QWidget( parent, name, WDestructiveClose )
62{ 63{
63// resize( 230, 280 ); 64 setCaption( tr("Help for SFCave") );
64
65 setCaption( "Help for SFCave" );
66 65
67 QVBoxLayout *layout = new QVBoxLayout( this ); 66 QVBoxLayout *layout = new QVBoxLayout( this );
68 QString text = HELP_TEXT;; 67 QString text = HELP_TEXT();;
69 QTextView *view = new QTextView( text, 0, this, "view" ); 68 QTextView *view = new QTextView( text, 0, this, "view" );
70 layout->insertSpacing( -1, 5 ); 69 layout->insertSpacing( -1, 5 );
71 layout->insertWidget( -1, view ); 70 layout->insertWidget( -1, view );
72 layout->insertSpacing( -1, 5 ); 71 layout->insertSpacing( -1, 5 );
73
74 QPEApplication::showDialog( this );
75} 72}
76 73
77HelpWindow::~HelpWindow() 74HelpWindow::~HelpWindow()
78{ 75{
79} 76}
diff --git a/noncore/games/sfcave/helpwindow.h b/noncore/games/sfcave/helpwindow.h
index edc1b6e..0aaba7e 100644
--- a/noncore/games/sfcave/helpwindow.h
+++ b/noncore/games/sfcave/helpwindow.h
@@ -3,32 +3,32 @@
3 ------------------- 3 -------------------
4 begin : Sun Sep 8 2002 4 begin : Sun Sep 8 2002
5 copyright : (C) 2002 by Andy Qua 5 copyright : (C) 2002 by Andy Qua
6 email : andy.qua@blueyonder.co.uk 6 email : andy.qua@blueyonder.co.uk
7 ***************************************************************************/ 7 ***************************************************************************/
8 8
9/*************************************************************************** 9/***************************************************************************
10 * * 10 * *
11 * This program is free software; you can redistribute it and/or modify * 11 * This program is free software; you can redistribute it and/or modify *
12 * it under the terms of the GNU General Public License as published by * 12 * it under the terms of the GNU General Public License as published by *
13 * the Free Software Foundation; either version 2 of the License, or * 13 * the Free Software Foundation; either version 2 of the License, or *
14 * (at your option) any later version. * 14 * (at your option) any later version. *
15 * * 15 * *
16 ***************************************************************************/ 16 ***************************************************************************/
17 17
18#ifndef HELPWINDOW_H 18#ifndef HELPWINDOW_H
19#define HELPWINDOW_H 19#define HELPWINDOW_H
20 20
21#include <qdialog.h> 21#include <qdialog.h>
22 22
23/** 23/**
24 *@author Andy Qua 24 *@author Andy Qua
25 */ 25 */
26 26
27class HelpWindow : public QDialog 27class HelpWindow : public QWidget
28{ 28{
29public: 29public:
30 HelpWindow( QWidget *parent = 0, const char *name = 0, bool modal = true, WFlags flags = 0 ); 30 HelpWindow( QWidget *parent = 0, const char *name = 0);
31 ~HelpWindow(); 31 ~HelpWindow();
32}; 32};
33 33
34#endif 34#endif
diff --git a/noncore/games/sfcave/sfcave.cpp b/noncore/games/sfcave/sfcave.cpp
index d5aa38a..a6c92a0 100644
--- a/noncore/games/sfcave/sfcave.cpp
+++ b/noncore/games/sfcave/sfcave.cpp
@@ -1,34 +1,34 @@
1#include <stdio.h> 1#include <stdio.h>
2#include <stdlib.h> 2#include <stdlib.h>
3#include <math.h> 3#include <math.h>
4#include <time.h> 4#include <time.h>
5 5
6#include <opie2/oapplicationfactory.h> 6#include <opie2/oapplicationfactory.h>
7#include <qpe/qpeapplication.h>
7#include <qpe/config.h> 8#include <qpe/config.h>
8#include <qpe/global.h> 9#include <qpe/global.h>
9 10
10#include <qapplication.h>
11#include <qdir.h> 11#include <qdir.h>
12 12
13#include "helpwindow.h" 13#include "helpwindow.h"
14#include "sfcave.h" 14#include "sfcave.h"
15 15
16#define CAPTION "SFCave 1.13 by AndyQ" 16#define CAPTION "SFCave 1.13 by AndyQ"
17 17
18#define UP_THRUST 0.6 18#define UP_THRUST 0.6
19#define NO_THRUST 0.8 19#define NO_THRUST 0.8
20#define MAX_DOWN_THRUST 4.0 20#define MAX_DOWN_THRUST 4.0
21#define MAX_UP_THRUST -3.5 21#define MAX_UP_THRUST -3.5
22 22
23// States 23// States
24#define STATE_BOSS 0 24#define STATE_BOSS 0
25#define STATE_RUNNING 1 25#define STATE_RUNNING 1
26#define STATE_CRASHING 2 26#define STATE_CRASHING 2
27#define STATE_CRASHED 3 27#define STATE_CRASHED 3
28#define STATE_NEWGAME 4 28#define STATE_NEWGAME 4
29#define STATE_MENU 5 29#define STATE_MENU 5
30#define STATE_REPLAY 6 30#define STATE_REPLAY 6
31 31
32// Menus 32// Menus
33#define MENU_MAIN_MENU 0 33#define MENU_MAIN_MENU 0
34#define MENU_OPTIONS_MENU 1 34#define MENU_OPTIONS_MENU 1
@@ -1118,51 +1118,50 @@ void SFCave :: dealWithMenuSelection()
1118{ 1118{
1119 switch( currentMenuNr ) 1119 switch( currentMenuNr )
1120 { 1120 {
1121 case MENU_MAIN_MENU: 1121 case MENU_MAIN_MENU:
1122 { 1122 {
1123 switch( currentMenuOption[currentMenuNr] ) 1123 switch( currentMenuOption[currentMenuNr] )
1124 { 1124 {
1125 case MENU_START_GAME: 1125 case MENU_START_GAME:
1126 state = STATE_NEWGAME; 1126 state = STATE_NEWGAME;
1127 break; 1127 break;
1128 1128
1129 case MENU_REPLAY: 1129 case MENU_REPLAY:
1130 currentMenuNr = MENU_REPLAY_MENU; 1130 currentMenuNr = MENU_REPLAY_MENU;
1131 currentMenuOption[currentMenuNr] = 0; 1131 currentMenuOption[currentMenuNr] = 0;
1132 break; 1132 break;
1133 1133
1134 case MENU_OPTIONS: 1134 case MENU_OPTIONS:
1135 currentMenuNr = MENU_OPTIONS_MENU; 1135 currentMenuNr = MENU_OPTIONS_MENU;
1136 currentMenuOption[currentMenuNr] = 0; 1136 currentMenuOption[currentMenuNr] = 0;
1137 break; 1137 break;
1138 1138
1139 case MENU_HELP: 1139 case MENU_HELP:
1140 { 1140 {
1141 // Display Help Menu 1141 // Display Help Menu
1142 HelpWindow *dlg = new HelpWindow( this ); 1142 HelpWindow *win = new HelpWindow( );
1143 dlg->exec(); 1143 QPEApplication::showWidget( win );
1144 delete dlg;
1145 break; 1144 break;
1146 } 1145 }
1147 1146
1148 case MENU_QUIT: 1147 case MENU_QUIT:
1149 QApplication::exit(); 1148 QApplication::exit();
1150 break; 1149 break;
1151 } 1150 }
1152 1151
1153 break; 1152 break;
1154 } 1153 }
1155 1154
1156 case MENU_OPTIONS_MENU: 1155 case MENU_OPTIONS_MENU:
1157 { 1156 {
1158 switch( currentMenuOption[currentMenuNr] ) 1157 switch( currentMenuOption[currentMenuNr] )
1159 { 1158 {
1160 case MENU_GAME_TYPE: 1159 case MENU_GAME_TYPE:
1161 break; 1160 break;
1162 1161
1163 case MENU_GAME_DIFFICULTY: 1162 case MENU_GAME_DIFFICULTY:
1164 break; 1163 break;
1165 1164
1166 case MENU_CLEAR_HIGHSCORES: 1165 case MENU_CLEAR_HIGHSCORES:
1167 for ( int i = 0 ; i < 3 ; ++i ) 1166 for ( int i = 0 ; i < 3 ; ++i )
1168 highestScore[currentGameType][i] = 0; 1167 highestScore[currentGameType][i] = 0;