"Project-Id-Version: SuperTux 0.2-svn\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2004-12-15 17:21+0100\n"
-"PO-Revision-Date: 2006-06-16 02:20+0100\n"
+"PO-Revision-Date: 2006-07-06 00:39+0100\n"
"Last-Translator: Christoph Sommer <christoph.sommer@2006.expires.deltadevelopment.de>\n"
"Language-Team: German <de@li.org>\n"
"MIME-Version: 1.0\n"
"X-Poedit-KeywordsList: draw_text;draw_center_text;_\n"
"X-Poedit-SearchPath-0: src\n"
-#: src/main.cpp:200
-#, c-format
-msgid ""
-"Usage: %s [OPTIONS] [LEVELFILE]\n"
-"\n"
-msgstr ""
-"Aufruf: %s [OPTIONS] [LEVELDATEI]\n"
-"\n"
-
-#: src/main.cpp:202
-#, c-format
-msgid ""
-"Options:\n"
-" -f, --fullscreen Run in fullscreen mode\n"
-" -w, --window Run in window mode\n"
-" -g, --geometry WIDTHxHEIGHT Run SuperTux in given resolution\n"
-" --disable-sfx Disable sound effects\n"
-" --disable-music Disable music\n"
-" --help Show this help message\n"
-" --version Display SuperTux version and quit\n"
-" --show-fps Display framerate in levels\n"
-" --record-demo FILE LEVEL Record a demo to FILE\n"
-" --play-demo FILE LEVEL Play a recorded demo\n"
-"\n"
-msgstr ""
-"Optionen:\n"
-" -f, --fullscreen Vollbild-Modus\n"
-" -w, --window Fenster-Modus\n"
-" -g, --geometry WIDTHxHEIGHT SuperTux mit gewünschter Auflösung starten\n"
-" --disable-sfx Sound deaktivieren\n"
-" --disable-music Musik deaktivieren\n"
-" --help Diesen Hilfetext anzeigen\n"
-" --version SuperTux Version anzeigen und beenden\n"
-" --show-fps FPS anzeigen\n"
-" --record-demo FILE LEVEL Demo in Datei FILE aufzeichnen\n"
-" --play-demo FILE LEVEL Demo aus Datei FILE abspielen\n"
-"\n"
-
-#: src/game_session.cpp:101
-#: src/worldmap/worldmap.cpp:145
-msgid "Pause"
-msgstr "Pause"
-
-#: src/game_session.cpp:103
-#: src/worldmap/worldmap.cpp:147
-msgid "Continue"
-msgstr "Weiterspielen"
-
-#: src/game_session.cpp:104
-#: src/options_menu.cpp:49
-#: src/title.cpp:275
-#: src/worldmap/worldmap.cpp:148
-msgid "Options"
-msgstr "Einstellungen"
-
-#: src/game_session.cpp:106
-msgid "Abort Level"
-msgstr "Level Abbrechen"
-
-#: src/game_session.cpp:248
-msgid "contributed by "
-msgstr "von"
-
-#: src/game_session.cpp:252
-msgid "Best Level Statistics"
-msgstr "Level-Rekorde"
-
-#: src/statistics.cpp:83
-msgid "- Best Level Statistics -"
-msgstr "- Level-Rekorde -"
-
-#: src/statistics.cpp:101
-#, c-format
-msgid "Max coins collected:"
-msgstr "Münzen gesammelt:"
-
-#: src/statistics.cpp:105
-#, c-format
-msgid "Max fragging:"
-msgstr "Gegner besiegt:"
-
-#: src/statistics.cpp:109
-#, c-format
-msgid "Min time needed:"
-msgstr "Schnellste Zeit:"
-
-#: src/statistics.cpp:118
-#, c-format
-msgid "Max secrets found:"
-msgstr "Verstecke gefunden:"
-
-#: src/statistics.cpp:150
-#, c-format
-msgid "Max coins collected: %d / %d"
-msgstr "Münzen gesammelt: %d / %d"
-
-#: src/statistics.cpp:154
-#, c-format
-msgid "Max fragging: %d / %d"
-msgstr "Gegner besiegt: %d / %d"
-
-#: src/statistics.cpp:161
-#, c-format
-msgid "Min time needed: %02d:%02d"
-msgstr "Schnellste Zeit: %02d:%02d"
-
-#: src/statistics.cpp:165
-#, c-format
-msgid "Max secrets found: %d / %d"
-msgstr "Verstecke gefunden: %d / %d"
-
-#: src/statistics.cpp:202
-msgid "You"
-msgstr "Gerade"
-
-#: src/statistics.cpp:203
-msgid "Best"
-msgstr "Rekord"
-
-#: src/statistics.cpp:205
-msgid "Coins"
-msgstr "Münzen"
-
-#: src/statistics.cpp:213
-msgid "Secrets"
-msgstr "Verstecke"
-
-#: src/statistics.cpp:221
-msgid "Time"
-msgstr "Zeit"
-
-#: src/player_status.cpp:142
-msgid "COINS"
-msgstr "Münzen"
-
-#: src/options_menu.cpp:51
-msgid "Fullscreen"
-msgstr "Vollbild"
-
-#: src/options_menu.cpp:53
-msgid "Sound"
-msgstr "Sound"
-
-#: src/options_menu.cpp:54
-msgid "Music"
-msgstr "Musik"
-
-#: src/options_menu.cpp:56
-msgid "Sound (disabled)"
-msgstr "Sound (deaktiviert)"
-
-#: src/options_menu.cpp:57
-msgid "Music (disabled)"
-msgstr "Musik (deaktiviert)"
-
-#: src/options_menu.cpp:59
#: src/control/joystickkeyboardcontroller.cpp:572
+#: src/options_menu.cpp:59
msgid "Setup Keyboard"
msgstr "Tastenbelegung"
-#: src/options_menu.cpp:60
-#: src/control/joystickkeyboardcontroller.cpp:655
-msgid "Setup Joystick"
-msgstr "Joystickbelegung"
-
-#: src/options_menu.cpp:62
-#: src/title.cpp:88
-#: src/title.cpp:139
-#: src/title.cpp:189
-#: src/control/joystickkeyboardcontroller.cpp:581
-#: src/control/joystickkeyboardcontroller.cpp:665
-msgid "Back"
-msgstr "Zurück"
-
-#: src/title.cpp:82
-#: src/title.cpp:273
-msgid "Start Game"
-msgstr "Spiel starten"
-
-#: src/title.cpp:117
-#: src/title.cpp:274
-msgid "Contrib Levels"
-msgstr "Zusatzlevel"
-
-#: src/title.cpp:276
-msgid "Credits"
-msgstr "Mitwirkende"
-
-#: src/title.cpp:277
-msgid "Quit"
-msgstr "Beenden"
-
-#: src/title.cpp:316
-msgid ""
-"Copyright (c) 2006 SuperTux Devel Team\n"
-"This game comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to\n"
-"redistribute it under certain conditions; see the file COPYING for details.\n"
-msgstr ""
-"Copyright (c) 2003 SuperTux Devel Team\n"
-"Für dieses Spiel besteht KEINERLEI GARANTIE. Dieses Spiel ist freie Software, die Sie unter\n"
-"bestimmten Bedingungen weitergeben dürfen; Details finden Sie in der Datei COPYING.\n"
-
-#: src/title.cpp:418
-#: src/title.cpp:423
-msgid "Slot"
-msgstr "Spielstand"
-
-#: src/title.cpp:418
-msgid "Free"
-msgstr "Frei"
-
#: src/control/joystickkeyboardcontroller.cpp:574
msgid "Up"
msgstr "Oben"
msgid "Action"
msgstr "Aktion"
+#: src/control/joystickkeyboardcontroller.cpp:581
+#: src/control/joystickkeyboardcontroller.cpp:665
+#: src/options_menu.cpp:62
+#: src/title.cpp:88
+#: src/title.cpp:139
+#: src/title.cpp:189
+msgid "Back"
+msgstr "Zurück"
+
#: src/control/joystickkeyboardcontroller.cpp:593
#: src/control/joystickkeyboardcontroller.cpp:676
msgid "None"
msgid "Press Key"
msgstr "Taste drücken"
+#: src/control/joystickkeyboardcontroller.cpp:655
+#: src/options_menu.cpp:60
+msgid "Setup Joystick"
+msgstr "Joystickbelegung"
+
#: src/control/joystickkeyboardcontroller.cpp:660
msgid "Pause/Menu"
msgstr "Pause/Menü"
msgid "You found a secret area!"
msgstr "Neues Versteck gefunden!"
+#: src/worldmap/worldmap.cpp:145
+#: src/game_session.cpp:101
+msgid "Pause"
+msgstr "Pause"
+
+#: src/worldmap/worldmap.cpp:147
+#: src/game_session.cpp:103
+msgid "Continue"
+msgstr "Weiterspielen"
+
+#: src/worldmap/worldmap.cpp:148
+#: src/options_menu.cpp:49
+#: src/game_session.cpp:104
+#: src/title.cpp:275
+msgid "Options"
+msgstr "Einstellungen"
+
#: src/worldmap/worldmap.cpp:150
msgid "Quit World"
msgstr "Welt verlassen"
+#: src/options_menu.cpp:51
+msgid "Fullscreen"
+msgstr "Vollbild"
+
+#: src/options_menu.cpp:53
+msgid "Sound"
+msgstr "Sound"
+
+#: src/options_menu.cpp:54
+msgid "Music"
+msgstr "Musik"
+
+#: src/options_menu.cpp:56
+msgid "Sound (disabled)"
+msgstr "Sound (deaktiviert)"
+
+#: src/options_menu.cpp:57
+msgid "Music (disabled)"
+msgstr "Musik (deaktiviert)"
+
+#: src/main.cpp:201
+#, c-format
+msgid ""
+"Usage: %s [OPTIONS] [LEVELFILE]\n"
+"\n"
+msgstr ""
+"Aufruf: %s [OPTIONS] [LEVELDATEI]\n"
+"\n"
+
+#: src/main.cpp:203
+#, c-format
+msgid ""
+"Options:\n"
+" -f, --fullscreen Run in fullscreen mode\n"
+" -w, --window Run in window mode\n"
+" -g, --geometry WIDTHxHEIGHT Run SuperTux in given resolution\n"
+" --disable-sfx Disable sound effects\n"
+" --disable-music Disable music\n"
+" --help Show this help message\n"
+" --version Display SuperTux version and quit\n"
+" --show-fps Display framerate in levels\n"
+" --record-demo FILE LEVEL Record a demo to FILE\n"
+" --play-demo FILE LEVEL Play a recorded demo\n"
+"\n"
+msgstr ""
+"Optionen:\n"
+" -f, --fullscreen Vollbild-Modus\n"
+" -w, --window Fenster-Modus\n"
+" -g, --geometry WIDTHxHEIGHT SuperTux mit gewünschter Auflösung starten\n"
+" --disable-sfx Sound deaktivieren\n"
+" --disable-music Musik deaktivieren\n"
+" --help Diesen Hilfetext anzeigen\n"
+" --version SuperTux Version anzeigen und beenden\n"
+" --show-fps FPS anzeigen\n"
+" --record-demo FILE LEVEL Demo in Datei FILE aufzeichnen\n"
+" --play-demo FILE LEVEL Demo aus Datei FILE abspielen\n"
+"\n"
+
+#: src/game_session.cpp:106
+msgid "Abort Level"
+msgstr "Level Abbrechen"
+
+#: src/game_session.cpp:252
+#: src/statistics.cpp:237
+msgid "Coins"
+msgstr "Münzen"
+
+#: src/game_session.cpp:258
+msgid "contributed by "
+msgstr "von"
+
+#: src/game_session.cpp:262
+#: src/statistics.cpp:101
+msgid "Best Level Statistics"
+msgstr "Level-Rekorde"
+
+#: src/statistics.cpp:119
+#: src/statistics.cpp:176
+#, c-format
+msgid "Max coins collected:"
+msgstr "Münzen gesammelt:"
+
+#: src/statistics.cpp:123
+#: src/statistics.cpp:181
+#, c-format
+msgid "Max fragging:"
+msgstr "Gegner besiegt:"
+
+#: src/statistics.cpp:127
+#: src/statistics.cpp:189
+#, c-format
+msgid "Min time needed:"
+msgstr "Schnellste Zeit:"
+
+#: src/statistics.cpp:136
+#: src/statistics.cpp:194
+#, c-format
+msgid "Max secrets found:"
+msgstr "Verstecke gefunden:"
+
+#: src/statistics.cpp:234
+msgid "You"
+msgstr "Jetzt"
+
+#: src/statistics.cpp:235
+msgid "Best"
+msgstr "Rekord"
+
+#: src/statistics.cpp:245
+msgid "Secrets"
+msgstr "Verstecke"
+
+#: src/statistics.cpp:253
+msgid "Time"
+msgstr "Zeit"
+
+#: src/player_status.cpp:142
+msgid "COINS"
+msgstr "Münzen"
+
+#: src/title.cpp:82
+#: src/title.cpp:273
+msgid "Start Game"
+msgstr "Spiel starten"
+
+#: src/title.cpp:117
+#: src/title.cpp:274
+msgid "Contrib Levels"
+msgstr "Zusatzlevel"
+
+#: src/title.cpp:276
+msgid "Credits"
+msgstr "Abspann"
+
+#: src/title.cpp:277
+msgid "Quit"
+msgstr "Beenden"
+
+#: src/title.cpp:316
+msgid ""
+"Copyright (c) 2006 SuperTux Devel Team\n"
+"This game comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to\n"
+"redistribute it under certain conditions; see the file COPYING for details.\n"
+msgstr ""
+"Copyright (c) 2003 SuperTux Devel Team\n"
+"Für dieses Spiel besteht KEINERLEI GARANTIE. Dieses Spiel ist freie Software, die Sie unter\n"
+"bestimmten Bedingungen weitergeben dürfen; Details finden Sie in der Datei COPYING.\n"
+
+#: src/title.cpp:418
+#: src/title.cpp:423
+msgid "Slot"
+msgstr "Spielstand"
+
+#: src/title.cpp:418
+msgid "Free"
+msgstr "Frei"
+
capture_file = filename;
char buf[30]; // save the seed in the demo file
- sprintf(buf, "random_seed=%010d", config->random_seed);
+ snprintf(buf, sizeof(buf), "random_seed=%010d", config->random_seed);
for (int i=0; i==0 || buf[i-1]; i++)
capture_demo_stream->put(buf[i]);
}
}
}
+namespace {
+ inline const char* chain(const char* c1, const char* c2) {
+ return (std::string(c1) + std::string(c2)).c_str();
+ }
+ inline const char* chain(const char* c1, const char* c2, const char* c3) {
+ return (std::string(c1) + std::string(c2) + std::string(c3)).c_str();
+ }
+}
+
void
GameSession::levelintro()
{
context.draw_center_text(gold_text, level->get_name(), Vector(0, 160),
LAYER_FOREGROUND1);
- sprintf(str, "Coins: %d", player_status->coins);
+ snprintf(str, sizeof(str), chain(_("Coins"), ": %d"), player_status->coins);
context.draw_text(white_text, str, Vector(SCREEN_WIDTH/2, 210),
CENTER_ALLIGN, LAYER_FOREGROUND1);
char str[1024];
if(input_flickering)
- sprintf(str,"%s ",input.c_str());
+ snprintf(str, sizeof(str), "%s ",input.c_str());
else
- sprintf(str,"%s_",input.c_str());
+ snprintf(str, sizeof(str), "%s_",input.c_str());
std::string string = str;
char str[60];
int displayCoins = std::max(player_status->coins, 0);
- sprintf(str, "%d", displayCoins);
+ snprintf(str, sizeof(str), "%d", displayCoins);
const char* coinstext = _("COINS");
context.draw_text(white_text, coinstext, Vector(SCREEN_WIDTH - white_text->get_text_width(coinstext) - gold_text->get_text_width(" 99999") - BORDER_X, BORDER_Y), LEFT_ALLIGN, LAYER_FOREGROUND1);
context.draw_text(gold_text, str, Vector(SCREEN_WIDTH - BORDER_X, BORDER_Y), RIGHT_ALLIGN, LAYER_FOREGROUND1);
char img_name[1024];
for (int i = 0; i < GROWING_FRAMES; i++)
{
- sprintf(img_name, "images/creatures/tux_grow/left-%i.png", i+1);
+ snprintf(img_name, sizeof(img_name), "images/creatures/tux_grow/left-%i.png", i+1);
growingtux_left[i] = new Surface(img_name);
- sprintf(img_name, "images/creatures/tux_grow/right-%i.png", i+1);
+ snprintf(img_name, sizeof(img_name), "images/creatures/tux_grow/right-%i.png", i+1);
growingtux_right[i] = new Surface(img_name);
}
switch (display_stat)
{
case 0:
- sprintf(caption_buf, _("Max coins collected:"));
- sprintf(stat_buf, "%d/%d", coins, total_coins);
+ snprintf(caption_buf, sizeof(caption_buf), _("Max coins collected:"));
+ snprintf(stat_buf, sizeof(stat_buf), "%d/%d", coins, total_coins);
break;
case 1:
- sprintf(caption_buf, _("Max fragging:"));
- sprintf(stat_buf, "%d/%d", badguys, total_badguys);
+ snprintf(caption_buf, sizeof(caption_buf), _("Max fragging:"));
+ snprintf(stat_buf, sizeof(stat_buf), "%d/%d", badguys, total_badguys);
break;
case 2:
- sprintf(caption_buf, _("Min time needed:"));
+ snprintf(caption_buf, sizeof(caption_buf), _("Min time needed:"));
{
int csecs = (int)(time * 100);
int mins = (int)(csecs / 6000);
int secs = (csecs % 6000) / 100;
- sprintf(stat_buf, "%02d:%02d", mins,secs);
+ snprintf(stat_buf, sizeof(stat_buf), "%02d:%02d", mins,secs);
}
break;
case 3:
- sprintf(caption_buf, _("Max secrets found:"));
- sprintf(stat_buf, "%d/%d", secrets, total_secrets);
+ snprintf(caption_buf, sizeof(caption_buf), _("Max secrets found:"));
+ snprintf(stat_buf, sizeof(stat_buf), "%d/%d", secrets, total_secrets);
break;
default:
log_debug << "Invalid stat requested to be drawn" << std::endl;
// skip draw if stats were declared invalid
if (!valid) return;
+ const float width = white_small_text->get_text_width("Max coins collected: 1111 / 1111");
+ const float left = (SCREEN_WIDTH - width) / 2;
+ const float right = (SCREEN_WIDTH + width) / 2;
+
context.draw_text(gold_text, title, Vector(SCREEN_WIDTH/2, 410), CENTER_ALLIGN, LAYER_GUI);
- char str[128];
+ char stat_buf[128];
int py = 450 + 18;
- sprintf(str, _("Max coins collected: %d / %d"), coins, total_coins);
- context.draw_text(white_small_text, str, Vector(SCREEN_WIDTH/2, py), CENTER_ALLIGN, LAYER_GUI);
+ snprintf(stat_buf, sizeof(stat_buf), "%d/%d", coins, total_coins);
+ context.draw_text(white_small_text, _("Max coins collected:"), Vector(left, py), LEFT_ALLIGN, LAYER_GUI);
+ context.draw_text(white_small_text, "%d / %d", Vector(right, py), RIGHT_ALLIGN, LAYER_GUI);
py+=18;
- sprintf(str, _("Max fragging: %d / %d"), badguys, total_badguys);
- context.draw_text(white_small_text, str, Vector(SCREEN_WIDTH/2, py), CENTER_ALLIGN, LAYER_GUI);
+ snprintf(stat_buf, sizeof(stat_buf), "%d/%d", badguys, total_badguys);
+ context.draw_text(white_small_text, _("Max fragging:"), Vector(left, py), LEFT_ALLIGN, LAYER_GUI);
+ context.draw_text(white_small_text, "%d / %d", Vector(right, py), RIGHT_ALLIGN, LAYER_GUI);
py+=18;
int csecs = (int)(time * 100);
int mins = (int)(csecs / 6000);
int secs = (csecs % 6000) / 100;
- sprintf(str, _("Min time needed: %02d:%02d"), mins,secs);
- context.draw_text(white_small_text, str, Vector(SCREEN_WIDTH/2, py), CENTER_ALLIGN, LAYER_GUI);
+ snprintf(stat_buf, sizeof(stat_buf), "%02d:%02d", mins,secs);
+ context.draw_text(white_small_text, _("Min time needed:"), Vector(left, py), LEFT_ALLIGN, LAYER_GUI);
+ context.draw_text(white_small_text, "%02d:%02d", Vector(right, py), RIGHT_ALLIGN, LAYER_GUI);
py+=18;
- sprintf(str, _("Max secrets found: %d / %d"), secrets, total_secrets);
- context.draw_text(white_small_text, str, Vector(SCREEN_WIDTH/2, py), CENTER_ALLIGN, LAYER_GUI);
+ snprintf(stat_buf, sizeof(stat_buf), "%d/%d", secrets, total_secrets);
+ context.draw_text(white_small_text, _("Max secrets found:"), Vector(left, py), LEFT_ALLIGN, LAYER_GUI);
+ context.draw_text(white_small_text, "%d / %d", Vector(right, py), RIGHT_ALLIGN, LAYER_GUI);
py+=18;
}
context.draw_text(white_text, _("Best"), Vector(col3_x, row1_y), LEFT_ALLIGN, LAYER_GUI);
context.draw_text(white_text, _("Coins"), Vector(col1_x, row2_y), LEFT_ALLIGN, LAYER_GUI);
- snprintf(buf, 128, "%d/%d", coins, total_coins);
+ snprintf(buf, sizeof(buf), "%d/%d", coins, total_coins);
context.draw_text(gold_text, buf, Vector(col2_x, row2_y), LEFT_ALLIGN, LAYER_GUI);
if (best_stats && (best_stats->coins > coins)) {
- snprintf(buf, 128, "%d/%d", best_stats->coins, best_stats->total_coins);
+ snprintf(buf, sizeof(buf), "%d/%d", best_stats->coins, best_stats->total_coins);
}
context.draw_text(gold_text, buf, Vector(col3_x, row2_y), LEFT_ALLIGN, LAYER_GUI);
context.draw_text(white_text, _("Secrets"), Vector(col1_x, row4_y), LEFT_ALLIGN, LAYER_GUI);
- snprintf(buf, 128, "%d/%d", secrets, total_secrets);
+ snprintf(buf, sizeof(buf), "%d/%d", secrets, total_secrets);
context.draw_text(gold_text, buf, Vector(col2_x, row4_y), LEFT_ALLIGN, LAYER_GUI);
if (best_stats && (best_stats->secrets > secrets)) {
- snprintf(buf, 128, "%d/%d", best_stats->secrets, best_stats->total_secrets);
+ snprintf(buf, sizeof(buf), "%d/%d", best_stats->secrets, best_stats->total_secrets);
}
context.draw_text(gold_text, buf, Vector(col3_x, row4_y), LEFT_ALLIGN, LAYER_GUI);
int csecs = (int)(time * 100);
int mins = (int)(csecs / 6000);
int secs = (csecs % 6000) / 100;
- snprintf(buf, 128, "%02d:%02d", mins,secs);
+ snprintf(buf, sizeof(buf), "%02d:%02d", mins,secs);
context.draw_text(gold_text, buf, Vector(col2_x, row3_y), LEFT_ALLIGN, LAYER_GUI);
if (best_stats && (best_stats->time < time)) {
int csecs = (int)(best_stats->time * 100);
int mins = (int)(csecs / 6000);
int secs = (csecs % 6000) / 100;
- snprintf(buf, 128, "%02d:%02d", mins,secs);
+ snprintf(buf, sizeof(buf), "%02d:%02d", mins,secs);
}
context.draw_text(gold_text, buf, Vector(col3_x, row3_y), LEFT_ALLIGN, LAYER_GUI);
}