Skip to content
This repository was archived by the owner on Dec 9, 2022. It is now read-only.
This repository was archived by the owner on Dec 9, 2022. It is now read-only.

Main.Run #98

Open
Open
@denisscreamos

Description

@denisscreamos

Skip to content
naveenk2k
/
[Type-Attack]

(

https://github.com/naveenk2k/Type-Attack)
Public
Code
Issues
Pull requests
Actions
Projects
Security
Insights
Type-Attack/main.c
@naveenk2k
naveenk2k Resolved file name issues
3 contributors
317 lines (276 sloc) 5 KB
#include <ncurses.h>
#include <stdio.h>
#include <string.h>
#include <time.h>
#include <stdlib.h>
#include <unistd.h>
#include "gameplay.c"

#define WIDTH 30 // Of window
#define HEIGHT 5 // Of window

int startx = 0;
int starty = 0;

char *choices[] = {
"START"
};
int n_choices = sizeof(choices) / sizeof(char *);
void print_menu(WINDOW *menu_win, int highlight);
void T();
void Y();
void P();
void E();
void A();
void C();
void K();
int main()
{
WINDOW *menu_win;
int highlight = 1;
int choice = 0;
int c;

initscr();
clear();
noecho();
cbreak();	/* Line buffering disabled. pass on everything */
startx = (80 - WIDTH) / 2;
starty = (24 - HEIGHT) / 2;

start_color();
init_pair(1, COLOR_WHITE, COLOR_BLACK);
init_pair(2, COLOR_YELLOW, COLOR_BLACK);
init_pair(3, COLOR_GREEN, COLOR_BLACK);
init_pair(4, COLOR_RED, COLOR_BLACK);
init_pair(5, COLOR_CYAN, COLOR_BLACK);
menu_win = newwin(HEIGHT, WIDTH, starty, startx);
keypad(menu_win, TRUE);
//attron(A_BLINK);

attron(COLOR_PAIR(5));
T();

attroff(COLOR_PAIR(5));

attron(COLOR_PAIR(3));
A();
attroff(COLOR_PAIR(3));

attron(COLOR_PAIR(4));
Y();
attroff(COLOR_PAIR(4));

attron(COLOR_PAIR(2));
P();
E();
attroff(COLOR_PAIR(2));

attron(COLOR_PAIR(4));
K();
attroff(COLOR_PAIR(4));

//attroff(A_BLINK);

refresh();
print_menu(menu_win, highlight);
while(1)
{	c = wgetch(menu_win);
	switch(c)
	{	case KEY_UP:
			if(highlight == 1)
				highlight = n_choices;
			else
				--highlight;
			break;
		case KEY_DOWN:
			if(highlight == n_choices)
				highlight = 1;
			else
				++highlight;
			break;
		case 10:
			choice = highlight;
			break;
		default:
			mvprintw(24, 0, "Charcter pressed is = %3d Hopefully it can be printed as '%c'", c, c);
			refresh();
			break;
	}
	print_menu(menu_win, highlight);
	if(choice != 0)	/* User did a choice come out of the infinite loop */
		start();
		break;

}

return 0;

}

void print_menu(WINDOW *menu_win, int highlight)
{
int x, y, i;

x = 2;
y = 2;
box(menu_win, 0, 0);
for(i = 0; i < n_choices; ++i)
{	if(highlight == i + 1) /* High light the present choice */
	{	wattron(menu_win, A_REVERSE);
		mvwprintw(menu_win, y, x, "%s", choices[i]);
		wattroff(menu_win, A_REVERSE);
	}
	else
		mvwprintw(menu_win, y, x, "%s", choices[i]);
	++y;
}
wrefresh(menu_win);

}

void T()
{
// For first T
mvprintw(1,1, "");
mvprintw(1,2, "
");
mvprintw(1,3, "");
mvprintw(1,4, "
");
mvprintw(1,5, "");
mvprintw(2,5, "
");
mvprintw(3,5, "");
mvprintw(4,5, "
");
mvprintw(5,5, "");
mvprintw(6,5, "
");
mvprintw(7,5, "");
mvprintw(1,6, "
");
mvprintw(1,7, "");
mvprintw(1,8, "
");
mvprintw(1,9, "*");

// For 2nd T
mvprintw(1,41,"*");
mvprintw(1,42,"*");
mvprintw(1,43,"*");
mvprintw(1,44,"*");
mvprintw(1,45,"*");
mvprintw(2,45,"*");
mvprintw(3,45,"*");
mvprintw(4,45,"*");
mvprintw(5,45,"*");
mvprintw(6,45,"*");
mvprintw(7,45,"*");
mvprintw(1,46,"*");
mvprintw(1,47,"*");
mvprintw(1,48,"*");
mvprintw(1,49,"*");

//For 3rd T
mvprintw(1,51,"*");
mvprintw(1,52,"*");
mvprintw(1,53,"*");
mvprintw(1,54,"*");
mvprintw(1,55,"*");
mvprintw(2,55,"*");
mvprintw(3,55,"*");
mvprintw(4,55,"*");
mvprintw(5,55,"*");
mvprintw(6,55,"*");
mvprintw(7,55,"*");
mvprintw(1,56,"*");
mvprintw(1,57,"*");
mvprintw(1,58,"*");
mvprintw(1,59,"*");

}

void Y()
{
mvprintw(1,11, "");
mvprintw(2,12, "
");
mvprintw(3,13, "");
mvprintw(4,14, "
");
mvprintw(5,14, "");
mvprintw(6,14, "
");
mvprintw(7,14, "");
//mvprintw(7,14, "
");
mvprintw(3,15, "");
mvprintw(2,16, "
");
mvprintw(1,17, "*");
}

void P()
{
mvprintw(1,19, "");
mvprintw(1,20, "
");
mvprintw(1,21, "");
mvprintw(1,22, "
");
mvprintw(1,23, "");
mvprintw(2,23, "
");
mvprintw(3,23, "");
mvprintw(4,23, "
");
mvprintw(4,22, "");
mvprintw(4,21, "
");
mvprintw(4,20, "");
mvprintw(4,19, "
");
mvprintw(3,19, "");
mvprintw(2,19, "
");
mvprintw(5,19, "");
mvprintw(6,19, "
");
mvprintw(7,19, "*");
}

void E()
{
int i =0;
int j=25;
int x=25;
int y=25;
for( i = 0; i < 8; i++)
{
mvprintw(1,j, "*");
j++;
}

for( i = 1; i < 8; i++)
{
	mvprintw(i,25, "*");
}

for( i = 0; i < 8; i++)
{
	mvprintw(7,x, "*");
	x++;
}

for( i = 0; i < 6; i++)
{
	mvprintw(4,y, "*");
	y++;
}

}

void A()
{
//First A
int i=0;
for(i=1 ; i<8 ; i++)
{
mvprintw(i,34,"*");
}

mvprintw(1,35,"*");
mvprintw(1,36,"*");
mvprintw(1,37,"*");
mvprintw(1,38,"*");
mvprintw(1,39,"*");

for(i=2 ; i<8 ; i++)
{
	mvprintw(i,39,"*");
}
mvprintw(4,35,"*");
mvprintw(4,36,"*");
mvprintw(4,37,"*");
mvprintw(4,38,"*");

//Second A

for(i=1 ; i<8 ; i++)
{
	mvprintw(i,61,"*");
}

mvprintw(1,62,"*");
mvprintw(1,63,"*");
mvprintw(1,64,"*");
mvprintw(1,65,"*");
mvprintw(1,66,"*");

for(i=2 ; i<8 ; i++)
{
	mvprintw(i,66,"*");
}
mvprintw(4,62,"*");
mvprintw(4,63,"*");
mvprintw(4,64,"*");
mvprintw(4,65,"*");

}

void K()
{
int i;
for(i=1; i<8 ; i++)
{
mvprintw(i,69,"*");
}

mvprintw(3,70,"*");
mvprintw(2,71,"*");
mvprintw(1,72,"*");
mvprintw(5,70,"*");
mvprintw(6,71,"*");
mvprintw(7,72,"*");

}
Footer
© 2022 GitHub, Inc.
Footer navigation
Terms
Privacy
Security
Status
Docs
Contact GitHub
Pricing
API
Training
Blog
About
Type-Attack/main.c at master · naveenk2k/Type-Attack

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions