Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Ball/Ball.cpp
- Committer:
- shahidsajid
- Date:
- 2019-04-22
- Revision:
- 10:6c6e09023942
- Parent:
- 9:a81db6a703b7
- Child:
- 11:f481ec642cc5
File content as of revision 10:6c6e09023942:
#include "Ball.h" Ball::Ball() { } Ball::~Ball() { } void Ball::init(int size,int speed) { _size = size; _x1=42; _y1=3; _x = 42; _y = 15; bat.init(3,4); bowled=0; } int Ball::bowler_start(){ if(_y1!=15){ _y1++; return 0; } else { return 1; } } Vector2D Ball::get_pos() { Vector2D p = {_x,_y}; return p; } void Ball::set_pos(Vector2D p) { _x = p.x; _y = p.y; } /* void Ball::ball_start(N5110 &lcd,int checkHit, Direction dir){ int bowler_start_check=bowler_start(); if (bowler_start_check==1){ if (_y!=36){ _y+=1; return 0; } else{ bowled=1; return 1; } } else{ return 0; } } */ void Ball::draw(N5110 &lcd) { lcd.drawCircle(_x1,_y1,2,FILL_BLACK); lcd.drawCircle(_x,_y,2,FILL_TRANSPARENT); //lcd.drawRect(_x,_y,_size,_size,FILL_BLACK); } /* void Ball::update_ball(int checkHit, Direction dir){ if (direction_set!=1){ ball_direction=dir; direction_set=1; } if (ballHit!=1 && ballHit!=1){ ballHit=1; } if(bowled==1 && ballHit==1){ printf("TEST\n"); if (ball_direction==NE){ printf("x=%i y=%i \n",_x,_y); if (!(_y == 2 )){ _y--; } if (_x!=65){ _x++; } printf("HERE"); } } } */ void Ball::reset(){ bowled=0; ballHit=0; } /* void Ball::draw_field(N5110 &lcd){ lcd.drawCircle(field[0].x,field[0].y,2,FILL_BLACK); lcd.drawCircle(field[1].x,field[1].y,2,FILL_BLACK); lcd.drawCircle(field[2].x,field[2].y,2,FILL_BLACK); lcd.drawCircle(field[3].x,field[3].y,2,FILL_BLACK); } void Ball::set_field(N5110 &lcd){ int d=0; int fieldersCount=0; int pos=0; int i=0; int continueCount=0; srand(time(NULL)); while (fieldersCount!=5){ d = 1+ rand() % 6; printf("DIRECTION %i\n",d); pos=rand()%2; for (int j=0;j<10;j++){ if (fieldNumbers[j]==d){ printf("CHECK"); continueCount=1; } } if (continueCount==1){ printf("IM HERE"); continueCount=0; continue; } printf("YESS"); if (d==1){ //NW if (pos==1){ field[i].dir=NW; field[i].x=30; field[i].y=9; field[i].position=1; fieldNumbers[i]=d; i++; fieldersCount++; } else{ field[i].dir=NW; field[i].x=25; field[i].y=2; field[i].position=0; fieldNumbers[i]=d; i++; fieldersCount++; } } if (d==2){ //NE if (pos==1){ field[i].dir=NE; field[i].x=55; field[i].y=9; field[i].position=1; fieldNumbers[i]=d; i++; fieldersCount++; } else{ field[i].dir=NE; field[i].x=65; field[i].y=2; field[i].position=0; fieldNumbers[i]=d; i++; fieldersCount++; } } if (d==3){ //SW if (pos==1){ field[i].dir=SW; field[i].x=33; field[i].y=40; field[i].position=1; fieldNumbers[i]=d; i++; fieldersCount++; } else{ field[i].dir=SW; field[i].x=25; field[i].y=44; field[i].position=0; fieldNumbers[i]=d; i++; fieldersCount++; } } if (d==4){ //SE if (pos==1){ field[i].dir=SE; field[i].x=55; field[i].y=40; field[i].position=1; fieldNumbers[i]=d; i++; fieldersCount++; } else{ field[i].dir=SE; field[i].x=65; field[i].y=44; field[i].position=0; fieldNumbers[i]=d; i++; fieldersCount++; } } if (d==5){ //W if (pos==1){ field[i].dir=W; field[i].x=3; field[i].y=25; field[i].position=1; fieldNumbers[i]=d; i++; fieldersCount++; } else{ field[i].dir=W; field[i].x=25; field[i].y=25; field[i].position=0; fieldNumbers[i]=d; i++; fieldersCount++; } } if (d==6){ //W if (pos==1){ field[i].dir=E; field[i].x=80; field[i].y=20; field[i].position=1; fieldNumbers[i]=d; i++; fieldersCount++; } else{ field[i].dir=E; field[i].x=50; field[i].y=20; field[i].position=1; fieldNumbers[i]=d; i++; fieldersCount++; } } } } */