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
Snake/Snake.cpp
- Committer:
- weiway
- Date:
- 2018-05-03
- Revision:
- 8:30ad5229cc0b
- Parent:
- 7:bd4b84e2320e
- Child:
- 10:946a3835a7c7
File content as of revision 8:30ad5229cc0b:
#include "Snake.h"
Snake::Snake(){
}
Snake::~Snake(){
}
void snake::init(){
for (int i = 0; i <_point ; i++) {
_xoldpos[i] = 15;
_yoldpos[i] = 23;
_xnewpos[i] = 15 ;
_ynewpos[i] = 23;
}
dir_snake = 1;
_array = 100;
_point = 0;
_snakesize = 6;
}
void snake::update(Direction d,float mag){
if (dir_snake == 1){
s ;}
else if (dir_snake == 2){
n;}
else if (dir_snake == 3){
e;}
else if (dir_snake == 4){
w;}
if ((d == S))
{ dir_snake = 1 ;}
if ((d == N))
{ dir_snake = 2 ;}
if ((d == E))
{ dir_snake = 3 ;}
if ((d == W))
{ dir_snake = 4 ;}
}
void snake::draw(N5110 &lcd)
{
for(int i=0; i<_snakesize; i++) {
lcd.setPixel(_xnewpos[i],_ynewpos[i]);
}
}
Vector2D snake::get_pos()
{
Vector2D p = {_xnewpos[0],_ynewpos[0]};
return p;
}
void snake::set_pos(Vector2D p)
{
_xnewpos[0] = p.x;
_ynewpos[0] = p.y;
}
void snake::point()
{
_point++;
}
int snake::get_point()
{
return _point ;
}