Esempio n. 1
0
void gamelib_mainmenu(){
	int n,j;
	int t = 0;
	double d=0;
	char *text;

	time_t current_time;
	struct tm * time_info;
	char timeString[8];



	while(nunchuck_read()){
		nunchuck_init();
		//nunchuck_read();
		mvprintw(6,0,"nunchuck reinited\n");
	}
	while(buttonC && buttonZ){
		while(nunchuck_read()){
			nunchuck_init();
			//nunchuck_read();
			mvprintw(6,0,"nunchuck reinited\n");
		}
		
		if(t%800 < 100){
			text = "PLAY";
			d = 3.03;
		}
		else if(t%800 < 200) {
			text = "GAMES";
			d = 0.03;
		}	
		else{
			time(&current_time);
			time_info = localtime(&current_time);
			strftime(timeString, 8, "%H:%M", time_info);
			
			if(current_time%2){
				timeString[2] = ' ';
			}
			text = timeString;
			d=0.03;
		}
		
		n=0;
		while(text[n] && n < 6){
			draw_char(n*6+d, text[n]);
			n++;
		}
		blit();
		update();
		
		t++;
	}


}	
Esempio n. 2
0
File: main.c Progetto: qartis/dori
uint8_t send_accel_can(uint8_t type)
{
    struct mcp2515_packet_t p;
    struct nunchuck_t nunchuck;
    uint8_t rc;

    nunchuck.accel_x = 255;
    nunchuck.accel_y = 255;
    nunchuck.accel_z = 255;

    rc = nunchuck_read(&nunchuck);
    if (rc) {
        rc = mcp2515_send_wait(TYPE_sensor_error, MY_ID, SENSOR_accel, &rc, sizeof(rc));
        return rc;
    }

    p.type = type;
    p.id = ID_9dof;
    p.sensor = SENSOR_accel;
    p.data[0] = nunchuck.accel_x >> 8;
    p.data[1] = nunchuck.accel_x;
    p.data[2] = nunchuck.accel_y >> 8;
    p.data[3] = nunchuck.accel_y;
    p.data[4] = nunchuck.accel_z >> 8;
    p.data[5] = nunchuck.accel_z;
    p.len = 6;

    return mcp2515_sendpacket_wait(&p);
}
Esempio n. 3
0
int main(void){

        int in;

	ctr = 0;
	lastmove = 0;
	
	pos = 0;
	dir = 0;
	nextdir = 0;
	
	tick_delay = 10;
	
	spi_init();

        initscr();                      /* Start curses mode              */
        keypad(stdscr, TRUE);
        nodelay(stdscr, TRUE);
        cbreak();
        noecho();

	nunchuck_init();
	effect_init(); 
      
	welcome();
 
	snakesetup();


	logfile = fopen("snakelog.txt","a+");
	fprintf(logfile, "snake inited\n");

        while(42){
                in = getch();
              	do{ 
			while(nunchuck_read()){
				nunchuck_init();
				//nunchuck_read();
				mvprintw(6,0,"nunchuck reinited\n");
			}
		}while(joyX < 10 || joyX == 255 || joyY < 10 || joyY == 255);
		if (dir != 1 && (in == KEY_LEFT || (joyX < XCENTER - JOYDEADZONE && joyX > 10 ))){
			nextdir = 0;
                }
                else if (dir != 0 && (in == KEY_RIGHT || (joyX > XCENTER + JOYDEADZONE && joyX < 240))){
			nextdir = 1;
                }
                else if (dir != 3 && (in == KEY_UP || joyY > YCENTER + JOYDEADZONE)){
			nextdir = 2;
                }
                else if (dir != 2 && (in == KEY_DOWN || (joyY < YCENTER - JOYDEADZONE && joyY > 10))){
			nextdir = 3;
                }

		if (joyX > 150){

		}


		if(lastmove+tick_delay <= ctr){
			lastmove = ctr;
			dir = nextdir;
			snake_do(dir);
			
			//if(!buttonC && tick_delay > 0) tick_delay--; 
			//if(!buttonZ && tick_delay < 30) tick_delay++; 
                }
		
		
				
		//setpixel((accelX-512)/10+WIDTH/2,(accelY-512)/20+6,127,32,16);

		
		mvprintw(0,2,"pos: %d\n", pos);
		mvprintw(1,0,"joy X,Y: %d, %d\n", joyX, joyY);
		mvprintw(2,0,"Accel X,Y,Z: %d, %d, %d\n", accelX, accelY, accelZ);
		mvprintw(3,0,"Button C,Z: %d, %d\n", buttonC, buttonZ);
		calc_score();
		mvprintw(4,5,"Score: %d     ", score);	
		refresh();  //ncurses
		
		snake_draw();
		effect_draw(ctr);
		buffer[nompos*3+1] = 127;
		
		blit();    
        	update();
		ctr++;
		}


        endwin();                       /* End curses mode                */

        return 0;


}
Esempio n. 4
0
int main(void) {

    int in;

    int ctr = 0, lastmove = 0;

    pos = 0;
    dir = 0;

    tick_delay = 20;

    spi_init();

    initscr();                      /* Start curses mode              */
    keypad(stdscr, TRUE);
    nodelay(stdscr, TRUE);
    cbreak();
    noecho();

    nunchuck_init();

    snakesetup();

    while(42) {
        in = getch();

        while(nunchuck_read()) nunchuck_init();

        if (in == KEY_LEFT || (joyX < XCENTER - JOYDEADZONE && joyX > 10)) {
            dir = 0;
        }
        else if (in == KEY_RIGHT || joyX > XCENTER + JOYDEADZONE) {
            dir = 1;
        }
        else if (in == KEY_UP || joyY > YCENTER + JOYDEADZONE) {
            dir = 2;
        }
        else if (in == KEY_DOWN || (joyY < YCENTER - JOYDEADZONE && joyY > 10)) {
            dir = 3;
        }




        /*
        if(lastmove+tick_delay <= ctr){
        	lastmove = ctr;
        	snake_do(dir);

        	if(!buttonC && tick_delay > 0) tick_delay--;
        	if(!buttonZ && tick_delay < 30) tick_delay++;
                }
        */



        setpixel((accelX-512)/10+WIDTH/2,(accelY-512)/20+6,127,32,16);


        mvprintw(0,2,"pos: %d\n", pos);
        mvprintw(1,0,"joy X,Y: %d, %d\n", joyX, joyY);
        mvprintw(2,0,"Accel X,Y,Z: %d, %d, %d\n", accelX, accelY, accelZ);
        mvprintw(3,0,"Button C,Z: %d, %d\n", buttonC, buttonZ);
        refresh();

        //snake_draw();
        buffer[nompos*3+1] = 127;

        blit();
        update();
        ctr++;
    }


    endwin();                       /* End curses mode                */

    return 0;


}