Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* ************************************************************************** */
- /* */
- /* ::: :::::::: */
- /* run2048.c :+: :+: :+: */
- /* +:+ +:+ +:+ */
- /* By: mery <mery@student.42.fr> +#+ +:+ +#+ */
- /* +#+#+#+#+#+ +#+ */
- /* Created: 2015/02/28 13:24:01 by aastruc #+# #+# */
- /* Updated: 2015/03/01 17:38:14 by mery ### ########.fr */
- /* */
- /* ************************************************************************** */
- #include "game_2048.h"
- void ft_initgrid(t_2048 *g_2048)
- {
- int i;
- int j;
- i = 0;
- j = 0;
- while (i < 4)
- {
- j = 0;
- while (j < 4)
- {
- g_2048->grid[i][j] = 0;
- j++;
- }
- i++;
- }
- }
- void printwin(t_coor *tabsize)
- {
- mvprintw(((tabsize->y - 1) / 2), ((tabsize->x - 1) / 2) - 3, "Y");
- mvprintw(((tabsize->y - 1) / 2), ((tabsize->x - 1) / 2) - 2, "O");
- mvprintw(((tabsize->y - 1) / 2), ((tabsize->x - 1) / 2) - 1, "U");
- mvprintw(((tabsize->y - 1) / 2), ((tabsize->x - 1) / 2) + 1, "W");
- mvprintw(((tabsize->y - 1) / 2), ((tabsize->x - 1) / 2) + 2, "I");
- mvprintw(((tabsize->y - 1) / 2), ((tabsize->x - 1) / 2) + 3, "N");
- }
- void printfail(t_coor *tabsize)
- {
- mvprintw(((tabsize->y - 1) / 2), ((tabsize->x - 1) / 2) - 3, "Y");
- mvprintw(((tabsize->y - 1) / 2), ((tabsize->x - 1) / 2) - 2, "O");
- mvprintw(((tabsize->y - 1) / 2), ((tabsize->x - 1) / 2) - 1, "U");
- mvprintw(((tabsize->y - 1) / 2), ((tabsize->x - 1) / 2) + 1, "F");
- mvprintw(((tabsize->y - 1) / 2), ((tabsize->x - 1) / 2) + 2, "A");
- mvprintw(((tabsize->y - 1) / 2), ((tabsize->x - 1) / 2) + 3, "I");
- mvprintw(((tabsize->y - 1) / 2), ((tabsize->x - 1) / 2) + 4, "L");
- }
- void ft_run(t_2048 *g_2048)
- {
- int key;
- t_coor tabsize;
- ft_initgrid(g_2048);
- addrand(g_2048);
- addrand(g_2048);
- while (42)
- {
- getmaxyx(stdscr, tabsize.y, tabsize.x);
- if (tabsize.y < 10 || tabsize.x < 10){
- ft_puterror_endl("Window to small : exit.");
- break;
- }
- print2048(g_2048, &tabsize);
- if (win2048(g_2048))
- printwin(&tabsize);
- if (lose2048(g_2048))
- printfail(&tabsize);
- key = getch();
- if (do_move2048(g_2048, key))
- break;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement