rnd-19981108-2
[rocksndiamonds.git] / src / screens.c
index 292f04afcaab32c8d40033b1c30270c0196073fd..139c6d9ca3f8d89569df3d3d612d19ae6d71bebc 100644 (file)
@@ -44,6 +44,7 @@ void DrawHeadline()
 void DrawMainMenu()
 {
   int i;
+  char *name_text = (!options.network && setup.team_mode ? "Team:" : "Name:");
 
   FadeSounds();
   GetPlayerConfig();
@@ -51,7 +52,7 @@ void DrawMainMenu()
 
   ClearWindow();
   DrawHeadline();
-  DrawText(SX + 32,    SY + 2*32, "Name:", FS_BIG, FC_GREEN);
+  DrawText(SX + 32,    SY + 2*32, name_text, FS_BIG, FC_GREEN);
   DrawText(SX + 6*32,  SY + 2*32, setup.alias_name, FS_BIG, FC_RED);
   DrawText(SX + 32,    SY + 3*32, "Level:", FS_BIG, FC_GREEN);
   DrawText(SX + 11*32, SY + 3*32, int2str(level_nr,3), FS_BIG,
@@ -70,14 +71,8 @@ void DrawMainMenu()
   DrawGraphic(10,3,GFX_PFEIL_L);
   DrawGraphic(14,3,GFX_PFEIL_R);
 
-  DrawText(SX+40+16,SY+326,"A Game by Artsoft Entertainment",FS_SMALL,FC_BLUE);
-
-  /*
-  DrawText(SX+40+16,SY+344,"Graphics: Deluxe Paint IV Amiga",
-          FS_SMALL,FC_BLUE);
-  DrawText(SX+60+16,SY+362,"Sounds: AudioMaster IV Amiga",
-          FS_SMALL,FC_BLUE);
-  */
+  DrawText(SX+56, SY+326, "A Game by Artsoft Entertainment",
+          FS_SMALL, FC_RED);
 
   if (leveldir[leveldir_nr].name)
   {
@@ -94,7 +89,7 @@ void DrawMainMenu()
 
   TapeStop();
   if (TAPE_IS_EMPTY(tape))
-    LoadLevelTape(level_nr);
+    LoadTape(level_nr);
   DrawCompleteVideoDisplay();
 
   OpenDoor(DOOR_CLOSE_1 | DOOR_OPEN_2);
@@ -173,7 +168,7 @@ void HandleMainMenu(int mx, int my, int dx, int dy, int button)
     DrawMicroLevel(MICROLEV_XPOS,MICROLEV_YPOS);
 
     TapeErase();
-    LoadLevelTape(level_nr);
+    LoadTape(level_nr);
     DrawCompleteVideoDisplay();
 
     /* needed because DrawMicroLevel() takes some time */
@@ -250,8 +245,7 @@ void HandleMainMenu(int mx, int my, int dx, int dy, int button)
          game_status = EXITGAME;
       }
 
-      if (!button)
-       redraw = TRUE;
+      redraw = TRUE;
     }
   }
   BackToFront();
@@ -828,7 +822,7 @@ void HandleChooseLevel(int mx, int my, int dx, int dy, int button)
       SaveLevelSetup();
 
       TapeErase();
-      LoadLevelTape(level_nr);
+      LoadTape(level_nr);
 
       game_status = MAINMENU;
       DrawMainMenu();
@@ -855,7 +849,7 @@ void DrawHallOfFame(int pos)
   DrawText(SX+64,SY+10,"Hall Of Fame",FS_BIG,FC_YELLOW);
   sprintf(txt,"HighScores of Level %d",level_nr);
   DrawText(SX+256-strlen(txt)*7,SY+48,txt,FS_SMALL,FC_RED);
-  for(y=0;y<MAX_SCORE_ENTRIES;y++)
+  for(y=0; y<15; y++)
   {
     DrawText(SX,SY+64+y*32,".................",FS_BIG,
             (y==pos ? FC_RED : FC_GREEN));
@@ -905,9 +899,9 @@ void DrawSetupScreen()
     { &setup.fading,           "Fading:"       },
     { &setup.quick_doors,      "Quick Doors:"  },
     { &setup.autorecord,       "Auto-Record:"  },
+    { &setup.team_mode,                "Team-Mode:"    },
     { NULL,                    "Input Devices" },
     { NULL,                    ""              },
-    { NULL,                    ""              },
     { NULL,                    "Exit"          },
     { NULL,                    "Save and exit" }
   };
@@ -1099,6 +1093,14 @@ void HandleSetupScreen(int mx, int my, int dx, int dy, int button)
        setup.autorecord = !setup.autorecord;
       }
       else if (y==13)
+      {
+       if (setup.team_mode)
+         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.team_mode = !setup.team_mode;
+      }
+      else if (y==14)
       {
        game_status = SETUPINPUT;
        DrawSetupInputScreen();
@@ -1944,14 +1946,14 @@ void HandleVideoButtons(int mx, int my, int button)
       TapeStop();
       if (TAPE_IS_EMPTY(tape))
       {
-       LoadLevelTape(level_nr);
+       LoadTape(level_nr);
        if (TAPE_IS_EMPTY(tape))
          Request("No tape for this level !",REQ_CONFIRM);
       }
       else
       {
        if (tape.changed)
-         SaveLevelTape(tape.level_nr);
+         SaveTape(tape.level_nr);
        TapeErase();
       }
       DrawCompleteVideoDisplay();