int i;
char *name_text = (!options.network && setup.team_mode ? "Team:" : "Name:");
+ /* needed if last screen was the playing screen, invoked from level editor */
+ if (level_editor_test_game)
+ {
+ game_status = LEVELED;
+ DrawLevelEd();
+ return;
+ }
+
+ /* needed if last screen was the level editor */
+ UnmapLevelEditorControlButtons();
+
FadeSounds();
GetPlayerConfig();
LoadLevel(level_nr);
(x == 15 && level_nr < leveldir[leveldir_nr].levels - 1)) &&
button)
{
- static long level_delay = 0;
+ static unsigned long level_delay = 0;
int step = (button == 1 ? 1 : button == 2 ? 5 : 10);
int new_level_nr, old_level_nr = level_nr;
int font_color = (leveldir[leveldir_nr].readonly ? FC_RED : FC_YELLOW);
void HandleHelpScreen(int button)
{
- static long hs_delay = 0;
+ static unsigned long hs_delay = 0;
int num_helpscreen_els_pages =
(num_helpscreen_els + MAX_HELPSCREEN_ELS-1) / MAX_HELPSCREEN_ELS;
int button_released = !button;
void HandleTypeName(int newxpos, KeySym key)
{
static int xpos = 0, ypos = 2;
- unsigned char ascii;
if (newxpos)
{
if (((key >= XK_A && key <= XK_Z) || (key >= XK_a && key <= XK_z)) &&
xpos < MAX_NAMELEN - 1)
{
+ char ascii;
+
if (key >= XK_A && key <= XK_Z)
ascii = 'A' + (char)(key - XK_A);
- if (key >= XK_a && key <= XK_z)
+ else
ascii = 'a' + (char)(key - XK_a);
setup.player_name[xpos] = ascii;
{
static int choice = 3;
static int first_entry = 0;
- static long choose_delay = 0;
+ static unsigned long choose_delay = 0;
static int redraw = TRUE;
int x = (mx + 32 - SX) / 32, y = (my + 32 - SY) / 32;
+ int step = (button == 1 ? 1 : button == 2 ? 5 : 10);
int num_page_entries;
if (num_leveldirs <= MAX_LEVEL_SERIES_ON_SCREEN)
if (first_entry > 0 &&
(dy || DelayReached(&choose_delay, 150)))
{
+#if 0
first_entry--;
+#else
+ first_entry -= step;
+ if (first_entry < 0)
+ first_entry = 0;
+#endif
drawChooseLevelList(first_entry, num_page_entries);
drawChooseLevelInfo(first_entry);
DrawGraphic(0, choice - 1, GFX_KUGEL_ROT);
if (first_entry + num_page_entries < num_leveldirs &&
(dy || DelayReached(&choose_delay, 150)))
{
+#if 0
first_entry++;
+#else
+ first_entry += step;
+ if (first_entry + num_page_entries > num_leveldirs)
+ first_entry = num_leveldirs - num_page_entries;
+#endif
drawChooseLevelList(first_entry, num_page_entries);
drawChooseLevelInfo(first_entry + num_page_entries - 1);
DrawGraphic(0, choice - 1, GFX_KUGEL_ROT);
}
else if (y==7)
{
+#if 0
if (setup.double_buffering)
DrawText(SX+14*32, SY+yy*32,"off",FS_BIG,FC_BLUE);
else
DrawText(SX+14*32, SY+yy*32,"on ",FS_BIG,FC_YELLOW);
setup.double_buffering = !setup.double_buffering;
setup.direct_draw = !setup.double_buffering;
+#else
+ DrawText(SX+14*32, SY+yy*32,"on ",FS_BIG,FC_YELLOW);
+ setup.double_buffering = TRUE;
+ setup.direct_draw = !setup.double_buffering;
+#endif
}
else if (y==8)
{
if (y == 3 && ((x == 1 && !button) || ((x == 11 || x == 13) && button)))
{
- static long delay = 0;
+ static unsigned long delay = 0;
if (!DelayReached(&delay, 150))
goto out;