Changeset 1057 for ttyvaders/trunk/src
- Timestamp:
- Sep 18, 2006, 6:54:08 PM (17 years ago)
- Location:
- ttyvaders/trunk/src
- Files:
-
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
ttyvaders/trunk/src/aliens.c
r544 r1057 27 27 #include "common.h" 28 28 29 struct cucul_sprite*foo_sprite;30 struct cucul_sprite*bar_sprite;31 struct cucul_sprite*baz_sprite;29 cucul_canvas_t *foo_sprite; 30 cucul_canvas_t *bar_sprite; 31 cucul_canvas_t *baz_sprite; 32 32 33 33 void init_aliens(game *g, aliens *al) 34 34 { 35 cucul_buffer_t *b; 35 36 int i; 36 37 … … 40 41 } 41 42 42 foo_sprite = cucul_load_sprite(g->qq, "data/foofight.txt"); 43 bar_sprite = cucul_load_sprite(g->qq, "data/barfight.txt"); 44 baz_sprite = cucul_load_sprite(g->qq, "data/bazfight.txt"); 43 b = cucul_load_file("data/foofight.caca"); 44 foo_sprite = cucul_import_canvas(b, ""); 45 cucul_free_buffer(b); 46 47 b = cucul_load_file("data/barfight.caca"); 48 bar_sprite = cucul_import_canvas(b, ""); 49 cucul_free_buffer(b); 50 51 b = cucul_load_file("data/bazfight.caca"); 52 baz_sprite = cucul_import_canvas(b, ""); 53 cucul_free_buffer(b); 45 54 } 46 55 … … 54 63 { 55 64 case ALIEN_FOO: 56 cucul_draw_sprite(g->qq, al->x[i], al->y[i], foo_sprite, al->img[i] % 5); 65 cucul_set_canvas_frame(foo_sprite, al->img[i] % 5); 66 cucul_blit(g->cv, al->x[i], al->y[i], foo_sprite, NULL); 57 67 break; 58 68 case ALIEN_BAR: 59 cucul_draw_sprite(g->qq, al->x[i], al->y[i], bar_sprite, al->img[i] % 2); 69 cucul_set_canvas_frame(bar_sprite, al->img[i] % 2); 70 cucul_blit(g->cv, al->x[i], al->y[i], bar_sprite, NULL); 60 71 break; 61 72 case ALIEN_BAZ: 62 cucul_draw_sprite(g->qq, al->x[i], al->y[i], baz_sprite, al->img[i] % 4); 73 cucul_set_canvas_frame(baz_sprite, al->img[i] % 4); 74 cucul_blit(g->cv, al->x[i], al->y[i], baz_sprite, NULL); 63 75 break; 64 76 case ALIEN_NONE: -
ttyvaders/trunk/src/bonus.c
r544 r1057 27 27 #include "common.h" 28 28 29 struct cucul_sprite*heart_sprite;30 struct cucul_sprite*gem_sprite;29 cucul_canvas_t *heart_sprite; 30 cucul_canvas_t *gem_sprite; 31 31 32 32 void init_bonus(game *g, bonus *bo) 33 33 { 34 cucul_buffer_t *b; 34 35 int i; 35 36 … … 39 40 } 40 41 41 heart_sprite = cucul_load_sprite(g->qq, "data/bonheart.txt"); 42 gem_sprite = cucul_load_sprite(g->qq, "data/bongem.txt"); 42 b = cucul_load_file("data/bonheart.caca"); 43 heart_sprite = cucul_import_canvas(b, ""); 44 cucul_free_buffer(b); 45 46 b = cucul_load_file("data/bongem.caca"); 47 gem_sprite = cucul_import_canvas(b, ""); 48 cucul_free_buffer(b); 43 49 } 44 50 … … 52 58 { 53 59 case BONUS_GREEN: 54 cucul_ draw_sprite(g->qq, bo->x[i], bo->y[i], gem_sprite,55 (bo->n[i]/2 % 3) ? 0 : 1);60 cucul_set_canvas_frame(gem_sprite, (bo->n[i]/2 % 3) ? 0 : 1); 61 cucul_blit(g->cv, bo->x[i], bo->y[i], gem_sprite, NULL); 56 62 break; 57 63 case BONUS_LIFE: 58 cucul_ draw_sprite(g->qq, bo->x[i], bo->y[i], heart_sprite,59 (bo->n[i] % 3) ? 0 : 1);64 cucul_set_canvas_frame(heart_sprite, (bo->n[i] % 3) ? 0 : 1); 65 cucul_blit(g->cv, bo->x[i], bo->y[i], heart_sprite, NULL); 60 66 break; 61 67 case BONUS_NONE: -
ttyvaders/trunk/src/box.c
r544 r1057 46 46 int j, frame; 47 47 48 cucul_set_color(g-> qq, CUCUL_COLOR_YELLOW, CUCUL_COLOR_BLACK);48 cucul_set_color(g->cv, CUCUL_COLOR_YELLOW, CUCUL_COLOR_BLACK); 49 49 50 50 /* Draw the thin horizontal line */ 51 51 if(b->frame < 8) 52 52 { 53 cucul_draw_line(g-> qq, b->x - b->w * b->frame / 16, b->y,54 b->x + b->w * b->frame / 16 - 1, b->y, 'X');53 cucul_draw_line(g->cv, b->x - b->w * b->frame / 16, b->y, 54 b->x + b->w * b->frame / 16 - 1, b->y, "X"); 55 55 return; 56 56 } … … 59 59 frame = b->frame < 12 ? b->frame : 12; 60 60 61 cucul_draw_line(g-> qq, b->x - b->w / 2, b->y - b->h * (frame - 8) / 8,62 b->x + b->w / 2 - 1, b->y - b->h * (frame - 8) / 8, 'X');63 cucul_draw_line(g-> qq, b->x - b->w / 2, b->y + b->h * (frame - 8) / 8,64 b->x + b->w / 2 - 1, b->y + b->h * (frame - 8) / 8, 'X');61 cucul_draw_line(g->cv, b->x - b->w / 2, b->y - b->h * (frame - 8) / 8, 62 b->x + b->w / 2 - 1, b->y - b->h * (frame - 8) / 8, "X"); 63 cucul_draw_line(g->cv, b->x - b->w / 2, b->y + b->h * (frame - 8) / 8, 64 b->x + b->w / 2 - 1, b->y + b->h * (frame - 8) / 8, "X"); 65 65 66 cucul_draw_line(g-> qq, b->x - b->w / 2, b->y - b->h * (frame - 8) / 8,67 b->x - b->w / 2, b->y + b->h * (frame - 8) / 8 - 1, 'X');68 cucul_draw_line(g-> qq, b->x + b->w / 2 - 1, b->y - b->h * (frame - 8) / 8,69 b->x + b->w / 2 - 1, b->y + b->h * (frame - 8) / 8 - 1, 'X');66 cucul_draw_line(g->cv, b->x - b->w / 2, b->y - b->h * (frame - 8) / 8, 67 b->x - b->w / 2, b->y + b->h * (frame - 8) / 8 - 1, "X"); 68 cucul_draw_line(g->cv, b->x + b->w / 2 - 1, b->y - b->h * (frame - 8) / 8, 69 b->x + b->w / 2 - 1, b->y + b->h * (frame - 8) / 8 - 1, "X"); 70 70 71 cucul_set_color(g-> qq, CUCUL_COLOR_BLACK, CUCUL_COLOR_BLACK);71 cucul_set_color(g->cv, CUCUL_COLOR_BLACK, CUCUL_COLOR_BLACK); 72 72 73 73 for(j = b->y - b->h * (frame - 8) / 8 + 1; … … 75 75 j++) 76 76 { 77 cucul_draw_line(g-> qq, b->x - b->w / 2 + 1, j,78 b->x + b->w / 2 - 2, j, 'X');77 cucul_draw_line(g->cv, b->x - b->w / 2 + 1, j, 78 b->x + b->w / 2 - 2, j, "X"); 79 79 } 80 80 … … 85 85 86 86 /* Draw the text inside the frame */ 87 cucul_set_color(g-> qq, CUCUL_COLOR_YELLOW, CUCUL_COLOR_BLACK);87 cucul_set_color(g->cv, CUCUL_COLOR_YELLOW, CUCUL_COLOR_BLACK); 88 88 89 89 /* FIXME: use a font */ 90 cucul_putstr(g-> qq, b->x - b->w / 2 + 12, b->y - b->h / 2 + 2,90 cucul_putstr(g->cv, b->x - b->w / 2 + 12, b->y - b->h / 2 + 2, 91 91 "XXXX. .XXXX X X .XXXX .XXXX XXXX."); 92 cucul_putstr(g-> qq, b->x - b->w / 2 + 12, b->y - b->h / 2 + 3,92 cucul_putstr(g->cv, b->x - b->w / 2 + 12, b->y - b->h / 2 + 3, 93 93 "X `X X' X X X X' X' X `X"); 94 cucul_putstr(g-> qq, b->x - b->w / 2 + 12, b->y - b->h / 2 + 4,94 cucul_putstr(g->cv, b->x - b->w / 2 + 12, b->y - b->h / 2 + 4, 95 95 "XXXX' XXXXX X X `XXX XXXX X X"); 96 cucul_putstr(g-> qq, b->x - b->w / 2 + 12, b->y - b->h / 2 + 5,96 cucul_putstr(g->cv, b->x - b->w / 2 + 12, b->y - b->h / 2 + 5, 97 97 "X' X' `X X. ,X `X X' X ,X"); 98 cucul_putstr(g-> qq, b->x - b->w / 2 + 12, b->y - b->h / 2 + 6,98 cucul_putstr(g->cv, b->x - b->w / 2 + 12, b->y - b->h / 2 + 6, 99 99 "X X X `XXXX XXXX' `XXXX XXXX'"); 100 100 } -
ttyvaders/trunk/src/ceo.c
r544 r1057 34 34 while(!end) 35 35 { 36 c ucul_clear(g->qq);36 caca_event_t ev; 37 37 38 if(caca_get_event(g->kk, CACA_EVENT_KEY_PRESS) 39 == (CACA_EVENT_KEY_PRESS | '\t')) 38 cucul_clear_canvas(g->cv); 39 40 if(caca_get_event(g->dp, CACA_EVENT_KEY_PRESS, &ev, 0) 41 && ev.data.key.ch == '\t') 40 42 { 41 43 end = 1; … … 44 46 fprintf(stderr, "foo\n"); 45 47 46 caca_ display(g->qq);48 caca_refresh_display(g->cv); 47 49 48 50 usleep(40000); -
ttyvaders/trunk/src/common.h
r544 r1057 43 43 * Graphics primitives 44 44 */ 45 #include "caca.h"45 #include <caca.h> 46 46 47 47 /* … … 133 133 int w, h; 134 134 135 cucul_ t *qq;136 caca_ t *kk;135 cucul_canvas_t *cv; 136 caca_display_t *dp; 137 137 138 138 starfield *sf; -
ttyvaders/trunk/src/explosions.c
r544 r1057 27 27 #include "common.h" 28 28 29 struct cucul_sprite*medium_sprite;30 struct cucul_sprite*small_sprite;29 cucul_canvas_t *medium_sprite; 30 cucul_canvas_t *small_sprite; 31 31 32 32 void init_explosions(game *g, explosions *ex) 33 33 { 34 cucul_buffer_t *b; 34 35 int i; 35 36 … … 39 40 } 40 41 41 medium_sprite = cucul_load_sprite(g->qq, "data/xplmed.txt"); 42 small_sprite = cucul_load_sprite(g->qq, "data/xplsmall.txt"); 42 b = cucul_load_file("data/xplmed.caca"); 43 medium_sprite = cucul_import_canvas(b, ""); 44 cucul_free_buffer(b); 45 46 b = cucul_load_file("data/xplsmall.caca"); 47 small_sprite = cucul_import_canvas(b, ""); 48 cucul_free_buffer(b); 43 49 } 44 50 … … 77 83 { 78 84 #if 0 79 cucul_set_fg_color(g-> qq, CACA_COLOR_GREEN);80 cucul_goto(g-> qq, ex->x[i] + 3, ex->y[i]);85 cucul_set_fg_color(g->cv, CACA_COLOR_GREEN); 86 cucul_goto(g->cv, ex->x[i] + 3, ex->y[i]); 81 87 switch(cucul_rand(0,2)) 82 88 { 83 89 case 0: 84 cucul_putchar(g-> qq, 'p');85 cucul_putchar(g-> qq, 'i');86 cucul_putchar(g-> qq, 'f');90 cucul_putchar(g->cv, 'p'); 91 cucul_putchar(g->cv, 'i'); 92 cucul_putchar(g->cv, 'f'); 87 93 break; 88 94 case 1: 89 cucul_putchar(g-> qq, 'p');90 cucul_putchar(g-> qq, 'a');91 cucul_putchar(g-> qq, 'f');95 cucul_putchar(g->cv, 'p'); 96 cucul_putchar(g->cv, 'a'); 97 cucul_putchar(g->cv, 'f'); 92 98 break; 93 99 case 2: 94 cucul_putchar(g-> qq, 'p');95 cucul_putchar(g-> qq, 'o');96 cucul_putchar(g-> qq, 'u');97 cucul_putchar(g-> qq, 'f');100 cucul_putchar(g->cv, 'p'); 101 cucul_putchar(g->cv, 'o'); 102 cucul_putchar(g->cv, 'u'); 103 cucul_putchar(g->cv, 'f'); 98 104 break; 99 105 } 100 cucul_putchar(g-> qq, '!');106 cucul_putchar(g->cv, '!'); 101 107 #endif 102 108 … … 104 110 { 105 111 case EXPLOSION_MEDIUM: 106 cucul_ draw_sprite(g->qq, ex->x[i], ex->y[i], medium_sprite,107 10 - ex->n[i]);112 cucul_set_canvas_frame(medium_sprite, 10 - ex->n[i]); 113 cucul_blit(g->cv, ex->x[i], ex->y[i], medium_sprite, NULL); 108 114 break; 109 115 case EXPLOSION_SMALL: 110 cucul_ draw_sprite(g->qq, ex->x[i], ex->y[i], small_sprite,111 6 - ex->n[i]);116 cucul_set_canvas_frame(small_sprite, 6 - ex->n[i]); 117 cucul_blit(g->cv, ex->x[i], ex->y[i], small_sprite, NULL); 112 118 break; 113 119 case EXPLOSION_NONE: -
ttyvaders/trunk/src/intro.c
r544 r1057 31 31 void intro(game *g) 32 32 { 33 struct cucul_sprite *foo_sprite = cucul_load_sprite(g->qq, "data/foofight.txt"); 34 struct cucul_sprite *bar_sprite = cucul_load_sprite(g->qq, "data/barfight.txt"); 35 struct cucul_sprite *baz_sprite = cucul_load_sprite(g->qq, "data/bazfight.txt"); 36 33 caca_event_t ev; 34 cucul_canvas_t *foo_sprite; 35 cucul_canvas_t *bar_sprite; 36 cucul_canvas_t *baz_sprite; 37 cucul_buffer_t *b; 37 38 int frame = 0; 38 39 39 while(caca_get_event(g->kk, CACA_EVENT_KEY_PRESS) == 0) 40 b = cucul_load_file("data/foofight.caca"); 41 foo_sprite = cucul_import_canvas(b, ""); 42 cucul_free_buffer(b); 43 44 b = cucul_load_file("data/barfight.caca"); 45 bar_sprite = cucul_import_canvas(b, ""); 46 cucul_free_buffer(b); 47 48 b = cucul_load_file("data/bazfight.caca"); 49 baz_sprite = cucul_import_canvas(b, ""); 50 cucul_free_buffer(b); 51 52 while(caca_get_event(g->dp, CACA_EVENT_KEY_PRESS, &ev, 0) == 0) 40 53 { 41 54 int i, xo, yo, x[5], y[5]; … … 43 56 frame++; 44 57 45 cucul_clear (g->qq);58 cucul_clear_canvas(g->cv); 46 59 47 xo = cucul_get_ width(g->qq) / 2;48 yo = cucul_get_ height(g->qq) / 2;60 xo = cucul_get_canvas_width(g->cv) / 2; 61 yo = cucul_get_canvas_height(g->cv) / 2; 49 62 50 cucul_set_color(g-> qq, CUCUL_COLOR_RED, CUCUL_COLOR_BLACK);51 cucul_fill_ellipse(g-> qq, xo, yo, 16, 8, '#');52 cucul_set_color(g-> qq, CUCUL_COLOR_GREEN, CUCUL_COLOR_BLACK);53 cucul_draw_thin_ellipse(g-> qq, xo, yo, 16, 8);63 cucul_set_color(g->cv, CUCUL_COLOR_RED, CUCUL_COLOR_BLACK); 64 cucul_fill_ellipse(g->cv, xo, yo, 16, 8, "#"); 65 cucul_set_color(g->cv, CUCUL_COLOR_GREEN, CUCUL_COLOR_BLACK); 66 cucul_draw_thin_ellipse(g->cv, xo, yo, 16, 8); 54 67 55 68 for(i = 0; i < 4; i ++) … … 61 74 y[4] = y[0]; 62 75 63 cucul_set_color(g-> qq, CUCUL_COLOR_BLACK, CUCUL_COLOR_BLACK);64 cucul_fill_triangle(g-> qq, x[0], y[0], x[1], y[1], x[2], y[2], ' ');65 cucul_fill_triangle(g-> qq, x[0], y[0], x[3], y[3], x[2], y[2], ' ');66 cucul_draw_line(g-> qq, x[0], y[0], x[2], y[2], ' ');67 cucul_set_color(g-> qq, CUCUL_COLOR_GREEN, CUCUL_COLOR_BLACK);68 cucul_draw_thin_polyline(g-> qq, x, y, 4);76 cucul_set_color(g->cv, CUCUL_COLOR_BLACK, CUCUL_COLOR_BLACK); 77 cucul_fill_triangle(g->cv, x[0], y[0], x[1], y[1], x[2], y[2], " "); 78 cucul_fill_triangle(g->cv, x[0], y[0], x[3], y[3], x[2], y[2], " "); 79 cucul_draw_line(g->cv, x[0], y[0], x[2], y[2], " "); 80 cucul_set_color(g->cv, CUCUL_COLOR_GREEN, CUCUL_COLOR_BLACK); 81 cucul_draw_thin_polyline(g->cv, x, y, 4); 69 82 70 cucul_draw_sprite(g->qq, xo, yo, foo_sprite, frame % 5); 83 cucul_set_canvas_frame(foo_sprite, frame % 5); 84 cucul_blit(g->cv, xo, yo, foo_sprite, NULL); 71 85 72 caca_ display(g->kk);86 caca_refresh_display(g->dp); 73 87 74 88 usleep(40000); -
ttyvaders/trunk/src/main.c
r544 r1057 34 34 static void start_game (game *); 35 35 36 int main (int argc, char **argv)36 int _main (int argc, char **argv) 37 37 { 38 38 game *g = malloc(sizeof(game)); … … 42 42 srand(time(NULL)); 43 43 44 g-> qq = cucul_init();45 if(!g-> qq)44 g->cv = cucul_create_canvas(0, 0); 45 if(!g->cv) 46 46 return 1; 47 47 48 g-> kk = caca_attach(g->qq);49 if(!g-> kk)48 g->dp = caca_create_display(g->cv); 49 if(!g->dp) 50 50 return 1; 51 51 52 caca_set_d elay(g->kk, 40000);52 caca_set_display_time(g->dp, 40000); 53 53 54 54 /* Initialize our program */ 55 g->w = cucul_get_ width(g->qq);56 g->h = cucul_get_ height(g->qq);55 g->w = cucul_get_canvas_width(g->cv); 56 g->h = cucul_get_canvas_height(g->cv); 57 57 58 58 intro(g); … … 62 62 63 63 /* Clean up */ 64 caca_ detach(g->kk);65 cucul_ end(g->qq);64 caca_free_display(g->dp); 65 cucul_free_canvas(g->cv); 66 66 67 67 return 0; … … 103 103 while(!quit) 104 104 { 105 int event, key;106 107 while( (event = caca_get_event(g->kk, CACA_EVENT_KEY_PRESS)))105 caca_event_t ev; 106 107 while(caca_get_event(g->dp, CACA_EVENT_KEY_PRESS, &ev, 0)) 108 108 { 109 key = event & 0xffffff; 110 111 switch(key) 109 switch(ev.data.key.ch) 112 110 { 113 111 case 'q': … … 139 137 } 140 138 141 switch( key)139 switch(ev.data.key.ch) 142 140 { 143 141 case 'h': … … 238 236 239 237 /* Clear screen */ 240 cucul_clear (g->qq);238 cucul_clear_canvas(g->cv); 241 239 242 240 /* Print starfield, tunnel, aliens, player and explosions */ … … 258 256 259 257 /* Refresh */ 260 caca_ display(g->kk);258 caca_refresh_display(g->dp); 261 259 262 260 purcompteur++; -
ttyvaders/trunk/src/overlay.c
r544 r1057 33 33 34 34 /* Draw life jauge */ 35 cucul_set_color(g-> qq, CUCUL_COLOR_DARKGRAY, CUCUL_COLOR_BLACK);36 cucul_putstr(g-> qq, 4, 1, dots30);35 cucul_set_color(g->cv, CUCUL_COLOR_DARKGRAY, CUCUL_COLOR_BLACK); 36 cucul_putstr(g->cv, 4, 1, dots30); 37 37 38 38 if(g->p->life > MAX_LIFE * 7 / 10) 39 39 { 40 cucul_set_color(g-> qq, CUCUL_COLOR_GREEN, CUCUL_COLOR_BLACK);40 cucul_set_color(g->cv, CUCUL_COLOR_GREEN, CUCUL_COLOR_BLACK); 41 41 } 42 42 else if(g->p->life > MAX_LIFE * 3 / 10) 43 43 { 44 cucul_set_color(g-> qq, CUCUL_COLOR_YELLOW, CUCUL_COLOR_BLACK);44 cucul_set_color(g->cv, CUCUL_COLOR_YELLOW, CUCUL_COLOR_BLACK); 45 45 } 46 46 else 47 47 { 48 cucul_set_color(g-> qq, CUCUL_COLOR_RED, CUCUL_COLOR_BLACK);48 cucul_set_color(g->cv, CUCUL_COLOR_RED, CUCUL_COLOR_BLACK); 49 49 } 50 50 51 cucul_putstr(g-> qq, 4, 1, dashes30 + (MAX_LIFE - g->p->life) * 30 / MAX_LIFE);51 cucul_putstr(g->cv, 4, 1, dashes30 + (MAX_LIFE - g->p->life) * 30 / MAX_LIFE); 52 52 53 cucul_set_color(g-> qq, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK);54 cucul_putstr(g-> qq, 1, 1, "L |");55 cucul_putstr(g-> qq, 34, 1, "|");53 cucul_set_color(g->cv, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK); 54 cucul_putstr(g->cv, 1, 1, "L |"); 55 cucul_putstr(g->cv, 34, 1, "|"); 56 56 57 57 /* Draw weapon jauge */ 58 cucul_set_color(g-> qq, CUCUL_COLOR_DARKGRAY, CUCUL_COLOR_BLACK);59 cucul_putstr(g-> qq, 42, 1, dots30 + 10);58 cucul_set_color(g->cv, CUCUL_COLOR_DARKGRAY, CUCUL_COLOR_BLACK); 59 cucul_putstr(g->cv, 42, 1, dots30 + 10); 60 60 61 61 if(g->p->special > MAX_SPECIAL * 9 / 10) 62 62 { 63 cucul_set_color(g-> qq, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK);63 cucul_set_color(g->cv, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK); 64 64 } 65 65 else if(g->p->special > MAX_SPECIAL * 3 / 10) 66 66 { 67 cucul_set_color(g-> qq, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK);67 cucul_set_color(g->cv, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK); 68 68 } 69 69 else 70 70 { 71 cucul_set_color(g-> qq, CUCUL_COLOR_BLUE, CUCUL_COLOR_BLACK);71 cucul_set_color(g->cv, CUCUL_COLOR_BLUE, CUCUL_COLOR_BLACK); 72 72 } 73 73 74 cucul_putstr(g-> qq, 42, 1, dashes30 + 1074 cucul_putstr(g->cv, 42, 1, dashes30 + 10 75 75 + (MAX_SPECIAL - g->p->special) * 20 / MAX_SPECIAL); 76 76 77 cucul_set_color(g-> qq, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK);78 cucul_putstr(g-> qq, 39, 1, "S |");79 cucul_putstr(g-> qq, 62, 1, "|");77 cucul_set_color(g->cv, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK); 78 cucul_putstr(g->cv, 39, 1, "S |"); 79 cucul_putstr(g->cv, 62, 1, "|"); 80 80 } 81 81 -
ttyvaders/trunk/src/player.c
r544 r1057 27 27 #include "common.h" 28 28 29 struct cucul_sprite*ship_sprite;29 cucul_canvas_t *ship_sprite; 30 30 31 31 /* Init tunnel */ 32 32 player * create_player(game *g) 33 33 { 34 cucul_buffer_t *b; 35 34 36 player *p = malloc(sizeof(player)); 35 37 if(p == NULL) … … 45 47 p->dead = 0; 46 48 47 ship_sprite = cucul_load_sprite(g->qq, "data/ship.txt"); 49 b = cucul_load_file("data/ship.caca"); 50 ship_sprite = cucul_import_canvas(b, ""); 51 cucul_free_buffer(b); 48 52 49 53 return p; … … 60 64 return; 61 65 62 cucul_draw_sprite(g->qq, p->x, p->y, ship_sprite, 0); 66 cucul_set_canvas_frame(ship_sprite, 0); 67 cucul_blit(g->cv, p->x, p->y, ship_sprite, NULL); 63 68 } 64 69 -
ttyvaders/trunk/src/starfield.c
r544 r1057 56 56 if(s[i].x >= 0) 57 57 { 58 cucul_set_color(g-> qq, s[i].c, CUCUL_COLOR_BLACK);59 cucul_putchar(g-> qq, s[i].x, s[i].y, s[i].ch);58 cucul_set_color(g->cv, s[i].c, CUCUL_COLOR_BLACK); 59 cucul_putchar(g->cv, s[i].x, s[i].y, s[i].ch); 60 60 } 61 61 } -
ttyvaders/trunk/src/ttyvaders.c
r990 r1057 131 131 j = h - ground[i]; 132 132 cucul_set_color(cv, CUCUL_COLOR_BLACK, CUCUL_COLOR_LIGHTBLUE); 133 if(i >= 4 && ground[i] == ground[i - 3]134 && ground[i] != ground[i - 4])133 if(i >= 4 && ground[i] == ground[i - 6] 134 && ground[i] != ground[i - 7]) 135 135 { 136 cucul_putstr(cv, i - 3, j - 2, "||\\");137 cucul_putstr(cv, i - 3, j - 1, "o--o");136 cucul_putstr(cv, i - 3, j - 2, "Omm"); 137 cucul_putstr(cv, i - 6, j - 1, "(/)-(/)"); 138 138 } 139 139 cucul_set_color(cv, CUCUL_COLOR_RED, CUCUL_COLOR_GREEN); 140 140 if(ground[i + 1] > ground[i]) 141 cucul_putchar(cv, i, j++, 0x25 9f);141 cucul_putchar(cv, i, j++, 0x2588); // UTF-8: 0x259f 142 142 else if(ground[i + 1] < ground[i]) 143 143 { 144 144 j++; 145 cucul_putchar(cv, i, j++, 0x25 99);145 cucul_putchar(cv, i, j++, 0x2588); // UTF-8: 0x2599 146 146 } 147 147 else -
ttyvaders/trunk/src/tunnel.c
r544 r1057 78 78 char c; 79 79 80 cucul_set_color(g-> qq, CUCUL_COLOR_RED, CUCUL_COLOR_BLACK);80 cucul_set_color(g->cv, CUCUL_COLOR_RED, CUCUL_COLOR_BLACK); 81 81 82 82 /* Left border */ … … 91 91 c = (i == 0 || t->left[i] > t->left[i-1]) ? '\\' : '<'; 92 92 93 cucul_putchar(g-> qq, t->left[i] + 1, i, c);93 cucul_putchar(g->cv, t->left[i] + 1, i, c); 94 94 95 95 if(i + 1 < g->h) 96 96 for(j = 1; j < t->left[i+1] - t->left[i]; j++) 97 cucul_putchar(g-> qq, t->left[i] + j + 1, i, '_');97 cucul_putchar(g->cv, t->left[i] + j + 1, i, '_'); 98 98 } 99 99 … … 111 111 if(i + 1 < g->h) 112 112 for(j = 1; j < t->right[i] - t->right[i+1]; j++) 113 cucul_putchar(g-> qq, t->right[i+1] + j - 1, i, '_');114 115 cucul_putchar(g-> qq, t->right[i] - 1, i, c);116 } 117 118 cucul_set_color(g-> qq, CUCUL_COLOR_LIGHTRED, CUCUL_COLOR_RED);113 cucul_putchar(g->cv, t->right[i+1] + j - 1, i, '_'); 114 115 cucul_putchar(g->cv, t->right[i] - 1, i, c); 116 } 117 118 cucul_set_color(g->cv, CUCUL_COLOR_LIGHTRED, CUCUL_COLOR_RED); 119 119 120 120 /* Left concrete */ 121 121 for(i = 0; i < g->h ; i++) 122 122 for(j = 0 ; j <= t->left[i]; j++) 123 cucul_putchar(g-> qq, j, i, '#');123 cucul_putchar(g->cv, j, i, '#'); 124 124 125 125 /* Right concrete */ 126 126 for(i = 0; i < g->h ; i++) 127 127 for(j = t->right[i] ; j < g->w ; j++) 128 cucul_putchar(g-> qq, j, i, '#');128 cucul_putchar(g->cv, j, i, '#'); 129 129 } 130 130 -
ttyvaders/trunk/src/weapons.c
r544 r1057 24 24 25 25 #include <stdlib.h> 26 #include <math.h> 26 27 27 28 #include "common.h" … … 32 33 static void draw_fragbomb(game *g, int x, int y, int frame); 33 34 34 struct cucul_sprite*bomb_sprite;35 struct cucul_sprite*fragbomb_sprite;35 cucul_canvas_t *bomb_sprite; 36 cucul_canvas_t *fragbomb_sprite; 36 37 37 38 void init_weapons(game *g, weapons *wp) 38 39 { 40 cucul_buffer_t *b; 39 41 int i; 40 42 … … 44 46 } 45 47 46 bomb_sprite = cucul_load_sprite(g->qq, "data/wpnbomb.txt"); 47 fragbomb_sprite = cucul_load_sprite(g->qq, "data/wpnfrag.txt"); 48 b = cucul_load_file("data/wpnbomb.caca"); 49 bomb_sprite = cucul_import_canvas(b, ""); 50 cucul_free_buffer(b); 51 52 b = cucul_load_file("data/wpnfrag.caca"); 53 bomb_sprite = cucul_import_canvas(b, ""); 54 cucul_free_buffer(b); 48 55 } 49 56 … … 57 64 { 58 65 case WEAPON_LASER: 59 cucul_set_color(g-> qq, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK);60 cucul_putchar(g-> qq, wp->x[i] >> 4, wp->y[i] >> 4, '|');61 cucul_set_color(g-> qq, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK);62 cucul_putchar(g-> qq, wp->x[i] >> 4, (wp->y[i] >> 4) + 1, '|');66 cucul_set_color(g->cv, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK); 67 cucul_putchar(g->cv, wp->x[i] >> 4, wp->y[i] >> 4, '|'); 68 cucul_set_color(g->cv, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK); 69 cucul_putchar(g->cv, wp->x[i] >> 4, (wp->y[i] >> 4) + 1, '|'); 63 70 break; 64 71 case WEAPON_SEEKER: 65 cucul_set_color(g-> qq, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK);66 cucul_putchar(g-> qq, wp->x3[i] >> 4, wp->y3[i] >> 4, '.');67 cucul_putchar(g-> qq, wp->x2[i] >> 4, wp->y2[i] >> 4, 'o');68 cucul_set_color(g-> qq, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK);69 cucul_putchar(g-> qq, wp->x[i] >> 4, wp->y[i] >> 4, '@');72 cucul_set_color(g->cv, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK); 73 cucul_putchar(g->cv, wp->x3[i] >> 4, wp->y3[i] >> 4, '.'); 74 cucul_putchar(g->cv, wp->x2[i] >> 4, wp->y2[i] >> 4, 'o'); 75 cucul_set_color(g->cv, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK); 76 cucul_putchar(g->cv, wp->x[i] >> 4, wp->y[i] >> 4, '@'); 70 77 break; 71 78 case WEAPON_BOMB: 72 cucul_set_color(g-> qq, CUCUL_COLOR_DARKGRAY, CUCUL_COLOR_BLACK);73 cucul_putchar(g-> qq, (wp->x[i] - wp->vx[i]) >> 4, (wp->y[i] - wp->vy[i]) >> 4, '.');74 cucul_putchar(g-> qq, (wp->x3[i] - wp->vx[i]) >> 4, (wp->y3[i] - wp->vy[i]) >> 4, '.');75 cucul_putchar(g-> qq, (wp->x2[i] - wp->vx[i]) >> 4, (wp->y2[i] - wp->vy[i]) >> 4, '.');76 cucul_putchar(g-> qq, wp->x3[i] >> 4, wp->y3[i] >> 4, '.');77 cucul_putchar(g-> qq, wp->x2[i] >> 4, wp->y2[i] >> 4, '.');79 cucul_set_color(g->cv, CUCUL_COLOR_DARKGRAY, CUCUL_COLOR_BLACK); 80 cucul_putchar(g->cv, (wp->x[i] - wp->vx[i]) >> 4, (wp->y[i] - wp->vy[i]) >> 4, '.'); 81 cucul_putchar(g->cv, (wp->x3[i] - wp->vx[i]) >> 4, (wp->y3[i] - wp->vy[i]) >> 4, '.'); 82 cucul_putchar(g->cv, (wp->x2[i] - wp->vx[i]) >> 4, (wp->y2[i] - wp->vy[i]) >> 4, '.'); 83 cucul_putchar(g->cv, wp->x3[i] >> 4, wp->y3[i] >> 4, '.'); 84 cucul_putchar(g->cv, wp->x2[i] >> 4, wp->y2[i] >> 4, '.'); 78 85 draw_bomb(g, wp->x[i] >> 4, wp->y[i] >> 4, wp->vx[i], wp->vy[i]); 79 86 break; … … 171 178 if(dx | dy) 172 179 { 173 unsigned int norm = cucul_sqrt(dx * dx + 4 * dy * dy);180 unsigned int norm = (int)sqrt((double)(dx * dx + 4 * dy * dy)); 174 181 dx = dx * 32 / norm; 175 182 dy = dy * 32 / norm; … … 183 190 if(dx | dy) 184 191 { 185 unsigned int norm = cucul_sqrt(dx * dx + 4 * dy * dy);192 unsigned int norm = (int)sqrt((double)(dx * dx + 4 * dy * dy)); 186 193 wp->vx[i] = dx * 32 / norm; 187 194 wp->vy[i] = dy * 32 / norm; … … 335 342 } 336 343 337 cucul_draw_sprite(g->qq, x, y, bomb_sprite, frame); 344 cucul_set_canvas_frame(bomb_sprite, frame); 345 cucul_blit(g->cv, x, y, bomb_sprite, NULL); 338 346 } 339 347 … … 341 349 { 342 350 /* Draw the head */ 343 cucul_draw_sprite(g->qq, x, y, fragbomb_sprite, frame & 1); 351 cucul_set_canvas_frame(fragbomb_sprite, frame & 1); 352 cucul_blit(g->cv, x, y, fragbomb_sprite, NULL); 344 353 345 354 /* Draw the tail */ 346 cucul_draw_sprite(g->qq, x, y, fragbomb_sprite, 2 + (frame % 4)); 355 cucul_set_canvas_frame(fragbomb_sprite, 2 + (frame % 4)); 356 cucul_blit(g->cv, x, y, fragbomb_sprite, NULL); 347 357 } 348 358 … … 355 365 { 356 366 case 24: 357 cucul_set_color(g-> qq, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK);358 cucul_putstr(g-> qq, x, y-3, "__");359 cucul_putchar(g-> qq, x-1, y-2, '\'');360 cucul_putchar(g-> qq, x+2, y-2, '`');367 cucul_set_color(g->cv, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK); 368 cucul_putstr(g->cv, x, y-3, "__"); 369 cucul_putchar(g->cv, x-1, y-2, '\''); 370 cucul_putchar(g->cv, x+2, y-2, '`'); 361 371 break; 362 372 case 23: 363 cucul_set_color(g-> qq, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK);364 cucul_putstr(g-> qq, x, y-3, "__");365 cucul_set_color(g-> qq, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK);366 cucul_putstr(g-> qq, x-2, y-2, "-'");367 cucul_putstr(g-> qq, x+2, y-2, "`-");373 cucul_set_color(g->cv, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK); 374 cucul_putstr(g->cv, x, y-3, "__"); 375 cucul_set_color(g->cv, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK); 376 cucul_putstr(g->cv, x-2, y-2, "-'"); 377 cucul_putstr(g->cv, x+2, y-2, "`-"); 368 378 break; 369 379 case 22: 370 cucul_set_color(g-> qq, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK);371 cucul_putstr(g-> qq, x, y-3, "__");372 cucul_putchar(g-> qq, x-1, y-2, '\'');373 cucul_putchar(g-> qq, x+2, y-2, '`');374 cucul_set_color(g-> qq, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK);375 cucul_putstr(g-> qq, x-3, y-2, ",-");376 cucul_putstr(g-> qq, x+3, y-2, "-.");380 cucul_set_color(g->cv, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK); 381 cucul_putstr(g->cv, x, y-3, "__"); 382 cucul_putchar(g->cv, x-1, y-2, '\''); 383 cucul_putchar(g->cv, x+2, y-2, '`'); 384 cucul_set_color(g->cv, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK); 385 cucul_putstr(g->cv, x-3, y-2, ",-"); 386 cucul_putstr(g->cv, x+3, y-2, "-."); 377 387 break; 378 388 case 21: 379 cucul_set_color(g-> qq, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK);380 cucul_putstr(g-> qq, x-1, y-3, "____");381 cucul_putchar(g-> qq, x-2, y-2, '\'');382 cucul_putchar(g-> qq, x+3, y-2, '`');383 cucul_set_color(g-> qq, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK);384 cucul_putstr(g-> qq, x-4, y-2, ",-");385 cucul_putstr(g-> qq, x+4, y-2, "-.");389 cucul_set_color(g->cv, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK); 390 cucul_putstr(g->cv, x-1, y-3, "____"); 391 cucul_putchar(g->cv, x-2, y-2, '\''); 392 cucul_putchar(g->cv, x+3, y-2, '`'); 393 cucul_set_color(g->cv, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK); 394 cucul_putstr(g->cv, x-4, y-2, ",-"); 395 cucul_putstr(g->cv, x+4, y-2, "-."); 386 396 break; 387 397 case 20: 388 cucul_set_color(g-> qq, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK);389 cucul_putstr(g-> qq, x, y-3, "%%");390 cucul_putchar(g-> qq, x-4, y-2, ',');391 cucul_putchar(g-> qq, x+5, y-2, '.');392 cucul_set_color(g-> qq, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK);393 cucul_putchar(g-> qq, x-1, y-3, ':');394 cucul_putchar(g-> qq, x+2, y-3, ':');395 cucul_putstr(g-> qq, x-3, y-2, "-'");396 cucul_putstr(g-> qq, x+3, y-2, "`-");398 cucul_set_color(g->cv, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK); 399 cucul_putstr(g->cv, x, y-3, "%%"); 400 cucul_putchar(g->cv, x-4, y-2, ','); 401 cucul_putchar(g->cv, x+5, y-2, '.'); 402 cucul_set_color(g->cv, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK); 403 cucul_putchar(g->cv, x-1, y-3, ':'); 404 cucul_putchar(g->cv, x+2, y-3, ':'); 405 cucul_putstr(g->cv, x-3, y-2, "-'"); 406 cucul_putstr(g->cv, x+3, y-2, "`-"); 397 407 break; 398 408 case 19: 399 cucul_set_color(g-> qq, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK);400 cucul_putstr(g-> qq, x, y-4, "%%");401 cucul_putstr(g-> qq, x, y-3, "##");402 cucul_set_color(g-> qq, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK);403 cucul_putchar(g-> qq, x-1, y-4, ':');404 cucul_putchar(g-> qq, x+2, y-4, ':');405 cucul_putchar(g-> qq, x-1, y-3, '%');406 cucul_putchar(g-> qq, x+2, y-3, '%');407 cucul_putstr(g-> qq, x-4, y-2, ",-'");408 cucul_putstr(g-> qq, x+3, y-2, "`-.");409 cucul_set_color(g-> qq, CUCUL_COLOR_BLUE, CUCUL_COLOR_BLACK);410 cucul_putchar(g-> qq, x-2, y-3, ':');411 cucul_putchar(g-> qq, x+3, y-3, ':');409 cucul_set_color(g->cv, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK); 410 cucul_putstr(g->cv, x, y-4, "%%"); 411 cucul_putstr(g->cv, x, y-3, "##"); 412 cucul_set_color(g->cv, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK); 413 cucul_putchar(g->cv, x-1, y-4, ':'); 414 cucul_putchar(g->cv, x+2, y-4, ':'); 415 cucul_putchar(g->cv, x-1, y-3, '%'); 416 cucul_putchar(g->cv, x+2, y-3, '%'); 417 cucul_putstr(g->cv, x-4, y-2, ",-'"); 418 cucul_putstr(g->cv, x+3, y-2, "`-."); 419 cucul_set_color(g->cv, CUCUL_COLOR_BLUE, CUCUL_COLOR_BLACK); 420 cucul_putchar(g->cv, x-2, y-3, ':'); 421 cucul_putchar(g->cv, x+3, y-3, ':'); 412 422 break; 413 423 case 18: 414 424 default: 415 425 r = (18 - frame) * (18 - frame); 416 cucul_set_color(g-> qq, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK);417 cucul_putstr(g-> qq, x-1, y-5-r, ":%%:");418 cucul_putstr(g-> qq, x-1, y-4-r, "%##%");419 cucul_set_color(g-> qq, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK);420 cucul_putchar(g-> qq, x-2, y-4-r, ':');421 cucul_putchar(g-> qq, x+3, y-4-r, ':');422 cucul_putchar(g-> qq, x-2, y-2, '\'');423 cucul_putchar(g-> qq, x+3, y-2, '`');424 cucul_set_color(g-> qq, CUCUL_COLOR_BLUE, CUCUL_COLOR_BLACK);425 cucul_putchar(g-> qq, x-3, y-2, ':');426 cucul_putchar(g-> qq, x+4, y-2, ':');426 cucul_set_color(g->cv, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK); 427 cucul_putstr(g->cv, x-1, y-5-r, ":%%:"); 428 cucul_putstr(g->cv, x-1, y-4-r, "%##%"); 429 cucul_set_color(g->cv, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK); 430 cucul_putchar(g->cv, x-2, y-4-r, ':'); 431 cucul_putchar(g->cv, x+3, y-4-r, ':'); 432 cucul_putchar(g->cv, x-2, y-2, '\''); 433 cucul_putchar(g->cv, x+3, y-2, '`'); 434 cucul_set_color(g->cv, CUCUL_COLOR_BLUE, CUCUL_COLOR_BLACK); 435 cucul_putchar(g->cv, x-3, y-2, ':'); 436 cucul_putchar(g->cv, x+4, y-2, ':'); 427 437 for(i = 0; i <= r; i++) 428 438 { 429 cucul_set_color(g-> qq, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK);430 cucul_putstr(g-> qq, x-1, y-3-i, ((i+frame) % 5) ? "####" : "%%%%");431 cucul_set_color(g-> qq, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK);432 cucul_putchar(g-> qq, x-2, y-3-i, '%');433 cucul_putchar(g-> qq, x+3, y-3-i, '%');434 cucul_set_color(g-> qq, CUCUL_COLOR_BLUE, CUCUL_COLOR_BLACK);435 cucul_putchar(g-> qq, x-3, y-3-i, ':');436 cucul_putchar(g-> qq, x+4, y-3-i, ':');439 cucul_set_color(g->cv, CUCUL_COLOR_WHITE, CUCUL_COLOR_BLACK); 440 cucul_putstr(g->cv, x-1, y-3-i, ((i+frame) % 5) ? "####" : "%%%%"); 441 cucul_set_color(g->cv, CUCUL_COLOR_CYAN, CUCUL_COLOR_BLACK); 442 cucul_putchar(g->cv, x-2, y-3-i, '%'); 443 cucul_putchar(g->cv, x+3, y-3-i, '%'); 444 cucul_set_color(g->cv, CUCUL_COLOR_BLUE, CUCUL_COLOR_BLACK); 445 cucul_putchar(g->cv, x-3, y-3-i, ':'); 446 cucul_putchar(g->cv, x+4, y-3-i, ':'); 437 447 } 438 448 break; … … 445 455 446 456 /* Lots of duplicate pixels, but we don't care */ 447 cucul_set_color(g-> qq, CUCUL_COLOR_BLUE, CUCUL_COLOR_BLACK);448 cucul_draw_ellipse(g-> qq, x, y, r, r / 2, ':');449 cucul_set_color(g-> qq, CUCUL_COLOR_LIGHTBLUE, CUCUL_COLOR_BLUE);450 cucul_draw_ellipse(g-> qq, x, y, r + 1, r / 2, '#');451 cucul_set_color(g-> qq, CUCUL_COLOR_BLUE, CUCUL_COLOR_LIGHTBLUE);452 cucul_draw_ellipse(g-> qq, x, y, r + 2, r / 2, '#');453 cucul_set_color(g-> qq, CUCUL_COLOR_CYAN, CUCUL_COLOR_LIGHTBLUE);454 cucul_draw_ellipse(g-> qq, x, y, r + 2, r / 2 + 1, '#');455 cucul_set_color(g-> qq, CUCUL_COLOR_LIGHTBLUE, CUCUL_COLOR_CYAN);456 cucul_draw_ellipse(g-> qq, x, y, r + 3, r / 2 + 1, '#');457 cucul_set_color(g-> qq, CUCUL_COLOR_WHITE, CUCUL_COLOR_CYAN);458 cucul_draw_ellipse(g-> qq, x, y, r + 3, r / 2 + 2, '#');459 cucul_set_color(g-> qq, CUCUL_COLOR_CYAN, CUCUL_COLOR_WHITE);460 cucul_draw_ellipse(g-> qq, x, y, r + 4, r / 2 + 2, '#');461 cucul_draw_ellipse(g-> qq, x, y, r + 4, r / 2 + 3, ' ');462 } 463 457 cucul_set_color(g->cv, CUCUL_COLOR_BLUE, CUCUL_COLOR_BLACK); 458 cucul_draw_ellipse(g->cv, x, y, r, r / 2, ":"); 459 cucul_set_color(g->cv, CUCUL_COLOR_LIGHTBLUE, CUCUL_COLOR_BLUE); 460 cucul_draw_ellipse(g->cv, x, y, r + 1, r / 2, "#"); 461 cucul_set_color(g->cv, CUCUL_COLOR_BLUE, CUCUL_COLOR_LIGHTBLUE); 462 cucul_draw_ellipse(g->cv, x, y, r + 2, r / 2, "#"); 463 cucul_set_color(g->cv, CUCUL_COLOR_CYAN, CUCUL_COLOR_LIGHTBLUE); 464 cucul_draw_ellipse(g->cv, x, y, r + 2, r / 2 + 1, "#"); 465 cucul_set_color(g->cv, CUCUL_COLOR_LIGHTBLUE, CUCUL_COLOR_CYAN); 466 cucul_draw_ellipse(g->cv, x, y, r + 3, r / 2 + 1, "#"); 467 cucul_set_color(g->cv, CUCUL_COLOR_WHITE, CUCUL_COLOR_CYAN); 468 cucul_draw_ellipse(g->cv, x, y, r + 3, r / 2 + 2, "#"); 469 cucul_set_color(g->cv, CUCUL_COLOR_CYAN, CUCUL_COLOR_WHITE); 470 cucul_draw_ellipse(g->cv, x, y, r + 4, r / 2 + 2, "#"); 471 cucul_draw_ellipse(g->cv, x, y, r + 4, r / 2 + 3, " "); 472 } 473
Note: See TracChangeset
for help on using the changeset viewer.