| [ QuizWit ] in KIDS 글 쓴 이(By): parsec ( 먼 소 류 ) 날 짜 (Date): 2003년 3월 13일 목요일 오후 02시 46분 04초 제 목(Title): 깔끄마이징.... 이렇게 함수 몇개를 업데이트하시면 좀더 깔끔한 출력을 얻을 수 있습니다. 정신이 좀 덜 멍해질까요? ^^ (장서가를 나타내는 사인을 ♂/♀으로 하면 어떨까도 생각해 봤습니다만 그건 일단 그냥 '장서가'의 藏자를 이용했습니다.) void init_img(void) { int i; for(i=0; i<IMG_HEIGHT*IMG_WIDTH; i++) img_buf[i/IMG_WIDTH][i%IMG_WIDTH] = ' '; strncpy(&img_buf[0][0],"┌",2); strncpy(&img_buf[0][IMG_WIDTH-2],"┐",2); strncpy(&img_buf[IMG_HEIGHT-1][0],"└",2); strncpy(&img_buf[IMG_HEIGHT-1][IMG_WIDTH-2],"┘",2); for(i=1;i<IMG_HEIGHT-1; i++) { strncpy(&img_buf[i][0],"│",2); strncpy(&img_buf[i][IMG_WIDTH-2],"│",2); img_buf[i][IMG_WIDTH] = '\0'; } for(i=2;i<IMG_WIDTH-2; i+=2) { strncpy(&img_buf[0][i],"─",2); strncpy(&img_buf[IMG_HEIGHT-1][i],"─",2); } } void draw_case(t_bookcase *bc) { int i, j, k; i = (bc->y-1)*3+1; j = (bc->x-1)*6+2; if(bc->face == NONE && bc->dir == ANY) { strncpy(&img_buf[i+1][j+2],"藏",2); return; } strncpy(&img_buf[i][j], "┌─┐",6); strncpy(&img_buf[i+1][j],"│ │",6); strncpy(&img_buf[i+2][j],"└─┘",6); switch(bc->face) { case NORTH: strncpy(&img_buf[i][j+2], "━",2); break; case SOUTH: strncpy(&img_buf[i+2][j+2], "━",2); break; case EAST: strncpy(&img_buf[i+1][j+4], "┃",2); break; case WEST: strncpy(&img_buf[i+1][j], "┃",2); break; } switch(bc->dir) { case FIX: strncpy(&img_buf[i+1][j+2],"X",2); break; case HOR: strncpy(&img_buf[i+1][j+2],"↔",2); break; case VER: strncpy(&img_buf[i+1][j+2],"↕",2); break; } } void draw_door(void) { int i = door_pos*6+2; strncpy(&img_buf[IMG_HEIGHT-1][i],"┤ ├",6); } ... May the source be with you! |