[Tux4kids-commits] r616 - in tuxmath/trunk: . data/images/factroids src

fongog-guest at alioth.debian.org fongog-guest at alioth.debian.org
Wed Aug 13 16:23:48 UTC 2008


Author: fongog-guest
Date: 2008-08-13 16:23:48 +0000 (Wed, 13 Aug 2008)
New Revision: 616

Modified:
   tuxmath/trunk/configure
   tuxmath/trunk/data/images/factroids/Makefile
   tuxmath/trunk/src/factroids.c
Log:
Number wrap added, and the tux console with few animations... coming soon.



Modified: tuxmath/trunk/configure
===================================================================
--- tuxmath/trunk/configure	2008-08-13 11:48:16 UTC (rev 615)
+++ tuxmath/trunk/configure	2008-08-13 16:23:48 UTC (rev 616)
@@ -17202,7 +17202,7 @@
 # Create Makefiles
 # ---------------------------------------------------------------
 
-ac_config_files="$ac_config_files Makefile data/Makefile data/fonts/Makefile data/images/Makefile data/images/backgrounds/Makefile data/images/cities/Makefile data/images/comets/Makefile data/images/icons/Makefile data/images/igloos/Makefile data/images/penguins/Makefile data/images/sprites/Makefile data/images/status/Makefile data/images/title/Makefile data/images/tux/Makefile data/images/factroids/Makefile data/missions/Makefile data/missions/arcade/Makefile data/missions/campaign/Makefile data/missions/campaign/ace/Makefile data/missions/campaign/cadet/Makefile data/missions/campaign/commando/Makefile data/missions/campaign/ranger/Makefile data/missions/campaign/scout/Makefile data/missions/lessons/Makefile data/sounds/Makefile doc/Makefile nsis/tuxmath.nsi nsis/tuxmath_with_conf.nsi src/Makefile intl/Makefile po/Makefile.in"
+ac_config_files="$ac_config_files Makefile data/Makefile data/fonts/Makefile data/images/Makefile data/images/backgrounds/Makefile data/images/cities/Makefile data/images/comets/Makefile data/images/icons/Makefile data/images/igloos/Makefile data/images/penguins/Makefile data/images/sprites/Makefile data/images/status/Makefile data/images/title/Makefile data/images/tux/Makefile data/images/factroids/Makefile data/missions/Makefile data/missions/arcade/Makefile data/missions/campaign/Makefile data/missions/campaign/ace/Makefile data/missions/campaign/cadet/Makefile data/missions/campaign/commando/Makefile data/missions/campaign/ranger/Makefile data/missions/campaign/scout/Makefile data/missions/lessons/Makefile data/missions/multiplay/Makefile data/sounds/Makefile doc/Makefile nsis/tuxmath.nsi nsis/tuxmath_with_conf.nsi src/Makefile intl/Makefile po/Makefile.in"
 
 
 cat >confcache <<\_ACEOF
@@ -17837,6 +17837,7 @@
     "data/missions/campaign/ranger/Makefile") CONFIG_FILES="$CONFIG_FILES data/missions/campaign/ranger/Makefile" ;;
     "data/missions/campaign/scout/Makefile") CONFIG_FILES="$CONFIG_FILES data/missions/campaign/scout/Makefile" ;;
     "data/missions/lessons/Makefile") CONFIG_FILES="$CONFIG_FILES data/missions/lessons/Makefile" ;;
+    "data/missions/multiplay/Makefile") CONFIG_FILES="$CONFIG_FILES data/missions/multiplay/Makefile" ;;
     "data/sounds/Makefile") CONFIG_FILES="$CONFIG_FILES data/sounds/Makefile" ;;
     "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
     "nsis/tuxmath.nsi") CONFIG_FILES="$CONFIG_FILES nsis/tuxmath.nsi" ;;

Modified: tuxmath/trunk/data/images/factroids/Makefile
===================================================================
--- tuxmath/trunk/data/images/factroids/Makefile	2008-08-13 11:48:16 UTC (rev 615)
+++ tuxmath/trunk/data/images/factroids/Makefile	2008-08-13 16:23:48 UTC (rev 616)
@@ -238,7 +238,8 @@
 		 star3.png	 \
 		 factoroids.png  \
 		 factors.png	 \
-		 tux.png
+		 tux.png	 \
+  		 good.png
 
 all: all-am
 

Modified: tuxmath/trunk/src/factroids.c
===================================================================
--- tuxmath/trunk/src/factroids.c	2008-08-13 11:48:16 UTC (rev 615)
+++ tuxmath/trunk/src/factroids.c	2008-08-13 16:23:48 UTC (rev 616)
@@ -168,6 +168,7 @@
 static int tux_pressing;
 static int doing_answer;
 static int level_start_wait;
+static int tux_img;
 //static int FF_level;
 
 static asteroid_type* asteroid = NULL;
@@ -190,6 +191,8 @@
 
 static void FF_draw(void);
 static void FF_draw_bkgr(void);
+static void FF_draw_led_console(void);
+static void draw_console_image(int i);
 
 static void FF_add_level(void);
 static int FF_over(int game_status);
@@ -213,7 +216,8 @@
   
   quit = 0;
   counter = 0;
-  
+  tux_img=IMG_TUX_CONSOLE1;
+
   #ifdef TUXMATH_DEBUG
      fprintf(stderr, "Entering factors():\n");
   #endif
@@ -230,7 +234,13 @@
   while (game_status==GAME_IN_PROGRESS){
       last_time = SDL_GetTicks();
       counter++; 
-   
+    
+      if(counter%15==0)
+        if(tux_img<IMG_TUX_CONSOLE4)
+          tux_img++;
+        else 
+          tux_img=IMG_TUX_CONSOLE1;
+
     game_handle_user_events();
 
     FF_handle_ship();
@@ -283,7 +293,7 @@
   
   quit = 0;
   counter = 0;
-  
+  tux_img=IMG_TUX_CONSOLE1;
 
   
   #ifdef TUXMATH_DEBUG
@@ -305,6 +315,12 @@
       last_time = SDL_GetTicks();
       counter++;
       
+      if(counter%15==0)
+        if(tux_img<IMG_TUX_CONSOLE4)
+          tux_img++;
+        else 
+          tux_img=IMG_TUX_CONSOLE1;
+
       game_handle_user_events();
 
       FF_handle_ship();
@@ -722,7 +738,19 @@
      if(FF_game==FACTOROIDS_GAME)
      {   
        sprintf(str, "%.1d", asteroid[i].fact_number);
-       draw_nums(str, asteroid[i].x+20,asteroid[i].y+10);
+       if((asteroid[i].y+10)>23 && (asteroid[i].y+30)<screen->h){
+         if((asteroid[i].x+20)>0 && (asteroid[i].x+40)<screen->w)
+           draw_nums(str, asteroid[i].x+20,asteroid[i].y+10);
+	 else if((asteroid[i].x+20)<=0)
+           draw_nums(str, 20, asteroid[i].y+10);
+	 else if((asteroid[i].x+40)<=screen->w)
+           draw_nums(str, screen->w-20, asteroid[i].y+10);
+       }
+       else if((asteroid[i].y+10)<=23)
+	 draw_nums(str, asteroid[i].x+20, 23);
+       else if((asteroid[i].y+30)>=screen->h)
+	 draw_nums(str, asteroid[i].x+20, screen->h-30);
+        
      }
      else if (FF_game==FRACTIONS_GAME)
      {
@@ -792,10 +820,11 @@
 
     /************* Draw pre answer ************/
 
-  
+   
     sprintf(str, "%.3d", num);
     draw_numbers(str, ((screen->w)/2)-50, (screen->h)-30);
- 
+    FF_draw_led_console();
+    draw_console_image(tux_img);
     /************** Draw lives ***************/
    dest.y=screen->h;
    dest.x=0;
@@ -817,6 +846,84 @@
    }
 }
 
+/*Modified from game.c*/
+void FF_draw_led_console(void)
+{
+  int i;
+  SDL_Rect src, dest;
+  int y;
+
+  /* draw new console image with "monitor" for LED numbers: */
+  draw_console_image(IMG_CONSOLE_LED);
+  /* set y to draw LED numbers into Tux's "monitor": */
+  y = (screen->h
+     - images[IMG_CONSOLE_LED]->h
+     + 4);  /* "monitor" has 4 pixel margin */
+
+  /* begin drawing so as to center display depending on whether minus */
+  /* sign needed (4 digit slots) or not (3 digit slots) DSB */
+  if (MC_GetOpt(ALLOW_NEGATIVES) )
+    dest.x = ((screen->w - ((images[IMG_LEDNUMS]->w) / 10) * 4) / 2);
+  else
+    dest.x = ((screen->w - ((images[IMG_LEDNUMS]->w) / 10) * 3) / 2);
+
+  for (i = -1; i < MC_MAX_DIGITS; i++) /* -1 is special case to allow minus sign */
+                              /* with minimal modification of existing code DSB */
+  {
+    if (-1 == i)
+    {
+      if (MC_GetOpt(ALLOW_NEGATIVES))
+      {
+        if (neg_answer_picked)
+          src.x =  (images[IMG_LED_NEG_SIGN]->w) / 2;
+        else
+          src.x = 0;
+
+        src.y = 0;
+        src.w = (images[IMG_LED_NEG_SIGN]->w) / 2;
+        src.h = images[IMG_LED_NEG_SIGN]->h;
+
+        dest.y = y;
+        dest.w = src.w;
+        dest.h = src.h;
+
+        SDL_BlitSurface(images[IMG_LED_NEG_SIGN], &src, screen, &dest);
+        /* move "cursor" */
+        dest.x += src.w;
+      }
+    }
+    else
+    {
+      src.x = digits[i] * ((images[IMG_LEDNUMS]->w) / 10);
+      src.y = 0;
+      src.w = (images[IMG_LEDNUMS]->w) / 10;
+      src.h = images[IMG_LEDNUMS]->h;
+
+      /* dest.x already set */
+      dest.y = y;
+      dest.w = src.w;
+      dest.h = src.h;
+
+      SDL_BlitSurface(images[IMG_LEDNUMS], &src, screen, &dest);
+      /* move "cursor" */
+      dest.x += src.w;
+    }
+  }
+}
+
+/* Draw image at lower center of screen: */
+void draw_console_image(int i)
+{
+  SDL_Rect dest;
+
+  dest.x = (screen->w - images[i]->w) / 2;
+  dest.y = (screen->h - images[i]->h);
+  dest.w = images[i]->w;
+  dest.h = images[i]->h;
+
+  SDL_BlitSurface(images[i], NULL, screen, &dest);
+}
+
 static void FF_draw_bkgr(void)
 {
 




More information about the Tux4kids-commits mailing list