1 #ifndef STRINGS_H_INCLUDED
2 #define STRINGS_H_INCLUDED
3 
4 /************************************************************************
5  * This file is part of Wizznic.                                        *
6  * Copyright 2009-2015 Jimmy Christensen <dusted@dusted.dk>             *
7  * Wizznic is free software: you can redistribute it and/or modify      *
8  * it under the terms of the GNU General Public License as published by *
9  * the Free Software Foundation, either version 3 of the License, or    *
10  * (at your option) any later version.                                  *
11  *                                                                      *
12  * Wizznic is distributed in the hope that it will be useful,           *
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of       *
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
15  * GNU General Public License for more details.                         *
16  *                                                                      *
17  * You should have received a copy of the GNU General Public License    *
18  * along with Wizznic.  If not, see <http://www.gnu.org/licenses/>.     *
19  ************************************************************************/
20 
21 //Specific for platform
22 #if defined (GP2X) || defined (WIZ) ///gp2x and Wiz version
23   //Menu
24   #define STR_MENU_PRESS_B            "Press B"
25   #define STR_MENU_PRESS_B_PLAY       "Press B to Play"
26 
27   #define STR_MENU_LVLEDIT_USAGE      "Edit: B. Play: A. Clone: Y"
28 
29   //Editor
30   #define STR_EDIT_CONTROLS "X:Put Y:Del Menu:Exit Select:Save"
31 
32   //Entering highscores
33   #define STR_STRINPUT_CONTROLS "B:Type  A:Delete "
34 
35   //Game
36   #define STR_GAME_PRESSB             "Press B to Play"
37   #define STR_SELECT_CTRLS            "Use D-PAD, button B.\n"
38 
39 
40 #elif defined (PSP) /// PSP version
41   //Menu
42   #define STR_MENU_PRESS_B            "Press Cross"
43   #define STR_MENU_PRESS_B_PLAY       "Press Cross to Play"
44 
45   #define STR_MENU_LVLEDIT_USAGE      "Edit: X. Play: O. Clone: Triangle"
46 
47   //Editor
48   #define STR_EDIT_CONTROLS "Squ:Put Tri:Del Start:Exit Sel:Save"
49 
50   //Entering highscores
51   #define STR_STRINPUT_CONTROLS  "Start:Save  X:Type  O:Delete"
52 
53   //Game
54   #define STR_GAME_PRESSB             "Press Cross to Play"
55 
56   #define STR_SELECT_CTRLS           "Use D-PAD, Cross.\n"
57 
58 #elif defined (PANDORA)
59     //Menu
60     #define STR_MENU_PRESS_B            "Press B"
61     #define STR_MENU_PRESS_B_PLAY       "Press B to Play"
62 
63 
64 
65     #define STR_MENU_LVLEDIT_USAGE      "Edit B Play:A Clone:Y Upload:X"
66 
67     //Editor
68     #define STR_EDIT_CONTROLS "X:Put Y:Del START:Exit SELECT:Save"
69 
70     //Entering highscores
71     #define STR_STRINPUT_CONTROLS  "B:Type  A:Delete"
72 
73     //Game
74     #define STR_GAME_PRESSB             "Press B to Play"
75     #define STR_SELECT_CTRLS            "Use D-PAD, button B.\n"
76 #elif defined(GCW0) /// GCW Zero version
77   // Note: GCW Zero button layout matches the GP2X/Wiz layout in the following manner:
78   //  GCW Zero - GP2X/Wiz
79   //  A        - B
80   //  B        - X
81   //  X        - A
82   //  Y        - Y
83   //  L        - L
84   //  R        - R
85   //  START    - MENU
86   //  SELECT   - SELECT
87 
88   //Menu
89   #define STR_MENU_PRESS_B            "Press A"
90   #define STR_MENU_PRESS_B_PLAY       "Press A to Play"
91 
92   #define STR_MENU_LVLEDIT_USAGE      "Edit: A. Play: X. Clone: Y"
93 
94   //Editor
95   #define STR_EDIT_CONTROLS "B:Put Y:Del Start:Exit Select:Save"
96 
97   //Entering highscores
98   #define STR_STRINPUT_CONTROLS "A:Type  B:Delete "
99 
100   //Game
101   #define STR_GAME_PRESSB             "Press A to Play"
102   #define STR_SELECT_CTRLS            "Use D-PAD, button A.\n"
103 
104 
105 #elif defined(MAME_CTRL)
106     //Menu
107     #define STR_MENU_PRESS_B            "Press Button 1"
108     #define STR_MENU_PRESS_B_PLAY       "Press B1 to Play"
109 
110     #define STR_MENU_LVLEDIT_USAGE      "Edit: B4. Play: B3. Clone: B2"
111 
112     //Editor
113     #define STR_EDIT_CONTROLS "1:Put 2:Del s1:Exit s2:Save"
114 
115     //Entering highscores
116     #define STR_STRINPUT_CONTROLS  "B1:Type  B2:Delete"
117 
118     //Game
119     #define STR_GAME_RESTARTCONFIRM     "Press B2 to confirm"
120     #define STR_GAME_PRESSB             "Press B1 to Play"
121     #define STR_SELECT_CTRLS            "Use Joystick, button 1.\n"
122  #else
123     //Menu
124     #define STR_MENU_PRESS_B            "Press Ctrl"
125     #define STR_MENU_PRESS_B_PLAY       "Press Ctrl to Play"
126     #define STR_SELECT_CTRLS            "Use Arrows,Ctrl or Mouse.\n"
127 
128     #define STR_MENU_LVLEDIT_USAGE      "Edit:Ctrl Try:Alt Copy:Z Upload:X"
129 
130     //Editor
131     #define STR_EDIT_CONTROLS "X:Put Z:Del ESC:Exit Space:Save"
132 
133     //Entering highscores
134     #define STR_STRINPUT_CONTROLS  "Ctrl:Type  Alt:Delete"
135 
136     //Game
137     #define STR_GAME_PRESSB             "Press Ctrl to Play"
138 #endif
139 
140 
141 ///General strings
142 #define CODE_VERSION "1.0-dev"
143 
144 #ifdef BUILD_NUMBER
145   #define VERSION_STRING CODE_VERSION"(B"BUILD_NUMBER")"
146 #else
147   #define VERSION_STRING CODE_VERSION
148 #endif
149 
150 #ifdef WITH_OPENGL
151   #define STR_VID_OPTIONS STR_VID_OPTIONS_OPENGL""STR_VID_OPTIONS_SW
152 #else
153   #define STR_VID_OPTIONS STR_VID_OPTIONS_SW
154 #endif
155 
156 
157 //Menu
158 #define STR_MENU_PUZZLES_WORLDWIDE  "Puzzles worldwide: %i"
159 #define STR_MENU_NEW_GAME           "New Game!"
160 
161 #define STR_MENU_PAUSE_HEADLINE     "Pause!"
162 #define STR_MENU_WIZZNIC_HEADLINE   "Wizznic!"
163 
164 #define STR_MENU_NEW_GAME_CHOICE    "New Game"
165 #define STR_MENU_RESUME_CHOICE      "Continue"
166 #define STR_MENU_HIGHSCORES_CHOICE  "Highscores"
167 #define STR_MENU_OPTIONS_CHOICE     "Options"
168 #define STR_MENU_EDITOR_CHOICE      "Editor"
169 #define STR_MENU_ABOUT_CHOICE       "About"
170 #define STR_MENU_PACK_CHOICE        "Packs"
171 #define STR_MENU_EXIT_CHOICE        "Exit"
172 #define STR_MENU_PACK_SHOW          "Pack: %s"
173 
174 #define STR_MENU_PACKLIST_DLC_ENTER "Get More Packs!\n"\
175 		                                "Enter a DLC code here,\n"\
176 		                                "to install more puzzles!"
177 
178 #define STR_MENU_PACKLIST_DLC_OFFLINE "Wizznic is offline.\n"\
179 		                                  "DLC download is disabled.\n"\
180                                       "Go to wizznic.org/dlc"
181 
182 #define STR_MENU_ABOUT_WEBSITE      "http://wizznic.org/"
183 
184 #define STR_MENU_BEAT_PACK_HEADLINE "Good job!"
185 #define STR_MENU_BEAT_PACK_RANT     "Congratulations!\n"\
186                                     "You've beat this pack! Now go try\n"\
187                                     "out some of the other packs!\n"\
188                                     "\n"\
189                                     "or maybe you should try and make\n"\
190                                     "a pack or some levels yourself??\n"\
191                                     "\n"\
192                                     "You could maybe make a donation?\n"\
193                                     "I'd love to have som funds for\n"\
194                                     "Advertisement.. and beer.. ;)\n"\
195                                     "But mostly bee... Advertisements!\n"\
196                                     "                        - Jimmy"
197 
198 #define STR_MENU_UPLOADNAG          "-- Wizznic loves The Internet! --\n"\
199                                     "\n"\
200                                     "  Internet access lets Wizznic\n"\
201                                     "  fetch DLCs, check for new\n"\
202                                     "  versions  and send back\n"\
203                                     "  some game-play info to\n"\
204                                     "  make the game better.\n"\
205                                     "\n"\
206                                     "\n"\
207                                     STR_SELECT_CTRLS
208 
209 #define STR_MENU_ALLOW_UPLOAD        "<- Allow Online ->"
210 #define STR_MENU_ALLOW_UPLOAD_U     "<__________________>"
211 
212 
213 
214 #define STR_MENU_ALLOW_RESET        "Delete         Back"
215 #define STR_MENU_ALLOW_RESET_U      "_________or________"
216 
217 
218 //                                  "----------------------------------"
219 #define STR_MENU_UPDATE             "---- Wizznic has been updated ----\n"\
220                                     "Great news everyone!\n"\
221                                     "There's a new version out!\n"\
222                                     "Grab it at:\n"\
223                                     "http://wizznic.org/\n"\
224                                     "I'm sure it's filled with some\n"\
225                                     "pretty cool and awesome stuff! :)\n"\
226                                     "----------------------------------\n"
227 
228 
229 //                                  "----------------------------------"
230 #define STR_MENU_NOPTRSUPPORT       "-- Pointer not supported here --\n"\
231                                     "You need to use the cursor keys\n"\
232                                     "to do this, because I am\n"\
233                                     "too lazy to make the pointer work\n"\
234                                     "here.. Press key to continue,\n"\
235                                     "or click to return to the menu.\n"\
236                                     "If you consider donating a local\n"\
237                                     "beer, I will consider making\n"\
238                                     "the pointer work here.. - Jimmy."
239 
240 
241 //                                        "----------------------------------"
242 #define STR_MENU_DLC_ERROR_DOWNLOAD       "I'm sorry!\n\n"\
243 		                                      "For some reason it was not\n"\
244                                           "possible to download a DLC using\n"\
245                                           "the code you entered...\n"\
246                                           "Maybe the code was wrong?\n"\
247                                           "Maybe Wizznic could not connect\n"\
248                                           "to the server? It could be down..\n\n"\
249                                           "Try again please!\n\n"\
250                                           "If you can not get it to work:\n"\
251                                           "Visit http://wizznic.org/\n"
252 
253 
254 
255 //                                        "----------------------------------\n"
256 #define STR_MENU_DLC_ERROR_API_OUTDATED   "This version of Wizznic! is a bit\n"\
257 		                                      "too dusty..\n"\
258 		                                      "\n"\
259 		                                      "It's too old for DLCs. :(\n"\
260 		                                      "Please update Wizznic!"
261 
262 
263 //                                        "----------------------------------\n"
264 #define STR_MENU_DLC_ERROR_CORRUPT        "The DLC file was corrupt.\n"\
265 		                                      "\n"\
266 		                                      "Please try again."
267 
268 
269 //                                        "----------------------------------\n"
270 #define STR_MENU_DLC_ERROR_COULD_NOT_OPEN "Could not open the DLC file,\n"\
271 		                                      "please check the permissions of:\n"\
272                                           "%s\n"\
273                                           "And try again try again."
274 
275 
276 //                                        "----------------------------------\n"
277 #define STR_MENU_DLC_ERROR_DIR_EXISTS     "This DLC is already intalled.\n"\
278 		                                      "If it's not working, please go to\n"\
279 		                                      "your DLC directory and\n"\
280 		                                      "delete it and try again."
281 
282 
283 //                                        "----------------------------------\n"
284 #define STR_MENU_DLC_ERROR_NOT_BUNDLEFILE "The downloaded file is not\n"\
285 		                                      "recognized as a Wizznic DLC."
286 
287 
288 //                                              "----------------------------------\n"
289 #define STR_MENU_DLC_ERROR_NO_WRITE_PERMISSION  "Wizznic did not have permission\n"\
290 		                                            "to install the DLC."
291 
292 //                                              "---- Wizznic has been updated ----\n"
293 #define STR_MENU_DLC_ERROR_UNSUPPORTED_VERSION  "This version of Wizznic do not\n"\
294 		                                            "know how to install that DLC,\n"\
295 		                                            "maybe it is too old ?"\
296 
297 #define STR_MENU_GAMEOVER           "Game Over!"
298 #define STR_MENU_SCORE              "Score %i"
299 
300 #define STR_MENU_LVLEDIT_HEADLINE   "Level Editor!"
301 
302 //Editor
303 #define STR_LVLEDIT_MORE            "[More]"
304 #define STR_LVLEDIT_CREATE_CHOICE   "Create"
305 #define STR_LVLEDIT_EXIT_CHOICE     "Exit"
306 #define STR_MENU_LVLEDIT_USRLVL     "Level %i"
307 #define STR_MENU_LVLEDIT_USRLVL_SEL "--> Level %i <--"
308 
309 #define STR_MENU_LVLEDIT_PLAY       "Play"
310 #define STR_MENU_LVLEDIT_CLONE      "Copy"
311 #define STR_MENU_LVLEDIT_EDIT       "Edit"
312 #define STR_MENU_LVLEDIT_UPLOAD     "Upload"
313 
314 #define STR_EDIT_SAVED              "Saved"
315 #define STR_EDIT_UNSAVED            "Not saved"
316 #define STR_EDIT_STATUS             "Status:"
317 #define STR_EDIT_NOT_SAVED_WARNING  "Not Saved!"
318 
319 
320 #if defined(GP2X) || defined(WIZ)
321   #define STR_EDIT_NEXTBRICK_KEY      "B>"
322   #define STR_EDIT_PREVBRICK_KEY      "<A"
323 #elif defined (PSP)
324   #define STR_EDIT_NEXTBRICK_KEY      "X>"
325   #define STR_EDIT_PREVBRICK_KEY      "<Y"
326 #elif defined (PANDORA)
327   #define STR_EDIT_NEXTBRICK_KEY      "B>"
328   #define STR_EDIT_PREVBRICK_KEY      "<A"
329 #elif defined (GCW0)
330   #define STR_EDIT_NEXTBRICK_KEY      "A>"
331   #define STR_EDIT_PREVBRICK_KEY      "<X"
332 #else
333   #define STR_EDIT_NEXTBRICK_KEY      "Alt"
334   #define STR_EDIT_PREVBRICK_KEY      "Ctrl"
335 #endif
336 
337 //This is defined in strings.c
338 extern const char* str_brick_names[];
339 
340 #ifdef PANDORA /// added by farox for pandora port
341 #define STR_EDIT_PRESS_EXIT_TO_EXIT "Press START to exit without saving."
342 #define STR_EDIT_PRESS_SAVE_TO_SAVE "Press SELECT to save the level."
343 #else
344 #define STR_EDIT_PRESS_EXIT_TO_EXIT "Press Exit to exit without saving."
345 #define STR_EDIT_PRESS_SAVE_TO_SAVE "Press Save to save the level."
346 #endif
347 
348 #define STR_EDIT_BRICK              "Brick"
349 
350 //Options
351 #define STR_MENU_OPTIONS            "Options!"
352 #define STR_MENU_OPTIONS_EXIT       "Exit Options"
353 #define STR_MENU_OPTIONS_SOUNDVOL   "Effects Volume: < %i >"
354 #define STR_MENU_OPTIONS_MUSICVOL   "Music Volume: < %i >"
355 
356 //Confirm clear highscore
357 #define STR_MENU_ARE_YOU_SURE       "Are You Sure ?"
358 #define STR_MENU_CONFIRM_CLEAR_HIGHSCORES "\n--- This will be deleted ---\n"\
359                                           "\nFrom: %s\n\n"\
360                                           "  * High-Scores\n"\
361                                           "  * Statistics\n"\
362                                           "  * Unlocked levels\n"\
363                                           "  * Your current game\n"\
364                                           "\n"\
365                                           "Are you sure you want to do this?"
366 
367 //Packs
368 #define STR_MENU_SELECT_PACK        "Select pack"
369 #define STR_MENU_SELECT_PACK_PRESS_CTRL STR_MENU_PRESS_B" to select"
370 #define STR_MENU_PACKS_MORE         "[More]"
371 
372 //Game
373 #define STR_GAME_RESTARTWARNING     "Restart Level?"
374 #define STR_GAME_UNSOLVABLE         "Unsolvable!"
375 #define STR_GAME_LOSTLIFE           "Life Lost!"
376 #define STR_GAME_OUTOFTIME          "Out Of Time!"
377 #define STR_GAME_RESTARTCONFIRM     "Again to confirm"
378 
379 
380 
381 //This put to stdout
382 #define STR_VID_OPTIONS_OPENGL \
383     "    -gl            # Enable OpenGL.\n"\
384     "    -sw            # Disable OpenGL.\n"\
385     "    -glheight PX   # Window width  (-1 for auto).\n"\
386     "    -glwidth  PY   # Window height (-1 for auto).\n"\
387     "    -glfilter ST   # 0=Blocky, 1=Smooth.\n"\
388     "    -rift          # Usable for Oculus Rift.\n"
389 
390 #define STR_VID_OPTIONS_SW \
391     "    -record [file] # on pc, use ffmpeg to encode video to file.mp4\n"\
392     "    -d PACKNAME    # Dump screenshots of levels in pack.\n"\
393     "    -d FILENAME    # Dump screenshot of level.\n"\
394     "    -f             # Enable fullscreen.\n"\
395     "    -w             # Disable fullscreen.\n"\
396     "    -z 2           # Software scale to 640x480.\n"
397 
398 
399 //Well, string functions...
400 void stripNewLine(char* str);
401 int splitVals(char ch,const char* buf, char* set, char* val); //Splits a setting=value line and returns true if it did. else returns 0
402 int charrpos(const char* str, char c); //Return position of last instance of character c
403 
404 #endif // STRINGS_H_INCLUDED
405