Subversion Repositories Games.Descent

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 pmbaty 1
/*
2
 * Portions of this file are copyright Rebirth contributors and licensed as
3
 * described in COPYING.txt.
4
 * Portions of this file are copyright Parallax Software and licensed
5
 * according to the Parallax license below.
6
 * See COPYING.txt for license details.
7
 
8
THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
9
SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
10
END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
11
ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
12
IN USING, DISPLAYING,  AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
13
SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
14
FREE PURPOSES.  IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
15
CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES.  THE END-USER UNDERSTANDS
16
AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.
17
COPYRIGHT 1993-1998 PARALLAX SOFTWARE CORPORATION.  ALL RIGHTS RESERVED.
18
*/
19
 
20
/*
21
 *
22
 * Functions for showing help.
23
 *
24
 */
25
 
26
 
27
#include "inferno.h"
28
#include "editor.h"
29
#include "kdefs.h"
30
 
31
#include "ui.h"
32
 
33
constexpr char MainHelpText[] = "\nMED General Functions\n\n" \
34
"SPACEBAR         Full Redraw\n" \
35
"BACKSPACE        Drop into debugger\n\n" \
36
"A                Attach a segment\n" \
37
"D                Delete current segment\n\n" \
38
"F                Toggle to game\n" \
39
"G or S           Go to game (Toggle screen)\n\n" \
40
"ALT-C            Create new mine\n" \
41
"ALT-S            Save mine\n" \
42
"ALT-L            Load mine\n"\
43
"ESC              Exit editor\n"\
44
"ALT-Q/CTRL-Q/SHIFT-Q also Exit editor\n";
45
 
46
constexpr char SegmentHelpText[] = "MED Segment Functions\n\n" \
47
"ALT-B            Create Bridge from current to marked segment\n" \
48
"ALT-E            Exchange current and marked segments\n" \
49
"ALT-J            Create Joint between current and marked segments\n" \
50
"ALT-SHIFT-J      Create Joint on current side and adjacent segments\n" \
51
"ALT-CTRL-J       Create Joint on current segment and adjacent segments\n" \
52
"ALT-CTRL-SHIFT-J Create Joints on all adjacent segments\n" \
53
"ALT-M            Mark current segment and side\n" \
54
"ALT-N            Create default segment for New_segment\n" \
55
"CTRL-A           Toggle - Draw all segments/Draw connected segments\n" \
56
"CTRL-C           Clear selected list\n" \
57
"CTRL-D           Toggle display of coordinate axes\n" \
58
"CTRL-S           Advance to segment through Curside\n" \
59
"ALT-T            Assign Texture to current side\n" \
60
"CTRL-P           Propogate Textures\n" \
61
"CTRL-SHIFT-P     Propogate Textures on Selected segments\n" \
62
"CTRL-SHIFT-S     Advance to segment opposite Curside\n" \
63
"CTRL-F           Select next side\n" \
64
"CTRL-SHIFT-F     Select previous side\n";
65
 
66
constexpr char KeyPadHelpText[] = "MED KeyPad Functions\n\n" \
67
 
68
"SHIFT-KEYPAD FUNCTIONS (Change direction vector of segment)\n" \
69
"----------------------\n" \
70
"(7)                  8 Decrease Pitch   (9)\n" \
71
" 4 Decrease Heading (5)                  6 Increase Heading\n" \
72
" 1 Decrease Bank     2 Increase Pitch    3 Increase Bank\n\n" \
73
 
74
"CTRL-KEYPAD FUNCTIONS (Change size/shape of segment)\n" \
75
"---------------------\n" \
76
"(7)                  8 Increase Length   9 Increase Height\n" \
77
" 4 Decrease Width   (5)                  6 Increase Width\n" \
78
"(1)                  2 Decrease Length   3 Decrease Height\n"\
79
"\nIn addition, CTRL-SHIFT-KEYPAD Changes size at x5 rate as above\n";
80
 
81
 
82
constexpr char ViewHelpText[] = "MED View Changing Functions\n\n" \
83
"ALT-V            Change to orthogonal view (1,2,3)\n" \
84
"CTRL-V           Toggle view to current segment\n" \
85
"MINUS (-)        Zoom in\n" \
86
"EQUAL (=)        Zoom out\n" \
87
"SHIFT-MINUS      Decrease viewer distance\n" \
88
"SHIFT-EQUAL      Increase viewer distance\n" \
89
"\n* Holding the Ctrl key and moving the mouse will change\n" \
90
"the viewer's orientation in the main window.";
91
 
92
//"CTRL-MINUS       Decreases drawing depth\n" 
93
//"CTRL-EQUAL       Increases drawing depth\n" 
94
 
95
constexpr char GameHelpText[] = "MED Game Screen Functions\n\n" \
96
"KEYPAD FUNCTIONS (Moves in game screen)\n" \
97
"----------------\n" \
98
"(7)                  8 Move Forward     (9)\n" \
99
" 4 Decrease Heading  5 Complete Stop     6 Increase Heading\n" \
100
" 1 Decrease Bank     2 Move Backward     3 Increase Bank\n\n" \
101
"[                Decreases Pitch\n" \
102
"]                Increases Pitch\n" \
103
"C                Set Player from Current segment\n" \
104
"L                Toggle Lock Step\n" \
105
"O                Toggle Outline Mode\n" \
106
"SHIFT-C          Set PLayer from Current segment-1\n" \
107
"SHIFT-L          Toggle Lighting effect\n" \
108
"NUMLOCK          Reset orientation\n" \
109
"PAD DIVIDE (/)   Game Zoom out\n" \
110
"PAD MULTIPLY (*) Game Zoom In\n";
111
 
112
constexpr char CurveHelpText[] = "MED Curve Generation Functions\n\n" \
113
"ALT-F10          Generate curve\n" \
114
"F8               Delete curve\n" \
115
"F11              'Set' curve\n" \
116
"F9               Decrease r1 vector\n" \
117
"SHIFT-F9         Increase r1 vector\n" \
118
"F10              Decrease r4 vector\n" \
119
"SHIFT-F10        Increase r4 vector\n";
120
 
121
constexpr char MacrosHelpText[] = "MED Macros Functions\n\n" \
122
"CTRL-INSERT      Play fast\n" \
123
"CTRL-DELETE      Play normal\n" \
124
"CTRL-HOME        Record all\n" \
125
"CTRL-END         Record keys\n" \
126
"CTRL-PAGEUP      Save Macro\n" \
127
"CTRL-PAGEDOWN    Load Macro\n";
128
 
129
int DoHelp()
130
{
131
        int help_key = 2;
132
    int more_key = 2;
133
    while (help_key > 1)
134
        {
135
        help_key = ui_messagebox( -2, -2, 5, MainHelpText, "Ok", "Segment", "Keypad", "View", "More");
136
                if (help_key == 2)
137
                        ui_messagebox( -2, -2, 1, SegmentHelpText, "Ok" );
138
                if (help_key == 3)
139
                        ui_messagebox( -2, -2, 1, KeyPadHelpText, "Ok" );
140
                if (help_key == 4)
141
                        ui_messagebox( -2, -2, 1, ViewHelpText, "Ok" );
142
        if (help_key == 5) {
143
            more_key = ui_messagebox( -2, -2, 4, MainHelpText, "Back", "Curve", "Macro", "Game");
144
                if (more_key == 2)
145
                    ui_messagebox( -2, -2, 1, CurveHelpText, "Ok" );
146
                if (help_key == 3)
147
                    ui_messagebox( -2, -2, 1, MacrosHelpText, "Ok" );
148
                if (help_key == 4)
149
                    ui_messagebox( -2, -2, 1, GameHelpText, "Ok" );
150
        }
151
        }
152
        return 1;
153
}