Mochu Yao explorer game

Dependencies:   mbed

item/item-enginee.cpp

Committer:
el17my
Date:
2020-04-21
Revision:
4:64746224ab6e
Parent:
3:672d4bd8225d
Child:
8:201ef0618b7d

File content as of revision 4:64746224ab6e:

@code

#include "mbed.h"
#include "N5110.h"
#include "Gamepad.h"
#include "item.h"
#include <cstdlib> //the standard library by which we need the rand() and srand() function
#include <ctime> //in order to generate random number we need <ctime>

N5110 lcd(PTC9,PTC0,PTC7,PTD2,PTD1,PTC11);
Gamepad gamepad;
item _item;
//the position of the player is essential
//the player's position at first can not be same with the item, so I init the player's position and the item's position together
int _player_x;
int _player_y;
int _player_score;
bool _collision_flag;// to see if the player can get a score

int main() {
  _item.init();// use this to generate the item
  srand(time(NULL));// generate random values
  _player_score = 0;// set player score to 0;
  _player_x = 30;
  _player_y = 30;//make sure they are not in the same position at first
  while(1) {
    
    // becasue the module of the player is big so it has to be make sure that 
    //the item will be collected when the edge of the module collide with the item
    if (((_player_x - _item.get_item_x())< 7) && ((_player_y - _item.get_item_y()) < 7)) {  
    _collision_flag = true;
    _player_score++;
    _item.set_item((rand()%90),(rand()%90));  // use the rand()%m function to generate a number from m to 1
    // on a constrained random position.
    gamepad.tone(1000, 0.1);//cause a noise to makesure the coin has collected   
    }
    
    // Print the item.
    lcd.drawSprite(_item.get_item_x(),_item.get_item_y(),5,5,(int*)_item.get_item_form());
  }
}
       
@endcode