From 45d3deb083af0a1e0dc1102140f9e6d2b8d2f12d Mon Sep 17 00:00:00 2001 From: sam Date: Sun, 16 Nov 2003 00:33:35 +0000 Subject: [PATCH] * Renamed libee to libcaca. Far less collisions. git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/ttyvaders/trunk@186 92316355-f0b4-4df1-b90c-862c8a59935f --- Makefile.am | 2 +- TODO | 2 +- configure.ac | 2 +- {libee => libcaca}/Makefile.am | 12 +- {libee => libcaca}/blit.c | 20 +- {libee => libcaca}/box.c | 46 +-- libee/ee.c => libcaca/caca.c | 80 ++--- libcaca/caca.h | 116 +++++++ .../caca_internals.h | 10 +- {libee => libcaca}/conic.c | 42 +-- {libee => libcaca}/graphics.c | 62 ++-- {libee => libcaca}/io.c | 8 +- {libee => libcaca}/line.c | 38 +-- {libee => libcaca}/math.c | 12 +- {libee => libcaca}/sprite.c | 50 +-- {libee => libcaca}/triangle.c | 34 +- libee/ee.h | 116 ------- src/Makefile.am | 4 +- src/aliens.c | 20 +- src/bonus.c | 12 +- src/box.c | 28 +- src/ceo.c | 6 +- src/collide.c | 4 +- src/common.h | 2 +- src/explosions.c | 40 +-- src/intro.c | 38 +-- src/main.c | 20 +- src/overlay.c | 36 +-- src/player.c | 6 +- src/starfield.c | 22 +- src/tunnel.c | 20 +- src/weapons.c | 198 ++++++------ test/Makefile.am | 8 +- test/demo.c | 302 +++++++++--------- test/spritedit.c | 60 ++-- 35 files changed, 739 insertions(+), 739 deletions(-) rename {libee => libcaca}/Makefile.am (66%) rename {libee => libcaca}/blit.c (83%) rename {libee => libcaca}/box.c (70%) rename libee/ee.c => libcaca/caca.c (78%) create mode 100644 libcaca/caca.h rename libee/ee_internals.h => libcaca/caca_internals.h (86%) rename {libee => libcaca}/conic.c (78%) rename {libee => libcaca}/graphics.c (63%) rename {libee => libcaca}/io.c (92%) rename {libee => libcaca}/line.c (89%) rename {libee => libcaca}/math.c (88%) rename {libee => libcaca}/sprite.c (82%) rename {libee => libcaca}/triangle.c (71%) delete mode 100644 libee/ee.h diff --git a/Makefile.am b/Makefile.am index a2a95e4..6934ebd 100644 --- a/Makefile.am +++ b/Makefile.am @@ -2,7 +2,7 @@ # Automake targets and declarations for ttyvaders ############################################################################### -SUBDIRS = libee test src +SUBDIRS = libcaca test src DIST_SUBDIRS = $(SUBDIRS) autotools data debian EXTRA_DIST = BUGS doc/shapes.txt bootstrap diff --git a/TODO b/TODO index 2185f08..44db6d5 100644 --- a/TODO +++ b/TODO @@ -1,6 +1,6 @@ $Id$ -TODO for libee +TODO for libcaca o Sprite library diff --git a/configure.ac b/configure.ac index 007ca23..463dbab 100644 --- a/configure.ac +++ b/configure.ac @@ -60,7 +60,7 @@ CFLAGS="${CFLAGS} -Wall -Wpointer-arith -Wcast-align -Wcast-qual -Wstrict-protot AC_OUTPUT([ Makefile - libee/Makefile + libcaca/Makefile test/Makefile src/Makefile autotools/Makefile diff --git a/libee/Makefile.am b/libcaca/Makefile.am similarity index 66% rename from libee/Makefile.am rename to libcaca/Makefile.am index 2d2e130..988a03b 100644 --- a/libee/Makefile.am +++ b/libcaca/Makefile.am @@ -1,12 +1,12 @@ ############################################################################### -# Automake targets and declarations for libee +# Automake targets and declarations for libcaca ############################################################################### -lib_LIBRARIES = libee.a -libee_a_SOURCES = \ - ee.c \ - ee.h \ - ee_internals.h \ +lib_LIBRARIES = libcaca.a +libcaca_a_SOURCES = \ + caca.c \ + caca.h \ + caca_internals.h \ graphics.c \ io.c \ math.c \ diff --git a/libee/blit.c b/libcaca/blit.c similarity index 83% rename from libee/blit.c rename to libcaca/blit.c index 7584b09..44712d3 100644 --- a/libee/blit.c +++ b/libcaca/blit.c @@ -1,5 +1,5 @@ /* - * libee ASCII-Art library + * libcaca ASCII-Art library * Copyright (c) 2002, 2003 Sam Hocevar * All Rights Reserved * @@ -30,11 +30,11 @@ typedef unsigned char uint8_t; #include -#include "ee.h" -#include "ee_internals.h" +#include "caca.h" +#include "caca_internals.h" #include -void ee_blit(int x1, int y1, int x2, int y2, void *pixels, int w, int h) +void caca_blit(int x1, int y1, int x2, int y2, void *pixels, int w, int h) { char foo[] = { ' ', '.', ':', ';', '=', '$', '%', '@', '#', '8', 'W' }; int x, y, pitch; @@ -51,8 +51,8 @@ void ee_blit(int x1, int y1, int x2, int y2, void *pixels, int w, int h) pitch = (3 * w + 3) / 4 * 4; - for(y = y1 > 0 ? y1 : 0; y <= y2 && y <= ee_get_height(); y++) - for(x = x1 > 0 ? x1 : 0; x <= x2 && x <= ee_get_width(); x++) + for(y = y1 > 0 ? y1 : 0; y <= y2 && y <= caca_get_height(); y++) + for(x = x1 > 0 ? x1 : 0; x <= x2 && x <= caca_get_width(); x++) { int fromx = w * (x - x1) / (x2 - x1 + 1); int fromy = h * (y - y1) / (y2 - y1 + 1); @@ -62,7 +62,7 @@ void ee_blit(int x1, int y1, int x2, int y2, void *pixels, int w, int h) if(r == g && g == b) { - ee_set_color(EE_LIGHTGRAY); + caca_set_color(EE_LIGHTGRAY); } else { @@ -88,15 +88,15 @@ void ee_blit(int x1, int y1, int x2, int y2, void *pixels, int w, int h) if( hue < 0 ) hue += 360; - ee_set_color(foo_colors[(int)(hue + 30) / 60]); + caca_set_color(foo_colors[(int)(hue + 30) / 60]); } else { - ee_set_color(EE_LIGHTGRAY); + caca_set_color(EE_LIGHTGRAY); } } - ee_putchar(x, y, foo[(r + g + b) / 3 / 25]); + caca_putchar(x, y, foo[(r + g + b) / 3 / 25]); } } diff --git a/libee/box.c b/libcaca/box.c similarity index 70% rename from libee/box.c rename to libcaca/box.c index a034b3f..ee7966f 100644 --- a/libee/box.c +++ b/libcaca/box.c @@ -1,5 +1,5 @@ /* - * libee ASCII-Art library + * libcaca ASCII-Art library * Copyright (c) 2002, 2003 Sam Hocevar * All Rights Reserved * @@ -24,18 +24,18 @@ #include -#include "ee.h" -#include "ee_internals.h" +#include "caca.h" +#include "caca_internals.h" -void ee_draw_box(int x1, int y1, int x2, int y2, char c) +void caca_draw_box(int x1, int y1, int x2, int y2, char c) { - ee_draw_line(x1, y1, x1, y2, c); - ee_draw_line(x1, y2, x2, y2, c); - ee_draw_line(x2, y2, x2, y1, c); - ee_draw_line(x2, y1, x1, y1, c); + caca_draw_line(x1, y1, x1, y2, c); + caca_draw_line(x1, y2, x2, y2, c); + caca_draw_line(x2, y2, x2, y1, c); + caca_draw_line(x2, y1, x1, y1, c); } -void ee_draw_thin_box(int x1, int y1, int x2, int y2) +void caca_draw_thin_box(int x1, int y1, int x2, int y2) { int x, y, xmax, ymax; @@ -51,8 +51,8 @@ void ee_draw_thin_box(int x1, int y1, int x2, int y2) y1 = y2; y2 = tmp; } - xmax = ee_get_width() - 1; - ymax = ee_get_height() - 1; + xmax = caca_get_width() - 1; + ymax = caca_get_height() - 1; if(x2 < 0 || y2 < 0 || x1 > xmax || y1 > ymax) return; @@ -60,35 +60,35 @@ void ee_draw_thin_box(int x1, int y1, int x2, int y2) /* Draw edges */ if(y1 >= 0) for(x = x1 < 0 ? 1 : x1 + 1; x < x2 && x < xmax; x++) - ee_putchar(x, y1, '-'); + caca_putchar(x, y1, '-'); if(y2 <= ymax) for(x = x1 < 0 ? 1 : x1 + 1; x < x2 && x < xmax; x++) - ee_putchar(x, y2, '-'); + caca_putchar(x, y2, '-'); if(x1 >= 0) for(y = y1 < 0 ? 1 : y1 + 1; y < y2 && y < ymax; y++) - ee_putchar(x1, y, '|'); + caca_putchar(x1, y, '|'); if(x2 <= xmax) for(y = y1 < 0 ? 1 : y1 + 1; y < y2 && y < ymax; y++) - ee_putchar(x2, y, '|'); + caca_putchar(x2, y, '|'); /* Draw corners */ if(x1 >= 0 && y1 >= 0) - ee_putchar(x1, y1, ','); + caca_putchar(x1, y1, ','); if(x1 >= 0 && y2 <= ymax) - ee_putchar(x1, y2, '`'); + caca_putchar(x1, y2, '`'); if(x2 <= xmax && y1 >= 0) - ee_putchar(x2, y1, '.'); + caca_putchar(x2, y1, '.'); if(x2 <= xmax && y2 <= ymax) - ee_putchar(x2, y2, '\''); + caca_putchar(x2, y2, '\''); } -void ee_fill_box(int x1, int y1, int x2, int y2, char c) +void caca_fill_box(int x1, int y1, int x2, int y2, char c) { int x, y, xmax, ymax; @@ -104,8 +104,8 @@ void ee_fill_box(int x1, int y1, int x2, int y2, char c) y1 = y2; y2 = tmp; } - xmax = ee_get_width() - 1; - ymax = ee_get_height() - 1; + xmax = caca_get_width() - 1; + ymax = caca_get_height() - 1; if(x2 < 0 || y2 < 0 || x1 > xmax || y1 > ymax) return; @@ -117,6 +117,6 @@ void ee_fill_box(int x1, int y1, int x2, int y2, char c) for(y = y1; y <= y2; y++) for(x = x1; x <= x2; x++) - ee_putchar(x, y, c); + caca_putchar(x, y, c); } diff --git a/libee/ee.c b/libcaca/caca.c similarity index 78% rename from libee/ee.c rename to libcaca/caca.c index 6028c3a..86e3f08 100644 --- a/libee/ee.c +++ b/libcaca/caca.c @@ -1,5 +1,5 @@ /* - * libee ASCII-Art library + * libcaca ASCII-Art library * Copyright (c) 2002, 2003 Sam Hocevar * All Rights Reserved * @@ -42,24 +42,24 @@ #include #include -#include "ee.h" -#include "ee_internals.h" +#include "caca.h" +#include "caca_internals.h" -static unsigned int _ee_delay; -static unsigned int _ee_rendertime; -char *_ee_empty_line; -char *_ee_scratch_line; +static unsigned int _caca_delay; +static unsigned int _caca_rendertime; +char *_caca_empty_line; +char *_caca_scratch_line; #if defined(USE_NCURSES) -int _ee_attr[16]; +int _caca_attr[16]; #endif #if defined(USE_CONIO) static struct text_info ti; -char *_ee_screen; +char *_caca_screen; #endif -int ee_init(void) +int caca_init(void) { #if defined(USE_SLANG) static char *slang_colors[16] = @@ -143,38 +143,38 @@ int ee_init(void) for(i = 0; i < 8; i++) { - _ee_attr[i] = COLOR_PAIR(1 + i); - _ee_attr[i + 8] = A_BOLD | COLOR_PAIR(1 + i); + _caca_attr[i] = COLOR_PAIR(1 + i); + _caca_attr[i + 8] = A_BOLD | COLOR_PAIR(1 + i); } #elif defined(USE_CONIO) gettextinfo(&ti); - _ee_screen = malloc(2 * ti.screenwidth * ti.screenheight); - if(_ee_screen == NULL) + _caca_screen = malloc(2 * ti.screenwidth * ti.screenheight); + if(_caca_screen == NULL) return -1; _wscroll = 0; _setcursortype(_NOCURSOR); clrscr(); # if defined(SCREENUPDATE_IN_PC_H) - ScreenRetrieve(_ee_screen); + ScreenRetrieve(_caca_screen); # else /* FIXME */ # endif #endif - _ee_empty_line = malloc(ee_get_width() + 1); - memset(_ee_empty_line, ' ', ee_get_width()); - _ee_empty_line[ee_get_width()] = '\0'; + _caca_empty_line = malloc(caca_get_width() + 1); + memset(_caca_empty_line, ' ', caca_get_width()); + _caca_empty_line[caca_get_width()] = '\0'; - _ee_scratch_line = malloc(ee_get_width() + 1); + _caca_scratch_line = malloc(caca_get_width() + 1); - _ee_delay = 0; - _ee_rendertime = 0; + _caca_delay = 0; + _caca_rendertime = 0; return 0; } -unsigned int ee_get_width(void) +unsigned int caca_get_width(void) { #if defined(USE_SLANG) return SLtt_Screen_Cols; @@ -185,7 +185,7 @@ unsigned int ee_get_width(void) #endif } -unsigned int ee_get_height(void) +unsigned int caca_get_height(void) { #if defined(USE_SLANG) return SLtt_Screen_Rows; @@ -196,17 +196,17 @@ unsigned int ee_get_height(void) #endif } -void ee_set_delay(unsigned int usec) +void caca_set_delay(unsigned int usec) { - _ee_delay = usec; + _caca_delay = usec; } -unsigned int ee_get_rendertime(void) +unsigned int caca_get_rendertime(void) { - return _ee_rendertime; + return _caca_rendertime; } -const char *ee_get_color_name(unsigned int color) +const char *caca_get_color_name(unsigned int color) { static const char *color_names[16] = { @@ -234,7 +234,7 @@ const char *ee_get_color_name(unsigned int color) return color_names[color]; } -static unsigned int _ee_getticks(void) +static unsigned int _caca_getticks(void) { static unsigned int last_sec = 0, last_usec = 0; @@ -254,11 +254,11 @@ static unsigned int _ee_getticks(void) return ticks; } -void ee_refresh(void) +void caca_refresh(void) { #define IDLE_USEC 10000 static unsigned int lastticks = 0; - unsigned int ticks = lastticks + _ee_getticks(); + unsigned int ticks = lastticks + _caca_getticks(); #if defined(USE_SLANG) SLsmg_refresh(); @@ -266,28 +266,28 @@ void ee_refresh(void) refresh(); #elif defined(USE_CONIO) # if defined(SCREENUPDATE_IN_PC_H) - ScreenUpdate(_ee_screen); + ScreenUpdate(_caca_screen); # else /* FIXME */ # endif #endif - /* Wait until _ee_delay + time of last call */ - ticks += _ee_getticks(); - for(; ticks < _ee_delay - IDLE_USEC; ticks += _ee_getticks()) + /* Wait until _caca_delay + time of last call */ + ticks += _caca_getticks(); + for(; ticks < _caca_delay - IDLE_USEC; ticks += _caca_getticks()) usleep(IDLE_USEC); /* Update the sliding mean of the render time */ - _ee_rendertime = (7 * _ee_rendertime + ticks) / 8; + _caca_rendertime = (7 * _caca_rendertime + ticks) / 8; - lastticks = ticks - _ee_delay; + lastticks = ticks - _caca_delay; /* If we drifted too much, it's bad, bad, bad. */ - if(lastticks > _ee_delay) + if(lastticks > _caca_delay) lastticks = 0; } -void ee_end(void) +void caca_end(void) { #if defined(USE_SLANG) SLtt_set_cursor_visibility(1); @@ -300,7 +300,7 @@ void ee_end(void) _wscroll = 1; textcolor((enum COLORS)WHITE); textbackground((enum COLORS)BLACK); - gotoxy(ee_get_width(), ee_get_height()); + gotoxy(caca_get_width(), caca_get_height()); cputs("\r\n"); _setcursortype(_NORMALCURSOR); #endif diff --git a/libcaca/caca.h b/libcaca/caca.h new file mode 100644 index 0000000..cc0cee8 --- /dev/null +++ b/libcaca/caca.h @@ -0,0 +1,116 @@ +/* + * libcaca ASCII-Art library + * Copyright (c) 2002, 2003 Sam Hocevar + * All Rights Reserved + * + * $Id$ + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#ifndef __EE_H__ +#define __EE_H__ + +#ifdef __cplusplus +extern "C" +{ +#endif + +/* + * Colors + */ +enum caca_colors +{ + EE_BLACK = 0, + EE_BLUE = 1, + EE_GREEN = 2, + EE_CYAN = 3, + EE_RED = 4, + EE_MAGENTA = 5, + EE_BROWN = 6, + EE_LIGHTGRAY = 7, + EE_DARKGRAY = 8, + EE_LIGHTBLUE = 9, + EE_LIGHTGREEN = 10, + EE_LIGHTCYAN = 11, + EE_LIGHTRED = 12, + EE_LIGHTMAGENTA = 13, + EE_YELLOW = 14, + EE_WHITE = 15 +}; + +/* + * Types + */ +struct caca_sprite; + +/* + * Prototypes + */ +int caca_init(void); +void caca_set_delay(unsigned int); +unsigned int caca_get_rendertime(void); +unsigned int caca_get_width(void); +unsigned int caca_get_height(void); +const char *caca_get_color_name(unsigned int); +void caca_refresh(void); +void caca_end(void); + +char caca_get_key(void); + +void caca_set_color(int); +int caca_get_color(void); +void caca_putchar(int, int, char); +void caca_putstr(int, int, const char *); +void caca_printf(int, int, const char *, ...); +void caca_clear(void); + +void caca_draw_line(int, int, int, int, char); +void caca_draw_polyline(const int[], const int[], int, char); +void caca_draw_thin_line(int, int, int, int); +void caca_draw_thin_polyline(const int[], const int[], int); + +void caca_draw_circle(int, int, int, char); +void caca_draw_ellipse(int, int, int, int, char); +void caca_draw_thin_ellipse(int, int, int, int); +void caca_fill_ellipse(int, int, int, int, char); + +void caca_draw_box(int, int, int, int, char); +void caca_draw_thin_box(int, int, int, int); +void caca_fill_box(int, int, int, int, char); + +void caca_draw_triangle(int, int, int, int, int, int, char); +void caca_draw_thin_triangle(int, int, int, int, int, int); +void caca_fill_triangle(int, int, int, int, int, int, char); + +int caca_rand(int, int); +unsigned int caca_sqrt(unsigned int); + +struct caca_sprite * caca_load_sprite(const char *); +int caca_get_sprite_frames(struct caca_sprite *); +int caca_get_sprite_width(struct caca_sprite *, int); +int caca_get_sprite_height(struct caca_sprite *, int); +int caca_get_sprite_dx(struct caca_sprite *, int); +int caca_get_sprite_dy(struct caca_sprite *, int); +void caca_draw_sprite(int, int, struct caca_sprite *, int); +void caca_free_sprite(struct caca_sprite *); + +void caca_blit(int, int, int, int, void *, int, int); + +#ifdef __cplusplus +} +#endif + +#endif /* __EE_H__ */ diff --git a/libee/ee_internals.h b/libcaca/caca_internals.h similarity index 86% rename from libee/ee_internals.h rename to libcaca/caca_internals.h index 6148fa2..2a8dc02 100644 --- a/libee/ee_internals.h +++ b/libcaca/caca_internals.h @@ -1,5 +1,5 @@ /* - * libee ASCII-Art library + * libcaca ASCII-Art library * Copyright (c) 2002, 2003 Sam Hocevar * All Rights Reserved * @@ -24,14 +24,14 @@ #define __EE_INTERNALS_H__ #if defined(USE_NCURSES) -extern int _ee_attr[]; +extern int _caca_attr[]; #endif #if defined(USE_CONIO) -extern char *_ee_screen; +extern char *_caca_screen; #endif -extern char *_ee_empty_line; -extern char *_ee_scratch_line; +extern char *_caca_empty_line; +extern char *_caca_scratch_line; #endif /* __EE_INTERNALS_H__ */ diff --git a/libee/conic.c b/libcaca/conic.c similarity index 78% rename from libee/conic.c rename to libcaca/conic.c index 4b2c78a..bcbb5df 100644 --- a/libee/conic.c +++ b/libcaca/conic.c @@ -1,5 +1,5 @@ /* - * libee ASCII-Art library + * libcaca ASCII-Art library * Copyright (c) 2002, 2003 Sam Hocevar * All Rights Reserved * @@ -30,12 +30,12 @@ typedef unsigned char uint8_t; #include -#include "ee.h" -#include "ee_internals.h" +#include "caca.h" +#include "caca_internals.h" static void ellipsepoints(int, int, int, int, char); -void ee_draw_circle(int x, int y, int r, char c) +void caca_draw_circle(int x, int y, int r, char c) { int test, dx, dy; @@ -49,7 +49,7 @@ void ee_draw_circle(int x, int y, int r, char c) } } -void ee_fill_ellipse(int xo, int yo, int a, int b, char c) +void caca_fill_ellipse(int xo, int yo, int a, int b, char c) { int d2; int x = 0; @@ -65,15 +65,15 @@ void ee_fill_ellipse(int xo, int yo, int a, int b, char c) else { d1 += b*b*(2*x*1) + a*a*(-2*y+2); - ee_draw_line(xo - x, yo - y, xo + x, yo - y, c); - ee_draw_line(xo - x, yo + y, xo + x, yo + y, c); + caca_draw_line(xo - x, yo - y, xo + x, yo - y, c); + caca_draw_line(xo - x, yo + y, xo + x, yo + y, c); y--; } x++; } - ee_draw_line(xo - x, yo - y, xo + x, yo - y, c); - ee_draw_line(xo - x, yo + y, xo + x, yo + y, c); + caca_draw_line(xo - x, yo - y, xo + x, yo - y, c); + caca_draw_line(xo - x, yo + y, xo + x, yo + y, c); d2 = b*b*(x+0.5)*(x+0.5) + a*a*(y-1)*(y-1) - a*a*b*b; while(y > 0) @@ -89,12 +89,12 @@ void ee_fill_ellipse(int xo, int yo, int a, int b, char c) } y--; - ee_draw_line(xo - x, yo - y, xo + x, yo - y, c); - ee_draw_line(xo - x, yo + y, xo + x, yo + y, c); + caca_draw_line(xo - x, yo - y, xo + x, yo - y, c); + caca_draw_line(xo - x, yo + y, xo + x, yo + y, c); } } -void ee_draw_ellipse(int xo, int yo, int a, int b, char c) +void caca_draw_ellipse(int xo, int yo, int a, int b, char c) { int d2; int x = 0; @@ -136,7 +136,7 @@ void ee_draw_ellipse(int xo, int yo, int a, int b, char c) } } -void ee_draw_thin_ellipse(int xo, int yo, int a, int b) +void caca_draw_thin_ellipse(int xo, int yo, int a, int b) { /* FIXME: this is not correct */ int d2; @@ -183,25 +183,25 @@ static void ellipsepoints(int xo, int yo, int x, int y, char c) { uint8_t b = 0; - if(xo + x >= 0 && xo + x < ee_get_width()) + if(xo + x >= 0 && xo + x < caca_get_width()) b |= 0x1; - if(xo - x >= 0 && xo - x < ee_get_width()) + if(xo - x >= 0 && xo - x < caca_get_width()) b |= 0x2; - if(yo + y >= 0 && yo + y < ee_get_height()) + if(yo + y >= 0 && yo + y < caca_get_height()) b |= 0x4; - if(yo - y >= 0 && yo - y < ee_get_height()) + if(yo - y >= 0 && yo - y < caca_get_height()) b |= 0x8; if((b & (0x1|0x4)) == (0x1|0x4)) - ee_putchar(xo + x, yo + y, c); + caca_putchar(xo + x, yo + y, c); if((b & (0x2|0x4)) == (0x2|0x4)) - ee_putchar(xo - x, yo + y, c); + caca_putchar(xo - x, yo + y, c); if((b & (0x1|0x8)) == (0x1|0x8)) - ee_putchar(xo + x, yo - y, c); + caca_putchar(xo + x, yo - y, c); if((b & (0x2|0x8)) == (0x2|0x8)) - ee_putchar(xo - x, yo - y, c); + caca_putchar(xo - x, yo - y, c); } diff --git a/libee/graphics.c b/libcaca/graphics.c similarity index 63% rename from libee/graphics.c rename to libcaca/graphics.c index ca86644..d8ac046 100644 --- a/libee/graphics.c +++ b/libcaca/graphics.c @@ -1,5 +1,5 @@ /* - * libee ASCII-Art library + * libcaca ASCII-Art library * Copyright (c) 2002, 2003 Sam Hocevar * All Rights Reserved * @@ -36,34 +36,34 @@ #include #include -#include "ee.h" -#include "ee_internals.h" +#include "caca.h" +#include "caca_internals.h" -static int _ee_color = 0; +static int _caca_color = 0; -void ee_set_color(int color) +void caca_set_color(int color) { if(color < 0 || color > 15) return; - _ee_color = color; + _caca_color = color; #if defined(USE_SLANG) SLsmg_set_color(color + 1); #elif defined(USE_NCURSES) - attrset(_ee_attr[color]); + attrset(_caca_attr[color]); #elif defined(USE_CONIO) textcolor(color); #endif } -int ee_get_color(void) +int caca_get_color(void) { - return _ee_color; + return _caca_color; } -void ee_putchar(int x, int y, char c) +void caca_putchar(int x, int y, char c) { - if(x < 0 || x >= ee_get_width() || y < 0 || y >= ee_get_height()) + if(x < 0 || x >= caca_get_width() || y < 0 || y >= caca_get_height()) return; #if defined(USE_SLANG) @@ -73,18 +73,18 @@ void ee_putchar(int x, int y, char c) move(y, x); addch(c); #elif defined(USE_CONIO) - _ee_screen[2 * (x + y * ee_get_width())] = c; - _ee_screen[2 * (x + y * ee_get_width()) + 1] = _ee_color; + _caca_screen[2 * (x + y * caca_get_width())] = c; + _caca_screen[2 * (x + y * caca_get_width()) + 1] = _caca_color; // gotoxy(x + 1, y + 1); // putch(c); #endif } -void ee_putstr(int x, int y, const char *s) +void caca_putstr(int x, int y, const char *s) { int len; - if(y < 0 || y >= ee_get_height() || x >= ee_get_width()) + if(y < 0 || y >= caca_get_height() || x >= caca_get_width()) return; len = strlen(s); @@ -98,11 +98,11 @@ void ee_putstr(int x, int y, const char *s) x = 0; } - if(x + len >= ee_get_width()) + if(x + len >= caca_get_width()) { - memcpy(_ee_scratch_line, s, ee_get_width() - x); - _ee_scratch_line[ee_get_width() - x] = '\0'; - s = _ee_scratch_line; + memcpy(_caca_scratch_line, s, caca_get_width() - x); + _caca_scratch_line[caca_get_width() - x] = '\0'; + s = _caca_scratch_line; } #if defined(USE_SLANG) @@ -112,46 +112,46 @@ void ee_putstr(int x, int y, const char *s) move(y, x); addstr(s); #elif defined(USE_CONIO) - char *buf = _ee_screen + 2 * (x + y * ee_get_width()); + char *buf = _caca_screen + 2 * (x + y * caca_get_width()); while(*s) { *buf++ = *s++; - *buf++ = _ee_color; + *buf++ = _caca_color; } // gotoxy(x + 1, y + 1); // cputs(s); #endif } -void ee_printf(int x, int y, const char *format, ...) +void caca_printf(int x, int y, const char *format, ...) { char tmp[BUFSIZ]; char *buf = tmp; va_list args; - if(y < 0 || y >= ee_get_height() || x >= ee_get_width()) + if(y < 0 || y >= caca_get_height() || x >= caca_get_width()) return; - if(ee_get_width() - x + 1 > BUFSIZ) - buf = malloc(ee_get_width() - x + 1); + if(caca_get_width() - x + 1 > BUFSIZ) + buf = malloc(caca_get_width() - x + 1); va_start(args, format); - vsnprintf(buf, ee_get_width() - x + 1, format, args); - buf[ee_get_width() - x] = '\0'; + vsnprintf(buf, caca_get_width() - x + 1, format, args); + buf[caca_get_width() - x] = '\0'; va_end(args); - ee_putstr(x, y, buf); + caca_putstr(x, y, buf); if(buf != tmp) free(buf); } -void ee_clear(void) +void caca_clear(void) { /* We could use SLsmg_cls() etc., but drawing empty lines is much faster */ - int y = ee_get_height(); + int y = caca_get_height(); while(y--) - ee_putstr(0, y, _ee_empty_line); + caca_putstr(0, y, _caca_empty_line); } diff --git a/libee/io.c b/libcaca/io.c similarity index 92% rename from libee/io.c rename to libcaca/io.c index 75aea9b..c4436ac 100644 --- a/libee/io.c +++ b/libcaca/io.c @@ -1,5 +1,5 @@ /* - * libee ASCII-Art library + * libcaca ASCII-Art library * Copyright (c) 2002, 2003 Sam Hocevar * All Rights Reserved * @@ -32,10 +32,10 @@ # error "no graphics library detected" #endif -#include "ee.h" -#include "ee_internals.h" +#include "caca.h" +#include "caca_internals.h" -char ee_get_key(void) +char caca_get_key(void) { #if defined(USE_SLANG) return SLang_input_pending(0) ? SLang_getkey() : 0; diff --git a/libee/line.c b/libcaca/line.c similarity index 89% rename from libee/line.c rename to libcaca/line.c index 598bfb7..c5fe7f2 100644 --- a/libee/line.c +++ b/libcaca/line.c @@ -1,5 +1,5 @@ /* - * libee ASCII-Art library + * libcaca ASCII-Art library * Copyright (c) 2002, 2003 Sam Hocevar * All Rights Reserved * @@ -30,8 +30,8 @@ typedef unsigned char uint8_t; #include -#include "ee.h" -#include "ee_internals.h" +#include "caca.h" +#include "caca_internals.h" struct line { @@ -56,7 +56,7 @@ static void draw_thin_line(struct line*); * \param c Character to draw the line with. * \return nothing */ -void ee_draw_line(int x1, int y1, int x2, int y2, char c) +void caca_draw_line(int x1, int y1, int x2, int y2, char c) { struct line s; s.x1 = x1; @@ -68,7 +68,7 @@ void ee_draw_line(int x1, int y1, int x2, int y2, char c) clip_line(&s); } -void ee_draw_polyline(const int x[], const int y[], int n, char c) +void caca_draw_polyline(const int x[], const int y[], int n, char c) { int i; struct line s; @@ -94,7 +94,7 @@ void ee_draw_polyline(const int x[], const int y[], int n, char c) * \param y2 Y coordinate of the second point. * \return nothing */ -void ee_draw_thin_line(int x1, int y1, int x2, int y2) +void caca_draw_thin_line(int x1, int y1, int x2, int y2) { struct line s; s.x1 = x1; @@ -105,7 +105,7 @@ void ee_draw_thin_line(int x1, int y1, int x2, int y2) clip_line(&s); } -void ee_draw_thin_polyline(const int x[], const int y[], int n) +void caca_draw_thin_polyline(const int x[], const int y[], int n) { int i; struct line s; @@ -163,7 +163,7 @@ static void clip_line(struct line* s) } else if(bits1 & (1<<1)) { - int xmax = ee_get_width() - 1; + int xmax = caca_get_width() - 1; s->y1 = s->y2 - (s->x2 - xmax) * (s->y2 - s->y1) / (s->x2 - s->x1); s->x1 = xmax; } @@ -174,7 +174,7 @@ static void clip_line(struct line* s) } else if(bits1 & (1<<3)) { - int ymax = ee_get_height() - 1; + int ymax = caca_get_height() - 1; s->x1 = s->x2 - (s->y2 - ymax) * (s->x2 - s->x1) / (s->y2 - s->y1); s->y1 = ymax; } @@ -195,12 +195,12 @@ static uint8_t clip_bits(int x, int y) if(x < 0) b |= (1<<0); - else if(x >= ee_get_width()) + else if(x >= caca_get_width()) b |= (1<<1); if(y < 0) b |= (1<<2); - else if(y >= ee_get_height()) + else if(y >= caca_get_height()) b |= (1<<3); return b; @@ -235,7 +235,7 @@ static void draw_solid_line(struct line* s) for(; dx>=0; dx--) { - ee_putchar(x1, y1, s->c); + caca_putchar(x1, y1, s->c); if(delta > 0) { x1 += xinc; @@ -257,7 +257,7 @@ static void draw_solid_line(struct line* s) for(; dy >= 0; dy--) { - ee_putchar(x1, y1, s->c); + caca_putchar(x1, y1, s->c); if(delta > 0) { x1 += xinc; @@ -329,7 +329,7 @@ static void draw_thin_line(struct line* s) { if(delta > 0) { - ee_putchar(x1, y1, charmapy[1]); + caca_putchar(x1, y1, charmapy[1]); x1++; y1 += yinc; delta += dpru; @@ -338,9 +338,9 @@ static void draw_thin_line(struct line* s) else { if(prev) - ee_putchar(x1, y1, charmapy[0]); + caca_putchar(x1, y1, charmapy[0]); else - ee_putchar(x1, y1, '-'); + caca_putchar(x1, y1, '-'); x1++; delta += dpr; prev = 0; @@ -357,15 +357,15 @@ static void draw_thin_line(struct line* s) { if(delta > 0) { - ee_putchar(x1, y1, charmapx[0]); - ee_putchar(x1 + 1, y1, charmapx[1]); + caca_putchar(x1, y1, charmapx[0]); + caca_putchar(x1 + 1, y1, charmapx[1]); x1++; y1 += yinc; delta += dpru; } else { - ee_putchar(x1, y1, '|'); + caca_putchar(x1, y1, '|'); y1 += yinc; delta += dpr; } diff --git a/libee/math.c b/libcaca/math.c similarity index 88% rename from libee/math.c rename to libcaca/math.c index aec1b87..489acb8 100644 --- a/libee/math.c +++ b/libcaca/math.c @@ -1,5 +1,5 @@ /* - * libee ASCII-Art library + * libcaca ASCII-Art library * Copyright (c) 2002, 2003 Sam Hocevar * All Rights Reserved * @@ -24,15 +24,15 @@ #include -#include "ee.h" -#include "ee_internals.h" +#include "caca.h" +#include "caca_internals.h" -int ee_rand(int min, int max) +int caca_rand(int min, int max) { return min + (int)((1.0*(max-min+1)) * rand() / (RAND_MAX+1.0)); } -unsigned int ee_sqrt(unsigned int a) +unsigned int caca_sqrt(unsigned int a) { if(a == 0) return 0; @@ -54,6 +54,6 @@ unsigned int ee_sqrt(unsigned int a) return x; } - return 2 * ee_sqrt(a / 4); + return 2 * caca_sqrt(a / 4); } diff --git a/libee/sprite.c b/libcaca/sprite.c similarity index 82% rename from libee/sprite.c rename to libcaca/sprite.c index 8e2ad33..0d0b1ed 100644 --- a/libee/sprite.c +++ b/libcaca/sprite.c @@ -1,5 +1,5 @@ /* - * libee ASCII-Art library + * libcaca ASCII-Art library * Copyright (c) 2002, 2003 Sam Hocevar * All Rights Reserved * @@ -26,10 +26,10 @@ #include #include -#include "ee.h" -#include "ee_internals.h" +#include "caca.h" +#include "caca_internals.h" -struct ee_frame +struct caca_frame { int w, h; int dx, dy; @@ -37,23 +37,23 @@ struct ee_frame int *color; }; -struct ee_sprite +struct caca_sprite { int nf; - struct ee_frame *frames; + struct caca_frame *frames; }; -struct ee_sprite *ee_load_sprite(const char *file) +struct caca_sprite *caca_load_sprite(const char *file) { char buf[BUFSIZ]; - struct ee_sprite *sprite; + struct caca_sprite *sprite; FILE *fd; fd = fopen(file, "r"); if(fd == NULL) return NULL; - sprite = malloc(sizeof(struct ee_sprite)); + sprite = malloc(sizeof(struct caca_sprite)); if(sprite == NULL) goto sprite_alloc_failed; @@ -64,7 +64,7 @@ struct ee_sprite *ee_load_sprite(const char *file) { int x, y; int w = 0, h = 0, dx = 0, dy = 0; - struct ee_frame *frame; + struct caca_frame *frame; /* Get width and height */ if(!fgets(buf, BUFSIZ, fd)) @@ -77,7 +77,7 @@ struct ee_sprite *ee_load_sprite(const char *file) if(sprite->nf) { void *tmp = realloc(sprite->frames, - (sprite->nf + 1) * sizeof(struct ee_frame)); + (sprite->nf + 1) * sizeof(struct caca_frame)); if(tmp == NULL) goto frame_failed; sprite->frames = tmp; @@ -85,7 +85,7 @@ struct ee_sprite *ee_load_sprite(const char *file) } else { - sprite->frames = malloc((sprite->nf + 1) * sizeof(struct ee_frame)); + sprite->frames = malloc((sprite->nf + 1) * sizeof(struct caca_frame)); if(sprite->frames == NULL) goto sprite_failed; sprite->nf++; @@ -158,7 +158,7 @@ sprite_alloc_failed: return NULL; } -int ee_get_sprite_frames(struct ee_sprite *sprite) +int caca_get_sprite_frames(struct caca_sprite *sprite) { if(sprite == NULL) return 0; @@ -166,7 +166,7 @@ int ee_get_sprite_frames(struct ee_sprite *sprite) return sprite->nf; } -int ee_get_sprite_width(struct ee_sprite *sprite, int f) +int caca_get_sprite_width(struct caca_sprite *sprite, int f) { if(sprite == NULL) return 0; @@ -177,7 +177,7 @@ int ee_get_sprite_width(struct ee_sprite *sprite, int f) return sprite->frames[f].w; } -int ee_get_sprite_height(struct ee_sprite *sprite, int f) +int caca_get_sprite_height(struct caca_sprite *sprite, int f) { if(sprite == NULL) return 0; @@ -188,7 +188,7 @@ int ee_get_sprite_height(struct ee_sprite *sprite, int f) return sprite->frames[f].h; } -int ee_get_sprite_dx(struct ee_sprite *sprite, int f) +int caca_get_sprite_dx(struct caca_sprite *sprite, int f) { if(sprite == NULL) return 0; @@ -199,7 +199,7 @@ int ee_get_sprite_dx(struct ee_sprite *sprite, int f) return sprite->frames[f].dx; } -int ee_get_sprite_dy(struct ee_sprite *sprite, int f) +int caca_get_sprite_dy(struct caca_sprite *sprite, int f) { if(sprite == NULL) return 0; @@ -210,10 +210,10 @@ int ee_get_sprite_dy(struct ee_sprite *sprite, int f) return sprite->frames[f].dy; } -void ee_draw_sprite(int x, int y, struct ee_sprite *sprite, int f) +void caca_draw_sprite(int x, int y, struct caca_sprite *sprite, int f) { int i, j, oldcol; - struct ee_frame *frame; + struct caca_frame *frame; if(sprite == NULL) return; @@ -223,7 +223,7 @@ void ee_draw_sprite(int x, int y, struct ee_sprite *sprite, int f) frame = &sprite->frames[f]; - oldcol = ee_get_color(); + oldcol = caca_get_color(); for(j = 0; j < frame->h; j++) { @@ -232,17 +232,17 @@ void ee_draw_sprite(int x, int y, struct ee_sprite *sprite, int f) int col = frame->color[frame->w * j + i]; if(col >= 0) { - ee_set_color(col); - ee_putchar(x + i - frame->dx, y + j - frame->dy, + caca_set_color(col); + caca_putchar(x + i - frame->dx, y + j - frame->dy, frame->chars[frame->w * j + i]); } } } - ee_set_color(oldcol); + caca_set_color(oldcol); } -void ee_free_sprite(struct ee_sprite *sprite) +void caca_free_sprite(struct caca_sprite *sprite) { int i; @@ -251,7 +251,7 @@ void ee_free_sprite(struct ee_sprite *sprite) for(i = sprite->nf; i--;) { - struct ee_frame *frame = &sprite->frames[i]; + struct caca_frame *frame = &sprite->frames[i]; free(frame->chars); free(frame->color); } diff --git a/libee/triangle.c b/libcaca/triangle.c similarity index 71% rename from libee/triangle.c rename to libcaca/triangle.c index 40443f4..c90af92 100644 --- a/libee/triangle.c +++ b/libcaca/triangle.c @@ -1,5 +1,5 @@ /* - * libee ASCII-Art library + * libcaca ASCII-Art library * Copyright (c) 2002, 2003 Sam Hocevar * All Rights Reserved * @@ -24,37 +24,37 @@ #include -#include "ee.h" -#include "ee_internals.h" +#include "caca.h" +#include "caca_internals.h" -void ee_draw_triangle(int x1, int y1, int x2, int y2, int x3, int y3, char c) +void caca_draw_triangle(int x1, int y1, int x2, int y2, int x3, int y3, char c) { - ee_draw_line(x1, y1, x2, y2, c); - ee_draw_line(x2, y2, x3, y3, c); - ee_draw_line(x3, y3, x1, y1, c); + caca_draw_line(x1, y1, x2, y2, c); + caca_draw_line(x2, y2, x3, y3, c); + caca_draw_line(x3, y3, x1, y1, c); } -void ee_draw_thin_triangle(int x1, int y1, int x2, int y2, int x3, int y3) +void caca_draw_thin_triangle(int x1, int y1, int x2, int y2, int x3, int y3) { - ee_draw_thin_line(x1, y1, x2, y2); - ee_draw_thin_line(x2, y2, x3, y3); - ee_draw_thin_line(x3, y3, x1, y1); + caca_draw_thin_line(x1, y1, x2, y2); + caca_draw_thin_line(x2, y2, x3, y3); + caca_draw_thin_line(x3, y3, x1, y1); } -void ee_fill_triangle(int x1, int y1, int x2, int y2, int x3, int y3, char c) +void caca_fill_triangle(int x1, int y1, int x2, int y2, int x3, int y3, char c) { int x, y, xa, xb, xmax, ymax; /* Bubble-sort y1 <= y2 <= y3 */ if(y1 > y2) { - ee_fill_triangle(x2, y2, x1, y1, x3, y3, c); + caca_fill_triangle(x2, y2, x1, y1, x3, y3, c); return; } if(y2 > y3) { - ee_fill_triangle(x1, y1, x3, y3, x2, y2, c); + caca_fill_triangle(x1, y1, x3, y3, x2, y2, c); return; } @@ -63,8 +63,8 @@ void ee_fill_triangle(int x1, int y1, int x2, int y2, int x3, int y3, char c) x2 *= 4; x3 *= 4; - xmax = ee_get_width() - 1; - ymax = ee_get_height() - 1; + xmax = caca_get_width() - 1; + ymax = caca_get_height() - 1; /* Rasterize our triangle */ for(y = y1 < 0 ? 0 : y1; y <= y3 && y <= ymax; y++) @@ -96,7 +96,7 @@ void ee_fill_triangle(int x1, int y1, int x2, int y2, int x3, int y3, char c) if(xb > xmax) xb = xmax; for(x = xa; x <= xb; x++) - ee_putchar(x, y, c); + caca_putchar(x, y, c); } } diff --git a/libee/ee.h b/libee/ee.h deleted file mode 100644 index a8c2211..0000000 --- a/libee/ee.h +++ /dev/null @@ -1,116 +0,0 @@ -/* - * libee ASCII-Art library - * Copyright (c) 2002, 2003 Sam Hocevar - * All Rights Reserved - * - * $Id$ - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -#ifndef __EE_H__ -#define __EE_H__ - -#ifdef __cplusplus -extern "C" -{ -#endif - -/* - * Colors - */ -enum ee_colors -{ - EE_BLACK = 0, - EE_BLUE = 1, - EE_GREEN = 2, - EE_CYAN = 3, - EE_RED = 4, - EE_MAGENTA = 5, - EE_BROWN = 6, - EE_LIGHTGRAY = 7, - EE_DARKGRAY = 8, - EE_LIGHTBLUE = 9, - EE_LIGHTGREEN = 10, - EE_LIGHTCYAN = 11, - EE_LIGHTRED = 12, - EE_LIGHTMAGENTA = 13, - EE_YELLOW = 14, - EE_WHITE = 15 -}; - -/* - * Types - */ -struct ee_sprite; - -/* - * Prototypes - */ -int ee_init(void); -void ee_set_delay(unsigned int); -unsigned int ee_get_rendertime(void); -unsigned int ee_get_width(void); -unsigned int ee_get_height(void); -const char *ee_get_color_name(unsigned int); -void ee_refresh(void); -void ee_end(void); - -char ee_get_key(void); - -void ee_set_color(int); -int ee_get_color(void); -void ee_putchar(int, int, char); -void ee_putstr(int, int, const char *); -void ee_printf(int, int, const char *, ...); -void ee_clear(void); - -void ee_draw_line(int, int, int, int, char); -void ee_draw_polyline(const int[], const int[], int, char); -void ee_draw_thin_line(int, int, int, int); -void ee_draw_thin_polyline(const int[], const int[], int); - -void ee_draw_circle(int, int, int, char); -void ee_draw_ellipse(int, int, int, int, char); -void ee_draw_thin_ellipse(int, int, int, int); -void ee_fill_ellipse(int, int, int, int, char); - -void ee_draw_box(int, int, int, int, char); -void ee_draw_thin_box(int, int, int, int); -void ee_fill_box(int, int, int, int, char); - -void ee_draw_triangle(int, int, int, int, int, int, char); -void ee_draw_thin_triangle(int, int, int, int, int, int); -void ee_fill_triangle(int, int, int, int, int, int, char); - -int ee_rand(int, int); -unsigned int ee_sqrt(unsigned int); - -struct ee_sprite * ee_load_sprite(const char *); -int ee_get_sprite_frames(struct ee_sprite *); -int ee_get_sprite_width(struct ee_sprite *, int); -int ee_get_sprite_height(struct ee_sprite *, int); -int ee_get_sprite_dx(struct ee_sprite *, int); -int ee_get_sprite_dy(struct ee_sprite *, int); -void ee_draw_sprite(int, int, struct ee_sprite *, int); -void ee_free_sprite(struct ee_sprite *); - -void ee_blit(int, int, int, int, void *, int, int); - -#ifdef __cplusplus -} -#endif - -#endif /* __EE_H__ */ diff --git a/src/Makefile.am b/src/Makefile.am index 5ee1c66..e774527 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -2,7 +2,7 @@ # Automake targets and declarations for ttyvaders ############################################################################### -AM_CPPFLAGS = -I$(top_srcdir)/libee +AM_CPPFLAGS = -I$(top_srcdir)/libcaca if USE_SLANG LDFLAGS_slang = -lslang @@ -29,5 +29,5 @@ ttyvaders_SOURCES = \ tunnel.c \ weapons.c \ $(NULL) -ttyvaders_LDADD = ../libee/libee.a $(LDFLAGS_slang) $(LDFLAGS_ncurses) -lm +ttyvaders_LDADD = ../libcaca/libcaca.a $(LDFLAGS_slang) $(LDFLAGS_ncurses) -lm diff --git a/src/aliens.c b/src/aliens.c index 636dee3..4df020e 100644 --- a/src/aliens.c +++ b/src/aliens.c @@ -26,9 +26,9 @@ #include "common.h" -struct ee_sprite *foo_sprite; -struct ee_sprite *bar_sprite; -struct ee_sprite *baz_sprite; +struct caca_sprite *foo_sprite; +struct caca_sprite *bar_sprite; +struct caca_sprite *baz_sprite; void init_aliens(game *g, aliens *al) { @@ -39,9 +39,9 @@ void init_aliens(game *g, aliens *al) al->type[i] = ALIEN_NONE; } - foo_sprite = ee_load_sprite("data/foofight.txt"); - bar_sprite = ee_load_sprite("data/barfight.txt"); - baz_sprite = ee_load_sprite("data/bazfight.txt"); + foo_sprite = caca_load_sprite("data/foofight.txt"); + bar_sprite = caca_load_sprite("data/barfight.txt"); + baz_sprite = caca_load_sprite("data/bazfight.txt"); } void draw_aliens(game *g, aliens *al) @@ -53,13 +53,13 @@ void draw_aliens(game *g, aliens *al) switch(al->type[i]) { case ALIEN_FOO: - ee_draw_sprite(al->x[i], al->y[i], foo_sprite, al->img[i] % 8); + caca_draw_sprite(al->x[i], al->y[i], foo_sprite, al->img[i] % 8); break; case ALIEN_BAR: - ee_draw_sprite(al->x[i], al->y[i], bar_sprite, al->img[i] % 2); + caca_draw_sprite(al->x[i], al->y[i], bar_sprite, al->img[i] % 2); break; case ALIEN_BAZ: - ee_draw_sprite(al->x[i], al->y[i], baz_sprite, al->img[i] % 6); + caca_draw_sprite(al->x[i], al->y[i], baz_sprite, al->img[i] % 6); break; case ALIEN_NONE: break; @@ -78,7 +78,7 @@ void update_aliens(game *g, aliens *al) { add_explosion(g, g->ex, al->x[i], al->y[i], 0, 0, EXPLOSION_MEDIUM); al->type[i] = ALIEN_NONE; - add_bonus(g, g->bo, al->x[i], al->y[i], ee_rand(0,4) ? BONUS_GREEN : BONUS_LIFE); + add_bonus(g, g->bo, al->x[i], al->y[i], caca_rand(0,4) ? BONUS_GREEN : BONUS_LIFE); } /* Update coordinates */ diff --git a/src/bonus.c b/src/bonus.c index f0201c3..c805724 100644 --- a/src/bonus.c +++ b/src/bonus.c @@ -26,8 +26,8 @@ #include "common.h" -struct ee_sprite *heart_sprite; -struct ee_sprite *gem_sprite; +struct caca_sprite *heart_sprite; +struct caca_sprite *gem_sprite; void init_bonus(game *g, bonus *bo) { @@ -38,8 +38,8 @@ void init_bonus(game *g, bonus *bo) bo->type[i] = BONUS_NONE; } - heart_sprite = ee_load_sprite("data/bonheart.txt"); - gem_sprite = ee_load_sprite("data/bongem.txt"); + heart_sprite = caca_load_sprite("data/bonheart.txt"); + gem_sprite = caca_load_sprite("data/bongem.txt"); } void draw_bonus(game *g, bonus *bo) @@ -51,11 +51,11 @@ void draw_bonus(game *g, bonus *bo) switch(bo->type[i]) { case BONUS_GREEN: - ee_draw_sprite(bo->x[i], bo->y[i], gem_sprite, + caca_draw_sprite(bo->x[i], bo->y[i], gem_sprite, (bo->n[i]/2 % 3) ? 0 : 1); break; case BONUS_LIFE: - ee_draw_sprite(bo->x[i], bo->y[i], heart_sprite, + caca_draw_sprite(bo->x[i], bo->y[i], heart_sprite, (bo->n[i] % 3) ? 0 : 1); break; case BONUS_NONE: diff --git a/src/box.c b/src/box.c index 7c5c5c4..b9cdcaa 100644 --- a/src/box.c +++ b/src/box.c @@ -45,12 +45,12 @@ void draw_box(game *g, box *b) { int j, frame; - ee_set_color(EE_YELLOW); + caca_set_color(EE_YELLOW); /* Draw the thin horizontal line */ if(b->frame < 8) { - ee_draw_line(b->x - b->w * b->frame / 16, b->y, + caca_draw_line(b->x - b->w * b->frame / 16, b->y, b->x + b->w * b->frame / 16 - 1, b->y, 'X'); return; } @@ -58,23 +58,23 @@ void draw_box(game *g, box *b) /* Draw the frame */ frame = b->frame < 12 ? b->frame : 12; - ee_draw_line(b->x - b->w / 2, b->y - b->h * (frame - 8) / 8, + caca_draw_line(b->x - b->w / 2, b->y - b->h * (frame - 8) / 8, b->x + b->w / 2 - 1, b->y - b->h * (frame - 8) / 8, 'X'); - ee_draw_line(b->x - b->w / 2, b->y + b->h * (frame - 8) / 8, + caca_draw_line(b->x - b->w / 2, b->y + b->h * (frame - 8) / 8, b->x + b->w / 2 - 1, b->y + b->h * (frame - 8) / 8, 'X'); - ee_draw_line(b->x - b->w / 2, b->y - b->h * (frame - 8) / 8, + caca_draw_line(b->x - b->w / 2, b->y - b->h * (frame - 8) / 8, b->x - b->w / 2, b->y + b->h * (frame - 8) / 8 - 1, 'X'); - ee_draw_line(b->x + b->w / 2 - 1, b->y - b->h * (frame - 8) / 8, + caca_draw_line(b->x + b->w / 2 - 1, b->y - b->h * (frame - 8) / 8, b->x + b->w / 2 - 1, b->y + b->h * (frame - 8) / 8 - 1, 'X'); - ee_set_color(EE_BLACK); + caca_set_color(EE_BLACK); for(j = b->y - b->h * (frame - 8) / 8 + 1; j < b->y + b->h * (frame - 8) / 8; j++) { - ee_draw_line(b->x - b->w / 2 + 1, j, + caca_draw_line(b->x - b->w / 2 + 1, j, b->x + b->w / 2 - 2, j, 'X'); } @@ -84,18 +84,18 @@ void draw_box(game *g, box *b) } /* Draw the text inside the frame */ - ee_set_color(EE_YELLOW); + caca_set_color(EE_YELLOW); /* FIXME: use a font */ - ee_putstr(b->x - b->w / 2 + 12, b->y - b->h / 2 + 2, + caca_putstr(b->x - b->w / 2 + 12, b->y - b->h / 2 + 2, "XXXX. .XXXX X X .XXXX .XXXX XXXX."); - ee_putstr(b->x - b->w / 2 + 12, b->y - b->h / 2 + 3, + caca_putstr(b->x - b->w / 2 + 12, b->y - b->h / 2 + 3, "X `X X' X X X X' X' X `X"); - ee_putstr(b->x - b->w / 2 + 12, b->y - b->h / 2 + 4, + caca_putstr(b->x - b->w / 2 + 12, b->y - b->h / 2 + 4, "XXXX' XXXXX X X `XXX XXXX X X"); - ee_putstr(b->x - b->w / 2 + 12, b->y - b->h / 2 + 5, + caca_putstr(b->x - b->w / 2 + 12, b->y - b->h / 2 + 5, "X' X' `X X. ,X `X X' X ,X"); - ee_putstr(b->x - b->w / 2 + 12, b->y - b->h / 2 + 6, + caca_putstr(b->x - b->w / 2 + 12, b->y - b->h / 2 + 6, "X X X `XXXX XXXX' `XXXX XXXX'"); } diff --git a/src/ceo.c b/src/ceo.c index 19b9e19..c807df8 100644 --- a/src/ceo.c +++ b/src/ceo.c @@ -33,16 +33,16 @@ void ceo_alert(game *g) while(!end) { - ee_clear(); + caca_clear(); - if(ee_get_key() == '\t') + if(caca_get_key() == '\t') { end = 1; } fprintf(stderr, "foo\n"); - ee_refresh(); + caca_refresh(); usleep(40000); } diff --git a/src/collide.c b/src/collide.c index bb7ebfd..014e01a 100644 --- a/src/collide.c +++ b/src/collide.c @@ -127,12 +127,12 @@ void collide_weapons_tunnel(game *g, weapons *wp, tunnel *t, explosions *ex) if(x - 2 <= t->left[y-j]) { add_explosion(g, ex, GET_MIN(t->left[y-j], x+3), y-j, 0, 1, EXPLOSION_SMALL); - t->left[y-j] -= ee_rand(0,2); + t->left[y-j] -= caca_rand(0,2); } else if(x + 3 >= t->right[y-j]) { add_explosion(g, ex, GET_MAX(t->right[y-j], x-2), y-j, 0, 1, EXPLOSION_SMALL); - t->right[y-j] += ee_rand(0,2); + t->right[y-j] += caca_rand(0,2); } } break; diff --git a/src/common.h b/src/common.h index 19d6691..6c0dffe 100644 --- a/src/common.h +++ b/src/common.h @@ -44,7 +44,7 @@ void intro(void); /* * Graphics primitives */ -#include "ee.h" +#include "caca.h" /* * Useful macros diff --git a/src/explosions.c b/src/explosions.c index 9ea020a..32696bd 100644 --- a/src/explosions.c +++ b/src/explosions.c @@ -26,8 +26,8 @@ #include "common.h" -struct ee_sprite *medium_sprite; -struct ee_sprite *small_sprite; +struct caca_sprite *medium_sprite; +struct caca_sprite *small_sprite; void init_explosions(game *g, explosions *ex) { @@ -38,8 +38,8 @@ void init_explosions(game *g, explosions *ex) ex->type[i] = EXPLOSION_NONE; } - medium_sprite = ee_load_sprite("data/xplmed.txt"); - small_sprite = ee_load_sprite("data/xplsmall.txt"); + medium_sprite = caca_load_sprite("data/xplmed.txt"); + small_sprite = caca_load_sprite("data/xplsmall.txt"); } void add_explosion(game *g, explosions *ex, int x, int y, int vx, int vy, int type) @@ -76,38 +76,38 @@ void draw_explosions(game *g, explosions *ex) for(i = 0; i < EXPLOSIONS; i++) { #if 0 - ee_set_color(GREEN); - ee_goto(ex->x[i] + 3, ex->y[i]); - switch(ee_rand(0,2)) + caca_set_color(GREEN); + caca_goto(ex->x[i] + 3, ex->y[i]); + switch(caca_rand(0,2)) { case 0: - ee_putchar('p'); - ee_putchar('i'); - ee_putchar('f'); + caca_putchar('p'); + caca_putchar('i'); + caca_putchar('f'); break; case 1: - ee_putchar('p'); - ee_putchar('a'); - ee_putchar('f'); + caca_putchar('p'); + caca_putchar('a'); + caca_putchar('f'); break; case 2: - ee_putchar('p'); - ee_putchar('o'); - ee_putchar('u'); - ee_putchar('f'); + caca_putchar('p'); + caca_putchar('o'); + caca_putchar('u'); + caca_putchar('f'); break; } - ee_putchar('!'); + caca_putchar('!'); #endif switch(ex->type[i]) { case EXPLOSION_MEDIUM: - ee_draw_sprite(ex->x[i], ex->y[i], medium_sprite, + caca_draw_sprite(ex->x[i], ex->y[i], medium_sprite, 10 - ex->n[i]); break; case EXPLOSION_SMALL: - ee_draw_sprite(ex->x[i], ex->y[i], small_sprite, + caca_draw_sprite(ex->x[i], ex->y[i], small_sprite, 6 - ex->n[i]); break; case EXPLOSION_NONE: diff --git a/src/intro.c b/src/intro.c index d34d934..8db7998 100644 --- a/src/intro.c +++ b/src/intro.c @@ -30,27 +30,27 @@ void intro(void) { - struct ee_sprite *foo_sprite = ee_load_sprite("data/foofight.txt"); - struct ee_sprite *bar_sprite = ee_load_sprite("data/barfight.txt"); - struct ee_sprite *baz_sprite = ee_load_sprite("data/bazfight.txt"); + struct caca_sprite *foo_sprite = caca_load_sprite("data/foofight.txt"); + struct caca_sprite *bar_sprite = caca_load_sprite("data/barfight.txt"); + struct caca_sprite *baz_sprite = caca_load_sprite("data/bazfight.txt"); int frame = 0; - while(ee_get_key() == 0) + while(caca_get_key() == 0) { int i, xo, yo, x[5], y[5]; frame++; - ee_clear(); + caca_clear(); - xo = ee_get_width() / 2; - yo = ee_get_height() / 2; + xo = caca_get_width() / 2; + yo = caca_get_height() / 2; - ee_set_color(EE_RED); - ee_fill_ellipse(xo, yo, 16, 8, '#'); - ee_set_color(EE_GREEN); - ee_draw_thin_ellipse(xo, yo, 16, 8); + caca_set_color(EE_RED); + caca_fill_ellipse(xo, yo, 16, 8, '#'); + caca_set_color(EE_GREEN); + caca_draw_thin_ellipse(xo, yo, 16, 8); for(i = 0; i < 4; i ++) { @@ -60,16 +60,16 @@ void intro(void) x[4] = x[0]; y[4] = y[0]; - ee_set_color(EE_BLACK); - ee_fill_triangle(x[0], y[0], x[1], y[1], x[2], y[2], ' '); - ee_fill_triangle(x[0], y[0], x[3], y[3], x[2], y[2], ' '); - ee_draw_line(x[0], y[0], x[2], y[2], ' '); - ee_set_color(EE_GREEN); - ee_draw_thin_polyline(x, y, 4); + caca_set_color(EE_BLACK); + caca_fill_triangle(x[0], y[0], x[1], y[1], x[2], y[2], ' '); + caca_fill_triangle(x[0], y[0], x[3], y[3], x[2], y[2], ' '); + caca_draw_line(x[0], y[0], x[2], y[2], ' '); + caca_set_color(EE_GREEN); + caca_draw_thin_polyline(x, y, 4); - ee_draw_sprite(xo, yo, foo_sprite, frame % 5); + caca_draw_sprite(xo, yo, foo_sprite, frame % 5); - ee_refresh(); + caca_refresh(); usleep(40000); } diff --git a/src/main.c b/src/main.c index 0c85088..2e1b6e6 100644 --- a/src/main.c +++ b/src/main.c @@ -41,16 +41,16 @@ int main (int argc, char **argv) srand(time(NULL)); - if(ee_init()) + if(caca_init()) { return 1; } - ee_set_delay(100000); + caca_set_delay(100000); /* Initialize our program */ - g->w = ee_get_width(); - g->h = ee_get_height(); + g->w = caca_get_width(); + g->h = caca_get_height(); intro(); @@ -58,7 +58,7 @@ intro(); start_game(g); /* Clean up */ - ee_end(); + caca_end(); return 0; } @@ -100,7 +100,7 @@ static void start_game (game *g) { char key; - while((key = ee_get_key())) + while((key = caca_get_key())) { switch(key) { @@ -198,11 +198,11 @@ static void start_game (game *g) skip = 0; /* XXX: to be removed */ - if(ee_rand(0, 9) == 0) + if(caca_rand(0, 9) == 0) { int list[3] = { ALIEN_FOO, ALIEN_BAR, ALIEN_BAZ }; - add_alien(g, g->al, 0, rand() % g->h / 2, list[ee_rand(0,2)]); + add_alien(g, g->al, 0, rand() % g->h / 2, list[caca_rand(0,2)]); } /* Update game rules */ @@ -231,7 +231,7 @@ static void start_game (game *g) } /* Clear screen */ - ee_clear(); + caca_clear(); /* Print starfield, tunnel, aliens, player and explosions */ draw_starfield(g, g->sf); @@ -251,7 +251,7 @@ static void start_game (game *g) } /* Refresh */ - ee_refresh(); + caca_refresh(); purcompteur++; } diff --git a/src/overlay.c b/src/overlay.c index 4f29762..6a65950 100644 --- a/src/overlay.c +++ b/src/overlay.c @@ -32,50 +32,50 @@ void draw_status(game *g) static char dashes30[] = "=============================="; /* Draw life jauge */ - ee_set_color(EE_DARKGRAY); - ee_putstr(4, 1, dots30); + caca_set_color(EE_DARKGRAY); + caca_putstr(4, 1, dots30); if(g->p->life > MAX_LIFE * 7 / 10) { - ee_set_color(EE_GREEN); + caca_set_color(EE_GREEN); } else if(g->p->life > MAX_LIFE * 3 / 10) { - ee_set_color(EE_YELLOW); + caca_set_color(EE_YELLOW); } else { - ee_set_color(EE_RED); + caca_set_color(EE_RED); } - ee_putstr(4, 1, dashes30 + (MAX_LIFE - g->p->life) * 30 / MAX_LIFE); + caca_putstr(4, 1, dashes30 + (MAX_LIFE - g->p->life) * 30 / MAX_LIFE); - ee_set_color(EE_WHITE); - ee_putstr(1, 1, "L |"); - ee_putstr(34, 1, "|"); + caca_set_color(EE_WHITE); + caca_putstr(1, 1, "L |"); + caca_putstr(34, 1, "|"); /* Draw weapon jauge */ - ee_set_color(EE_DARKGRAY); - ee_putstr(42, 1, dots30 + 10); + caca_set_color(EE_DARKGRAY); + caca_putstr(42, 1, dots30 + 10); if(g->p->special > MAX_SPECIAL * 9 / 10) { - ee_set_color(EE_WHITE); + caca_set_color(EE_WHITE); } else if(g->p->special > MAX_SPECIAL * 3 / 10) { - ee_set_color(EE_CYAN); + caca_set_color(EE_CYAN); } else { - ee_set_color(EE_BLUE); + caca_set_color(EE_BLUE); } - ee_putstr(42, 1, dashes30 + 10 + caca_putstr(42, 1, dashes30 + 10 + (MAX_SPECIAL - g->p->special) * 20 / MAX_SPECIAL); - ee_set_color(EE_WHITE); - ee_putstr(39, 1, "S |"); - ee_putstr(62, 1, "|"); + caca_set_color(EE_WHITE); + caca_putstr(39, 1, "S |"); + caca_putstr(62, 1, "|"); } diff --git a/src/player.c b/src/player.c index 2644438..1424942 100644 --- a/src/player.c +++ b/src/player.c @@ -26,7 +26,7 @@ #include "common.h" -struct ee_sprite *ship_sprite; +struct caca_sprite *ship_sprite; /* Init tunnel */ player * create_player(game *g) @@ -44,7 +44,7 @@ player * create_player(game *g) p->life = MAX_LIFE; p->dead = 0; - ship_sprite = ee_load_sprite("data/ship.txt"); + ship_sprite = caca_load_sprite("data/ship.txt"); return p; } @@ -59,7 +59,7 @@ void draw_player(game *g, player *p) if(p->dead) return; - ee_draw_sprite(p->x, p->y, ship_sprite, 0); + caca_draw_sprite(p->x, p->y, ship_sprite, 0); } void update_player(game *g, player *p) diff --git a/src/starfield.c b/src/starfield.c index de4a24b..f4504ee 100644 --- a/src/starfield.c +++ b/src/starfield.c @@ -37,11 +37,11 @@ starfield * create_starfield(game *g) for(i = 0; i < STARS; i++) { - s[i].x = ee_rand(0, g->w - 1); - s[i].y = ee_rand(0, g->h - 1); - s[i].z = ee_rand(1, 3); - s[i].c = ee_rand(0, 1) ? EE_LIGHTGRAY : EE_DARKGRAY; - s[i].ch = ee_rand(0, 1) ? '.' : '\''; + s[i].x = caca_rand(0, g->w - 1); + s[i].y = caca_rand(0, g->h - 1); + s[i].z = caca_rand(1, 3); + s[i].c = caca_rand(0, 1) ? EE_LIGHTGRAY : EE_DARKGRAY; + s[i].ch = caca_rand(0, 1) ? '.' : '\''; } return s; @@ -55,8 +55,8 @@ void draw_starfield(game *g, starfield *s) { if(s[i].x >= 0) { - ee_set_color(s[i].c); - ee_putchar(s[i].x, s[i].y, s[i].ch); + caca_set_color(s[i].c); + caca_putchar(s[i].x, s[i].y, s[i].ch); } } } @@ -69,11 +69,11 @@ void update_starfield(game *g, starfield *s) { if(s[i].x < 0) { - s[i].x = ee_rand(0, g->w - 1); + s[i].x = caca_rand(0, g->w - 1); s[i].y = 0; - s[i].z = ee_rand(1, 2); - s[i].c = ee_rand(0, 1) ? EE_LIGHTGRAY : EE_DARKGRAY; - s[i].ch = ee_rand(0, 1) ? '.' : '\''; + s[i].z = caca_rand(1, 2); + s[i].c = caca_rand(0, 1) ? EE_LIGHTGRAY : EE_DARKGRAY; + s[i].ch = caca_rand(0, 1) ? '.' : '\''; } else if(s[i].y < g->h-1) { diff --git a/src/tunnel.c b/src/tunnel.c index fb80333..8d84afd 100644 --- a/src/tunnel.c +++ b/src/tunnel.c @@ -77,7 +77,7 @@ void draw_tunnel(game *g, tunnel *t) int i, j; char c; - ee_set_color(EE_GREEN); + caca_set_color(EE_GREEN); /* Left border */ for(i = 0; i < g->h ; i++) @@ -90,11 +90,11 @@ void draw_tunnel(game *g, tunnel *t) else c = (i == 0 || t->left[i] > t->left[i-1]) ? '\\' : '<'; - ee_putchar(t->left[i] + 1, i, c); + caca_putchar(t->left[i] + 1, i, c); if(i + 1 < g->h) for(j = 1; j < t->left[i+1] - t->left[i]; j++) - ee_putchar(t->left[i] + j + 1, i, '_'); + caca_putchar(t->left[i] + j + 1, i, '_'); } /* Right border */ @@ -110,22 +110,22 @@ void draw_tunnel(game *g, tunnel *t) if(i + 1 < g->h) for(j = 1; j < t->right[i] - t->right[i+1]; j++) - ee_putchar(t->right[i+1] + j - 1, i, '_'); + caca_putchar(t->right[i+1] + j - 1, i, '_'); - ee_putchar(t->right[i] - 1, i, c); + caca_putchar(t->right[i] - 1, i, c); } - ee_set_color(EE_RED); + caca_set_color(EE_RED); /* Left concrete */ for(i = 0; i < g->h ; i++) for(j = 0 ; j <= t->left[i]; j++) - ee_putchar(j, i, '#'); + caca_putchar(j, i, '#'); /* Right concrete */ for(i = 0; i < g->h ; i++) for(j = t->right[i] ; j < g->w ; j++) - ee_putchar(j, i, '#'); + caca_putchar(j, i, '#'); } void update_tunnel(game *g, tunnel *t) @@ -141,8 +141,8 @@ void update_tunnel(game *g, tunnel *t) } /* Generate new values */ - i = delta[ee_rand(0,5)]; - j = delta[ee_rand(0,5)]; + i = delta[caca_rand(0,5)]; + j = delta[caca_rand(0,5)]; /* Check in which direction we need to alter tunnel */ if(t->right[1] - t->left[1] < t->w) diff --git a/src/weapons.c b/src/weapons.c index 15eff17..9e3f88f 100644 --- a/src/weapons.c +++ b/src/weapons.c @@ -31,8 +31,8 @@ static void draw_nuke(int x, int y, int frame); static void draw_beam(int x, int y, int frame); static void draw_fragbomb(int x, int y, int frame); -struct ee_sprite *bomb_sprite; -struct ee_sprite *fragbomb_sprite; +struct caca_sprite *bomb_sprite; +struct caca_sprite *fragbomb_sprite; void init_weapons(game *g, weapons *wp) { @@ -43,8 +43,8 @@ void init_weapons(game *g, weapons *wp) wp->type[i] = WEAPON_NONE; } - bomb_sprite = ee_load_sprite("data/wpnbomb.txt"); - fragbomb_sprite = ee_load_sprite("data/wpnfrag.txt"); + bomb_sprite = caca_load_sprite("data/wpnbomb.txt"); + fragbomb_sprite = caca_load_sprite("data/wpnfrag.txt"); } void draw_weapons(game *g, weapons *wp) @@ -56,25 +56,25 @@ void draw_weapons(game *g, weapons *wp) switch(wp->type[i]) { case WEAPON_LASER: - ee_set_color(EE_WHITE); - ee_putchar(wp->x[i] >> 4, wp->y[i] >> 4, '|'); - ee_set_color(EE_CYAN); - ee_putchar(wp->x[i] >> 4, (wp->y[i] >> 4) + 1, '|'); + caca_set_color(EE_WHITE); + caca_putchar(wp->x[i] >> 4, wp->y[i] >> 4, '|'); + caca_set_color(EE_CYAN); + caca_putchar(wp->x[i] >> 4, (wp->y[i] >> 4) + 1, '|'); break; case WEAPON_SEEKER: - ee_set_color(EE_CYAN); - ee_putchar(wp->x3[i] >> 4, wp->y3[i] >> 4, '.'); - ee_putchar(wp->x2[i] >> 4, wp->y2[i] >> 4, 'o'); - ee_set_color(EE_WHITE); - ee_putchar(wp->x[i] >> 4, wp->y[i] >> 4, '@'); + caca_set_color(EE_CYAN); + caca_putchar(wp->x3[i] >> 4, wp->y3[i] >> 4, '.'); + caca_putchar(wp->x2[i] >> 4, wp->y2[i] >> 4, 'o'); + caca_set_color(EE_WHITE); + caca_putchar(wp->x[i] >> 4, wp->y[i] >> 4, '@'); break; case WEAPON_BOMB: - ee_set_color(EE_DARKGRAY); - ee_putchar((wp->x[i] - wp->vx[i]) >> 4, (wp->y[i] - wp->vy[i]) >> 4, '.'); - ee_putchar((wp->x3[i] - wp->vx[i]) >> 4, (wp->y3[i] - wp->vy[i]) >> 4, '.'); - ee_putchar((wp->x2[i] - wp->vx[i]) >> 4, (wp->y2[i] - wp->vy[i]) >> 4, '.'); - ee_putchar(wp->x3[i] >> 4, wp->y3[i] >> 4, '.'); - ee_putchar(wp->x2[i] >> 4, wp->y2[i] >> 4, '.'); + caca_set_color(EE_DARKGRAY); + caca_putchar((wp->x[i] - wp->vx[i]) >> 4, (wp->y[i] - wp->vy[i]) >> 4, '.'); + caca_putchar((wp->x3[i] - wp->vx[i]) >> 4, (wp->y3[i] - wp->vy[i]) >> 4, '.'); + caca_putchar((wp->x2[i] - wp->vx[i]) >> 4, (wp->y2[i] - wp->vy[i]) >> 4, '.'); + caca_putchar(wp->x3[i] >> 4, wp->y3[i] >> 4, '.'); + caca_putchar(wp->x2[i] >> 4, wp->y2[i] >> 4, '.'); draw_bomb(wp->x[i] >> 4, wp->y[i] >> 4, wp->vx[i], wp->vy[i]); break; case WEAPON_FRAGBOMB: @@ -169,7 +169,7 @@ void update_weapons(game *g, weapons *wp) /* Normalize direction */ if(dx | dy) { - unsigned int norm = ee_sqrt(dx * dx + 4 * dy * dy); + unsigned int norm = caca_sqrt(dx * dx + 4 * dy * dy); dx = dx * 32 / norm; dy = dy * 32 / norm; } @@ -181,7 +181,7 @@ void update_weapons(game *g, weapons *wp) /* Normalize speed */ if(dx | dy) { - unsigned int norm = ee_sqrt(dx * dx + 4 * dy * dy); + unsigned int norm = caca_sqrt(dx * dx + 4 * dy * dy); wp->vx[i] = dx * 32 / norm; wp->vy[i] = dy * 32 / norm; } @@ -333,16 +333,16 @@ static void draw_bomb(int x, int y, int vx, int vy) } } - ee_draw_sprite(x, y, bomb_sprite, frame); + caca_draw_sprite(x, y, bomb_sprite, frame); } static void draw_fragbomb(int x, int y, int frame) { /* Draw the head */ - ee_draw_sprite(x, y, fragbomb_sprite, frame & 1); + caca_draw_sprite(x, y, fragbomb_sprite, frame & 1); /* Draw the tail */ - ee_draw_sprite(x, y, fragbomb_sprite, 2 + (frame % 4)); + caca_draw_sprite(x, y, fragbomb_sprite, 2 + (frame % 4)); } static void draw_beam(int x, int y, int frame) @@ -353,86 +353,86 @@ static void draw_beam(int x, int y, int frame) switch(frame) { case 24: - ee_set_color(EE_WHITE); - ee_putstr(x, y-3, "__"); - ee_putchar(x-1, y-2, '\''); - ee_putchar(x+2, y-2, '`'); + caca_set_color(EE_WHITE); + caca_putstr(x, y-3, "__"); + caca_putchar(x-1, y-2, '\''); + caca_putchar(x+2, y-2, '`'); break; case 23: - ee_set_color(EE_CYAN); - ee_putstr(x, y-3, "__"); - ee_set_color(EE_WHITE); - ee_putstr(x-2, y-2, "-'"); - ee_putstr(x+2, y-2, "`-"); + caca_set_color(EE_CYAN); + caca_putstr(x, y-3, "__"); + caca_set_color(EE_WHITE); + caca_putstr(x-2, y-2, "-'"); + caca_putstr(x+2, y-2, "`-"); break; case 22: - ee_set_color(EE_CYAN); - ee_putstr(x, y-3, "__"); - ee_putchar(x-1, y-2, '\''); - ee_putchar(x+2, y-2, '`'); - ee_set_color(EE_WHITE); - ee_putstr(x-3, y-2, ",-"); - ee_putstr(x+3, y-2, "-."); + caca_set_color(EE_CYAN); + caca_putstr(x, y-3, "__"); + caca_putchar(x-1, y-2, '\''); + caca_putchar(x+2, y-2, '`'); + caca_set_color(EE_WHITE); + caca_putstr(x-3, y-2, ",-"); + caca_putstr(x+3, y-2, "-."); break; case 21: - ee_set_color(EE_CYAN); - ee_putstr(x-1, y-3, "____"); - ee_putchar(x-2, y-2, '\''); - ee_putchar(x+3, y-2, '`'); - ee_set_color(EE_WHITE); - ee_putstr(x-4, y-2, ",-"); - ee_putstr(x+4, y-2, "-."); + caca_set_color(EE_CYAN); + caca_putstr(x-1, y-3, "____"); + caca_putchar(x-2, y-2, '\''); + caca_putchar(x+3, y-2, '`'); + caca_set_color(EE_WHITE); + caca_putstr(x-4, y-2, ",-"); + caca_putstr(x+4, y-2, "-."); break; case 20: - ee_set_color(EE_WHITE); - ee_putstr(x, y-3, "%%"); - ee_putchar(x-4, y-2, ','); - ee_putchar(x+5, y-2, '.'); - ee_set_color(EE_CYAN); - ee_putchar(x-1, y-3, ':'); - ee_putchar(x+2, y-3, ':'); - ee_putstr(x-3, y-2, "-'"); - ee_putstr(x+3, y-2, "`-"); + caca_set_color(EE_WHITE); + caca_putstr(x, y-3, "%%"); + caca_putchar(x-4, y-2, ','); + caca_putchar(x+5, y-2, '.'); + caca_set_color(EE_CYAN); + caca_putchar(x-1, y-3, ':'); + caca_putchar(x+2, y-3, ':'); + caca_putstr(x-3, y-2, "-'"); + caca_putstr(x+3, y-2, "`-"); break; case 19: - ee_set_color(EE_WHITE); - ee_putstr(x, y-4, "%%"); - ee_putstr(x, y-3, "##"); - ee_set_color(EE_CYAN); - ee_putchar(x-1, y-4, ':'); - ee_putchar(x+2, y-4, ':'); - ee_putchar(x-1, y-3, '%'); - ee_putchar(x+2, y-3, '%'); - ee_putstr(x-4, y-2, ",-'"); - ee_putstr(x+3, y-2, "`-."); - ee_set_color(EE_BLUE); - ee_putchar(x-2, y-3, ':'); - ee_putchar(x+3, y-3, ':'); + caca_set_color(EE_WHITE); + caca_putstr(x, y-4, "%%"); + caca_putstr(x, y-3, "##"); + caca_set_color(EE_CYAN); + caca_putchar(x-1, y-4, ':'); + caca_putchar(x+2, y-4, ':'); + caca_putchar(x-1, y-3, '%'); + caca_putchar(x+2, y-3, '%'); + caca_putstr(x-4, y-2, ",-'"); + caca_putstr(x+3, y-2, "`-."); + caca_set_color(EE_BLUE); + caca_putchar(x-2, y-3, ':'); + caca_putchar(x+3, y-3, ':'); break; case 18: default: r = (18 - frame) * (18 - frame); - ee_set_color(EE_WHITE); - ee_putstr(x-1, y-5-r, ":%%:"); - ee_putstr(x-1, y-4-r, "%##%"); - ee_set_color(EE_CYAN); - ee_putchar(x-2, y-4-r, ':'); - ee_putchar(x+3, y-4-r, ':'); - ee_putchar(x-2, y-2, '\''); - ee_putchar(x+3, y-2, '`'); - ee_set_color(EE_BLUE); - ee_putchar(x-3, y-2, ':'); - ee_putchar(x+4, y-2, ':'); + caca_set_color(EE_WHITE); + caca_putstr(x-1, y-5-r, ":%%:"); + caca_putstr(x-1, y-4-r, "%##%"); + caca_set_color(EE_CYAN); + caca_putchar(x-2, y-4-r, ':'); + caca_putchar(x+3, y-4-r, ':'); + caca_putchar(x-2, y-2, '\''); + caca_putchar(x+3, y-2, '`'); + caca_set_color(EE_BLUE); + caca_putchar(x-3, y-2, ':'); + caca_putchar(x+4, y-2, ':'); for(i = 0; i <= r; i++) { - ee_set_color(EE_WHITE); - ee_putstr(x-1, y-3-i, ((i+frame) % 5) ? "####" : "%%%%"); - ee_set_color(EE_CYAN); - ee_putchar(x-2, y-3-i, '%'); - ee_putchar(x+3, y-3-i, '%'); - ee_set_color(EE_BLUE); - ee_putchar(x-3, y-3-i, ':'); - ee_putchar(x+4, y-3-i, ':'); + caca_set_color(EE_WHITE); + caca_putstr(x-1, y-3-i, ((i+frame) % 5) ? "####" : "%%%%"); + caca_set_color(EE_CYAN); + caca_putchar(x-2, y-3-i, '%'); + caca_putchar(x+3, y-3-i, '%'); + caca_set_color(EE_BLUE); + caca_putchar(x-3, y-3-i, ':'); + caca_putchar(x+4, y-3-i, ':'); } break; } @@ -443,16 +443,16 @@ static void draw_nuke(int x, int y, int frame) int r = (29 - frame) * (29 - frame) / 8; /* Lots of duplicate pixels, but we don't care */ - ee_set_color(EE_BLUE); - ee_draw_ellipse(x, y, r, r / 2, ':'); - ee_draw_ellipse(x, y, r + 1, r / 2, ':'); - ee_draw_ellipse(x, y, r + 2, r / 2, ':'); - ee_set_color(EE_CYAN); - ee_draw_ellipse(x, y, r + 2, r / 2 + 1, '%'); - ee_draw_ellipse(x, y, r + 3, r / 2 + 1, '%'); - ee_set_color(EE_WHITE); - ee_draw_ellipse(x, y, r + 3, r / 2 + 2, '#'); - ee_draw_ellipse(x, y, r + 4, r / 2 + 2, '#'); - ee_draw_ellipse(x, y, r + 4, r / 2 + 3, '#'); + caca_set_color(EE_BLUE); + caca_draw_ellipse(x, y, r, r / 2, ':'); + caca_draw_ellipse(x, y, r + 1, r / 2, ':'); + caca_draw_ellipse(x, y, r + 2, r / 2, ':'); + caca_set_color(EE_CYAN); + caca_draw_ellipse(x, y, r + 2, r / 2 + 1, '%'); + caca_draw_ellipse(x, y, r + 3, r / 2 + 1, '%'); + caca_set_color(EE_WHITE); + caca_draw_ellipse(x, y, r + 3, r / 2 + 2, '#'); + caca_draw_ellipse(x, y, r + 4, r / 2 + 2, '#'); + caca_draw_ellipse(x, y, r + 4, r / 2 + 3, '#'); } diff --git a/test/Makefile.am b/test/Makefile.am index 580e646..2bf7e4f 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -1,8 +1,8 @@ ############################################################################### -# Automake targets and declarations for libee tests +# Automake targets and declarations for libcaca tests ############################################################################### -AM_CPPFLAGS = -I$(top_srcdir)/libee +AM_CPPFLAGS = -I$(top_srcdir)/libcaca if USE_SLANG LDFLAGS_slang = -lslang @@ -14,10 +14,10 @@ endif bin_PROGRAMS = demo spritedit demo_SOURCES = demo.c -demo_LDADD = ../libee/libee.a $(LDFLAGS_slang) $(LDFLAGS_ncurses) -lm +demo_LDADD = ../libcaca/libcaca.a $(LDFLAGS_slang) $(LDFLAGS_ncurses) -lm demo_CFLAGS = `pkg-config --cflags gtk+-2.0` demo_LDFLAGS = `pkg-config --libs gtk+-2.0` spritedit_SOURCES = spritedit.c -spritedit_LDADD = ../libee/libee.a $(LDFLAGS_slang) $(LDFLAGS_ncurses) -lm +spritedit_LDADD = ../libcaca/libcaca.a $(LDFLAGS_slang) $(LDFLAGS_ncurses) -lm diff --git a/test/demo.c b/test/demo.c index fa2a585..148a7b6 100644 --- a/test/demo.c +++ b/test/demo.c @@ -1,5 +1,5 @@ /* - * demo demo using libee + * demo demo using libcaca * Copyright (c) 2003 Sam Hocevar * All Rights Reserved * @@ -29,7 +29,7 @@ #include #include -#include "ee.h" +#include "caca.h" static void display_menu(void); @@ -46,7 +46,7 @@ static void demo_blit(void); int bounds = 0; int outline = 0; -struct ee_sprite *sprite = NULL; +struct caca_sprite *sprite = NULL; GdkPixbuf *pixbuf; char *pixels; @@ -57,15 +57,15 @@ int main(int argc, char **argv) void (*demo)(void) = NULL; int quit = 0; - if(ee_init()) + if(caca_init()) { return 1; } - ee_set_delay(40000); + caca_set_delay(40000); /* Initialize data */ - sprite = ee_load_sprite("data/barboss.txt"); + sprite = caca_load_sprite("data/barboss.txt"); gdk_init (&argc, &argv); //pixbuf = gdk_pixbuf_new_from_file("/home/sam/pix/gally4.jpeg", NULL); @@ -82,17 +82,17 @@ fprintf(stderr, "w %i, h %i, stride %i\n", bufx, bufy, bufpitch); /* Main menu */ display_menu(); - ee_refresh(); + caca_refresh(); /* Go ! */ while(!quit) { - char key = ee_get_key(); + char key = caca_get_key(); if(key && demo) { display_menu(); - ee_refresh(); + caca_refresh(); demo = NULL; } else if(key) @@ -148,65 +148,65 @@ fprintf(stderr, "w %i, h %i, stride %i\n", bufx, bufy, bufpitch); } if(demo) - ee_clear(); + caca_clear(); - key = ee_get_key(); + key = caca_get_key(); if(key) goto handle_key; - ee_refresh(); + caca_refresh(); } if(demo) { demo(); - ee_set_color(EE_WHITE); - ee_draw_thin_box(1, 1, ee_get_width() - 2, ee_get_height() - 2); - ee_printf(4, 1, "[%i.%i fps]----", - 1000000 / ee_get_rendertime(), - (10000000 / ee_get_rendertime()) % 10); - ee_refresh(); + caca_set_color(EE_WHITE); + caca_draw_thin_box(1, 1, caca_get_width() - 2, caca_get_height() - 2); + caca_printf(4, 1, "[%i.%i fps]----", + 1000000 / caca_get_rendertime(), + (10000000 / caca_get_rendertime()) % 10); + caca_refresh(); } } /* Clean up */ - ee_free_sprite(sprite); - ee_end(); + caca_free_sprite(sprite); + caca_end(); return 0; } static void display_menu(void) { - int xo = ee_get_width() - 2; - int yo = ee_get_height() - 2; - - ee_clear(); - ee_set_color(EE_WHITE); - ee_draw_thin_box(1, 1, xo, yo); - - ee_putstr((xo - strlen("libee demo")) / 2, 3, "libee demo"); - ee_putstr((xo - strlen("============")) / 2, 4, "============"); - - ee_putstr(4, 6, "demos:"); - ee_putstr(4, 7, "'f': full"); - ee_putstr(4, 8, "'1': dots"); - ee_putstr(4, 9, "'2': lines"); - ee_putstr(4, 10, "'3': boxes"); - ee_putstr(4, 11, "'4': triangles"); - ee_putstr(4, 12, "'5': ellipses"); - ee_putstr(4, 13, "'s': sprites"); - ee_putstr(4, 14, "'c': color"); - ee_putstr(4, 15, "'i': image blit"); - - ee_putstr(4, 17, "settings:"); - ee_printf(4, 18, "'o': outline: %s", + int xo = caca_get_width() - 2; + int yo = caca_get_height() - 2; + + caca_clear(); + caca_set_color(EE_WHITE); + caca_draw_thin_box(1, 1, xo, yo); + + caca_putstr((xo - strlen("libcaca demo")) / 2, 3, "libcaca demo"); + caca_putstr((xo - strlen("==============")) / 2, 4, "=============="); + + caca_putstr(4, 6, "demos:"); + caca_putstr(4, 7, "'f': full"); + caca_putstr(4, 8, "'1': dots"); + caca_putstr(4, 9, "'2': lines"); + caca_putstr(4, 10, "'3': boxes"); + caca_putstr(4, 11, "'4': triangles"); + caca_putstr(4, 12, "'5': ellipses"); + caca_putstr(4, 13, "'s': sprites"); + caca_putstr(4, 14, "'c': color"); + caca_putstr(4, 15, "'i': image blit"); + + caca_putstr(4, 17, "settings:"); + caca_printf(4, 18, "'o': outline: %s", outline == 0 ? "none" : outline == 1 ? "solid" : "thin"); - ee_printf(4, 19, "'b': drawing boundaries: %s", + caca_printf(4, 19, "'b': drawing boundaries: %s", bounds == 0 ? "screen" : "infinite"); - ee_putstr(4, yo - 2, "'q': quit"); + caca_putstr(4, yo - 2, "'q': quit"); } static void demo_all(void) @@ -217,106 +217,106 @@ static void demo_all(void) i++; - ee_clear(); + caca_clear(); /* Draw the sun */ - ee_set_color(EE_YELLOW); - xo = ee_get_width() / 4; - yo = ee_get_height() / 4 + 5 * sin(0.03*i); + caca_set_color(EE_YELLOW); + xo = caca_get_width() / 4; + yo = caca_get_height() / 4 + 5 * sin(0.03*i); for(j = 0; j < 16; j++) { xa = xo - (30 + sin(0.03*i) * 8) * sin(0.03*i + M_PI*j/8); ya = yo + (15 + sin(0.03*i) * 4) * cos(0.03*i + M_PI*j/8); - ee_draw_thin_line(xo, yo, xa, ya); + caca_draw_thin_line(xo, yo, xa, ya); } j = 15 + sin(0.03*i) * 8; - ee_set_color(EE_WHITE); - ee_fill_ellipse(xo, yo, j, j / 2, '#'); - ee_set_color(EE_YELLOW); - ee_draw_ellipse(xo, yo, j, j / 2, '#'); + caca_set_color(EE_WHITE); + caca_fill_ellipse(xo, yo, j, j / 2, '#'); + caca_set_color(EE_YELLOW); + caca_draw_ellipse(xo, yo, j, j / 2, '#'); /* Draw the pyramid */ - xo = ee_get_width() * 5 / 8; + xo = caca_get_width() * 5 / 8; yo = 2; - xa = ee_get_width() / 8 + sin(0.03*i) * 5; - ya = ee_get_height() / 2 + cos(0.03*i) * 5; + xa = caca_get_width() / 8 + sin(0.03*i) * 5; + ya = caca_get_height() / 2 + cos(0.03*i) * 5; - xb = ee_get_width() - 10 - cos(0.02*i) * 10; - yb = ee_get_height() * 3 / 4 - 5 + sin(0.02*i) * 5; + xb = caca_get_width() - 10 - cos(0.02*i) * 10; + yb = caca_get_height() * 3 / 4 - 5 + sin(0.02*i) * 5; - xc = ee_get_width() / 4 - sin(0.02*i) * 5; - yc = ee_get_height() * 3 / 4 + cos(0.02*i) * 5; + xc = caca_get_width() / 4 - sin(0.02*i) * 5; + yc = caca_get_height() * 3 / 4 + cos(0.02*i) * 5; - ee_set_color(EE_GREEN); - ee_fill_triangle(xo, yo, xb, yb, xa, ya, '%'); - ee_set_color(EE_YELLOW); - ee_draw_thin_triangle(xo, yo, xb, yb, xa, ya); + caca_set_color(EE_GREEN); + caca_fill_triangle(xo, yo, xb, yb, xa, ya, '%'); + caca_set_color(EE_YELLOW); + caca_draw_thin_triangle(xo, yo, xb, yb, xa, ya); - ee_set_color(EE_RED); - ee_fill_triangle(xa, ya, xb, yb, xc, yc, '#'); - ee_set_color(EE_YELLOW); - ee_draw_thin_triangle(xa, ya, xb, yb, xc, yc); + caca_set_color(EE_RED); + caca_fill_triangle(xa, ya, xb, yb, xc, yc, '#'); + caca_set_color(EE_YELLOW); + caca_draw_thin_triangle(xa, ya, xb, yb, xc, yc); - ee_set_color(EE_BLUE); - ee_fill_triangle(xo, yo, xb, yb, xc, yc, '%'); - ee_set_color(EE_YELLOW); - ee_draw_thin_triangle(xo, yo, xb, yb, xc, yc); + caca_set_color(EE_BLUE); + caca_fill_triangle(xo, yo, xb, yb, xc, yc, '%'); + caca_set_color(EE_YELLOW); + caca_draw_thin_triangle(xo, yo, xb, yb, xc, yc); /* Draw a background triangle */ xa = 2; ya = 2; - xb = ee_get_width() - 3; - yb = ee_get_height() / 2; + xb = caca_get_width() - 3; + yb = caca_get_height() / 2; - xc = ee_get_width() / 3; - yc = ee_get_height() - 3; + xc = caca_get_width() / 3; + yc = caca_get_height() - 3; - ee_set_color(EE_CYAN); - ee_draw_thin_triangle(xa, ya, xb, yb, xc, yc); + caca_set_color(EE_CYAN); + caca_draw_thin_triangle(xa, ya, xb, yb, xc, yc); - xo = ee_get_width() / 2 + cos(0.027*i) * ee_get_width() / 3; - yo = ee_get_height() / 2 - sin(0.027*i) * ee_get_height() / 2; + xo = caca_get_width() / 2 + cos(0.027*i) * caca_get_width() / 3; + yo = caca_get_height() / 2 - sin(0.027*i) * caca_get_height() / 2; - ee_draw_thin_line(xa, ya, xo, yo); - ee_draw_thin_line(xb, yb, xo, yo); - ee_draw_thin_line(xc, yc, xo, yo); + caca_draw_thin_line(xa, ya, xo, yo); + caca_draw_thin_line(xb, yb, xo, yo); + caca_draw_thin_line(xc, yc, xo, yo); /* Draw a sprite on the pyramid */ - ee_draw_sprite(xo, yo, sprite, 0); + caca_draw_sprite(xo, yo, sprite, 0); /* Draw a trail behind the foreground sprite */ for(j = i - 60; j < i; j++) { - int delta = ee_rand(-5, 5); - ee_set_color(ee_rand(0, 15)); - ee_putchar(ee_get_width() / 2 - + cos(0.02*j) * (delta + ee_get_width() / 4), - ee_get_height() / 2 - + sin(0.02*j) * (delta + ee_get_height() / 3), + int delta = caca_rand(-5, 5); + caca_set_color(caca_rand(0, 15)); + caca_putchar(caca_get_width() / 2 + + cos(0.02*j) * (delta + caca_get_width() / 4), + caca_get_height() / 2 + + sin(0.02*j) * (delta + caca_get_height() / 3), '#'); } /* Draw foreground sprite */ - ee_draw_sprite(ee_get_width() / 2 + cos(0.02*i) * ee_get_width() / 4, - ee_get_height() / 2 + sin(0.02*i) * ee_get_height() / 3, + caca_draw_sprite(caca_get_width() / 2 + cos(0.02*i) * caca_get_width() / 4, + caca_get_height() / 2 + sin(0.02*i) * caca_get_height() / 3, sprite, 0); } static void demo_dots(void) { - int xmax = ee_get_width() - 1; - int ymax = ee_get_height() - 1; + int xmax = caca_get_width() - 1; + int ymax = caca_get_height() - 1; int i; for(i = 1000; i--;) { /* Putpixel */ - ee_set_color(ee_rand(0, 15)); - ee_putchar(ee_rand(0, xmax), ee_rand(0, ymax), '#'); + caca_set_color(caca_rand(0, 15)); + caca_putchar(caca_rand(0, xmax), caca_rand(0, ymax), '#'); } } @@ -325,138 +325,138 @@ static void demo_color(void) int i; char buf[BUFSIZ]; - ee_clear(); + caca_clear(); for(i = 0; i < 16; i++) { - sprintf(buf, "'%c': %i (%s)", 'a' + i, i, ee_get_color_name(i)); - ee_set_color(EE_WHITE); - ee_putstr(4, i + 3, buf); - ee_set_color(i); - ee_putstr(40, i + 3, "XXXXXXXXXX-XX--X----------"); + sprintf(buf, "'%c': %i (%s)", 'a' + i, i, caca_get_color_name(i)); + caca_set_color(EE_WHITE); + caca_putstr(4, i + 3, buf); + caca_set_color(i); + caca_putstr(40, i + 3, "XXXXXXXXXX-XX--X----------"); } } static void demo_lines(void) { - int w = ee_get_width(); - int h = ee_get_height(); + int w = caca_get_width(); + int h = caca_get_height(); int xa, ya, xb, yb; if(bounds) { - xa = ee_rand(- w, 2 * w); ya = ee_rand(- h, 2 * h); - xb = ee_rand(- w, 2 * w); yb = ee_rand(- h, 2 * h); + xa = caca_rand(- w, 2 * w); ya = caca_rand(- h, 2 * h); + xb = caca_rand(- w, 2 * w); yb = caca_rand(- h, 2 * h); } else { - xa = ee_rand(0, w - 1); ya = ee_rand(0, h - 1); - xb = ee_rand(0, w - 1); yb = ee_rand(0, h - 1); + xa = caca_rand(0, w - 1); ya = caca_rand(0, h - 1); + xb = caca_rand(0, w - 1); yb = caca_rand(0, h - 1); } - ee_set_color(ee_rand(0, 15)); + caca_set_color(caca_rand(0, 15)); if(outline > 1) - ee_draw_thin_line(xa, ya, xb, yb); + caca_draw_thin_line(xa, ya, xb, yb); else - ee_draw_line(xa, ya, xb, yb, '#'); + caca_draw_line(xa, ya, xb, yb, '#'); } static void demo_boxes(void) { - int w = ee_get_width(); - int h = ee_get_height(); + int w = caca_get_width(); + int h = caca_get_height(); int xa, ya, xb, yb; if(bounds) { - xa = ee_rand(- w, 2 * w); ya = ee_rand(- h, 2 * h); - xb = ee_rand(- w, 2 * w); yb = ee_rand(- h, 2 * h); + xa = caca_rand(- w, 2 * w); ya = caca_rand(- h, 2 * h); + xb = caca_rand(- w, 2 * w); yb = caca_rand(- h, 2 * h); } else { - xa = ee_rand(0, w - 1); ya = ee_rand(0, h - 1); - xb = ee_rand(0, w - 1); yb = ee_rand(0, h - 1); + xa = caca_rand(0, w - 1); ya = caca_rand(0, h - 1); + xb = caca_rand(0, w - 1); yb = caca_rand(0, h - 1); } - ee_set_color(ee_rand(0, 15)); - ee_fill_box(xa, ya, xb, yb, '#'); + caca_set_color(caca_rand(0, 15)); + caca_fill_box(xa, ya, xb, yb, '#'); - ee_set_color(ee_rand(0, 15)); + caca_set_color(caca_rand(0, 15)); if(outline == 2) - ee_draw_thin_box(xa, ya, xb, yb); + caca_draw_thin_box(xa, ya, xb, yb); else if(outline == 1) - ee_draw_box(xa, ya, xb, yb, '#'); + caca_draw_box(xa, ya, xb, yb, '#'); } static void demo_ellipses(void) { - int w = ee_get_width(); - int h = ee_get_height(); + int w = caca_get_width(); + int h = caca_get_height(); int x, y, a, b; if(bounds) { - x = ee_rand(- w, 2 * w); y = ee_rand(- h, 2 * h); - a = ee_rand(0, w); b = ee_rand(0, h); + x = caca_rand(- w, 2 * w); y = caca_rand(- h, 2 * h); + a = caca_rand(0, w); b = caca_rand(0, h); } else { do { - x = ee_rand(0, w); y = ee_rand(0, h); - a = ee_rand(0, w); b = ee_rand(0, h); + x = caca_rand(0, w); y = caca_rand(0, h); + a = caca_rand(0, w); b = caca_rand(0, h); } while(x - a < 0 || x + a >= w || y - b < 0 || y + b >= h); } - ee_set_color(ee_rand(0, 15)); - ee_fill_ellipse(x, y, a, b, '#'); + caca_set_color(caca_rand(0, 15)); + caca_fill_ellipse(x, y, a, b, '#'); - ee_set_color(ee_rand(0, 15)); + caca_set_color(caca_rand(0, 15)); if(outline == 2) - ee_draw_thin_ellipse(x, y, a, b); + caca_draw_thin_ellipse(x, y, a, b); else if(outline == 1) - ee_draw_ellipse(x, y, a, b, '#'); + caca_draw_ellipse(x, y, a, b, '#'); } static void demo_triangles(void) { - int w = ee_get_width(); - int h = ee_get_height(); + int w = caca_get_width(); + int h = caca_get_height(); int xa, ya, xb, yb, xc, yc; if(bounds) { - xa = ee_rand(- w, 2 * w); ya = ee_rand(- h, 2 * h); - xb = ee_rand(- w, 2 * w); yb = ee_rand(- h, 2 * h); - xc = ee_rand(- w, 2 * w); yc = ee_rand(- h, 2 * h); + xa = caca_rand(- w, 2 * w); ya = caca_rand(- h, 2 * h); + xb = caca_rand(- w, 2 * w); yb = caca_rand(- h, 2 * h); + xc = caca_rand(- w, 2 * w); yc = caca_rand(- h, 2 * h); } else { - xa = ee_rand(0, w - 1); ya = ee_rand(0, h - 1); - xb = ee_rand(0, w - 1); yb = ee_rand(0, h - 1); - xc = ee_rand(0, w - 1); yc = ee_rand(0, h - 1); + xa = caca_rand(0, w - 1); ya = caca_rand(0, h - 1); + xb = caca_rand(0, w - 1); yb = caca_rand(0, h - 1); + xc = caca_rand(0, w - 1); yc = caca_rand(0, h - 1); } - ee_set_color(ee_rand(0, 15)); - ee_fill_triangle(xa, ya, xb, yb, xc, yc, '#'); + caca_set_color(caca_rand(0, 15)); + caca_fill_triangle(xa, ya, xb, yb, xc, yc, '#'); - ee_set_color(ee_rand(0, 15)); + caca_set_color(caca_rand(0, 15)); if(outline == 2) - ee_draw_thin_triangle(xa, ya, xb, yb, xc, yc); + caca_draw_thin_triangle(xa, ya, xb, yb, xc, yc); else if(outline == 1) - ee_draw_triangle(xa, ya, xb, yb, xc, yc, '#'); + caca_draw_triangle(xa, ya, xb, yb, xc, yc, '#'); } static void demo_sprites(void) { - ee_draw_sprite(ee_rand(0, ee_get_width() - 1), - ee_rand(0, ee_get_height() - 1), sprite, 0); + caca_draw_sprite(caca_rand(0, caca_get_width() - 1), + caca_rand(0, caca_get_height() - 1), sprite, 0); } static void demo_blit(void) { -ee_set_color(EE_LIGHTGRAY); - ee_blit(6, 4, ee_get_width() - 6, ee_get_height() - 4, pixels, bufx, bufy); +caca_set_color(EE_LIGHTGRAY); + caca_blit(6, 4, caca_get_width() - 6, caca_get_height() - 4, pixels, bufx, bufy); } diff --git a/test/spritedit.c b/test/spritedit.c index 492ed44..9264924 100644 --- a/test/spritedit.c +++ b/test/spritedit.c @@ -1,5 +1,5 @@ /* - * spritedit sprite editor using libee + * spritedit sprite editor using libcaca * Copyright (c) 2003 Sam Hocevar * All Rights Reserved * @@ -24,12 +24,12 @@ #include -#include "ee.h" +#include "caca.h" int main(int argc, char **argv) { int quit = 0; - struct ee_sprite *sprite; + struct caca_sprite *sprite; int frame = 0; if(argc < 2) @@ -38,14 +38,14 @@ int main(int argc, char **argv) return 1; } - if(ee_init()) + if(caca_init()) return 1; - sprite = ee_load_sprite(argv[1]); + sprite = caca_load_sprite(argv[1]); if(!sprite) { - ee_end(); + caca_end(); fprintf(stderr, "%s: could not open `%s'.\n", argv[0], argv[1]); return 1; } @@ -56,7 +56,7 @@ int main(int argc, char **argv) int xa, ya, xb, yb; char buf[BUFSIZ]; - switch(ee_get_key()) + switch(caca_get_key()) { case 0: break; @@ -68,47 +68,47 @@ int main(int argc, char **argv) frame--; break; case '+': - if(frame < ee_get_sprite_frames(sprite) - 1) + if(frame < caca_get_sprite_frames(sprite) - 1) frame++; break; } - ee_clear(); + caca_clear(); - ee_set_color(EE_WHITE); - ee_draw_thin_box(0, 0, ee_get_width() - 1, ee_get_height() - 1); + caca_set_color(EE_WHITE); + caca_draw_thin_box(0, 0, caca_get_width() - 1, caca_get_height() - 1); - ee_putstr(3, 0, "[ Sprite editor for libee ]"); + caca_putstr(3, 0, "[ Sprite editor for libcaca ]"); sprintf(buf, "sprite `%s'", argv[1]); - ee_putstr(3, 2, buf); - sprintf(buf, "frame %i/%i", frame, ee_get_sprite_frames(sprite) - 1); - ee_putstr(3, 3, buf); + caca_putstr(3, 2, buf); + sprintf(buf, "frame %i/%i", frame, caca_get_sprite_frames(sprite) - 1); + caca_putstr(3, 3, buf); /* Crosshair */ - ee_draw_thin_line(57, 2, 57, 18); - ee_draw_thin_line(37, 10, 77, 10); - ee_putchar(57, 10, '+'); + caca_draw_thin_line(57, 2, 57, 18); + caca_draw_thin_line(37, 10, 77, 10); + caca_putchar(57, 10, '+'); /* Boxed sprite */ - xa = -1 - ee_get_sprite_dx(sprite, frame); - ya = -1 - ee_get_sprite_dy(sprite, frame); - xb = xa + 1 + ee_get_sprite_width(sprite, frame); - yb = ya + 1 + ee_get_sprite_height(sprite, frame); - ee_set_color(EE_BLACK); - ee_fill_box(57 + xa, 10 + ya, 57 + xb, 10 + yb, ' '); - ee_set_color(EE_WHITE); - ee_draw_thin_box(57 + xa, 10 + ya, 57 + xb, 10 + yb); - ee_draw_sprite(57, 10, sprite, frame); + xa = -1 - caca_get_sprite_dx(sprite, frame); + ya = -1 - caca_get_sprite_dy(sprite, frame); + xb = xa + 1 + caca_get_sprite_width(sprite, frame); + yb = ya + 1 + caca_get_sprite_height(sprite, frame); + caca_set_color(EE_BLACK); + caca_fill_box(57 + xa, 10 + ya, 57 + xb, 10 + yb, ' '); + caca_set_color(EE_WHITE); + caca_draw_thin_box(57 + xa, 10 + ya, 57 + xb, 10 + yb); + caca_draw_sprite(57, 10, sprite, frame); /* Free sprite */ - ee_draw_sprite(20, 10, sprite, frame); + caca_draw_sprite(20, 10, sprite, frame); - ee_refresh(); + caca_refresh(); } /* Clean up */ - ee_end(); + caca_end(); return 0; }