Snake game for a 5x5 LED matrix
snake.cpp
- Committer:
- dhamilton31
- Date:
- 2013-10-09
- Revision:
- 0:dc906408980e
- Child:
- 1:5fcb94bb03db
File content as of revision 0:dc906408980e:
#include "snake.h" #include "bodyPiece.h" #include <list> snake::snake(char startRow, char startCol){ bodyPiece head = bodyPiece(); head.currRow = startRow; head.currCol = startCol; snakeBody.push_back(head); } void snake::move(char newHeadRow, char newHeadCol){ // Variables to hold the bodyPiece's X and Y positions on the grid char prevRow, prevCol, tempRow, tempCol; // Store the snake's head into the iterator std::list<bodyPiece>::iterator it=snakeBody.begin(); // Save the head's current Row and Col position prevRow = (*it).currRow; prevCol = (*it).currCol; // Update the head to the new Row and Col (*it).currRow = newHeadRow; (*it).currCol = newHeadCol; // Check to see if we are at the tail with this while loop while(it != snakeBody.end()){ // Move to the next bodyPiece it++; // Store the previous piece's location in the current piece tempRow = (*it).currRow; (*it).currRow = prevRow; tempCol = (*it).currCol; (*it).currCol = prevCol; prevRow = tempRow; prevCol = tempCol; } } void snake::addPiece(){ snakeBody.push_back(bodyPiece()); } food::food(char row, char col){ currRow = row; currCol = col; } void food::moveFood(char row, char col){ currRow = row; currCol = col; }