[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