Snake Game by LCD 12864

Snake Game by LCD 12864

Introduction
In this experiment we will use LCD 12864 and joystick Module to make snake game.
Snake Game Description:
Adjust the level interface: up and down the joystick adjustment level(1-6), the rocker does not move the game to start the score interface: the rocker does not move the game to restart.
First download the initialization process, and then download the snake program.
Components
– 1 * Adeept UNO R3 Board
– 1 * LCD 12864 Module
– 1 * Joystick Module
– 1 * Breadboard
– 1 * USB Cable
– 1 * 6-Pin Wires
– 2 * Male To Male Jumper Wires
– 15 * Male To Female Jumper Wires

Experimental Principle 

Experimental Procedures
Step 1: Build the circuit

Step 2: Program  HallSensorModule.ino

/***********************************************************
File name:   AdeeptSnakeGame.ino
Website: www.adeept.com
E-mail: support@adeept.com
Author: Tom
Date: 2017/01/04 
***********************************************************/
#include "U8glib.h"
#include <EEPROM.h>

// 8Bit Com: D0..D7: 4,5,6,7, 8,9,10,11, en=A4, RS=A3,rw=A2
U8GLIB_ST7920_128X64_1X u8g(4, 5, 6, 7, 8, 9, 10, 11, 18, 17, 16);   

static unsigned char snake[] U8G_PROGMEM ={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,
0x00,0x0C,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0x07,
0x80,0xFF,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xFE,0x07,
0xC0,0xFF,0x01,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0xF0,0xFF,0x07,
0xC0,0xFF,0x37,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x80,0xFF,0xFF,0x0F,
0xE0,0xE3,0x3F,0x7C,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0xCE,0xFF,0xCF,0x0F,
0xF0,0x01,0x7F,0xFC,0x03,0x00,0x00,0x00,
0x00,0x00,0x00,0xFC,0xCF,0x7F,0x80,0x0F,
0xF0,0x01,0x7E,0xFC,0x07,0xFC,0x01,0x00,
0x02,0x80,0xFF,0xFC,0xCF,0x3F,0x00,0x0F,
0xF0,0x00,0x7C,0xE0,0x07,0xFC,0x0F,0xC0,
0x03,0xE0,0xFF,0xFC,0x07,0x3E,0x00,0x1E,
0xF0,0x00,0x7C,0xE0,0x0F,0xFC,0x0F,0xE0,
0x07,0xE0,0xFF,0xF0,0x01,0x3E,0x00,0x1E,
0xF0,0x00,0x78,0xE0,0x0F,0xE0,0x05,0xE0,
0x07,0x00,0x1F,0xF0,0x00,0x3E,0x00,0x1C,
0xF0,0x00,0x78,0xE0,0x1F,0xE0,0x00,0xE0,
0x07,0x00,0x1F,0x78,0x00,0x3E,0x00,0x04,
0xF0,0x00,0x70,0xE0,0x1F,0xE0,0x00,0xF0,
0x07,0x00,0x1F,0x78,0x00,0x3E,0x00,0x00,
0xF0,0x00,0x70,0xE0,0x3F,0xE0,0x00,0xF0,
0x0F,0x00,0x1F,0x3C,0x00,0x3E,0xE0,0x00,
0xF0,0x01,0x20,0xE0,0x3F,0xE0,0x00,0xF0,
0x0F,0x00,0x1F,0x1E,0x00,0x3E,0xE0,0x00,
0xF0,0x01,0x00,0xE0,0x7F,0xE0,0x00,0xF8,
0x0F,0x00,0x1F,0x1E,0x00,0x3E,0xE0,0x00,
0xF0,0x03,0x00,0xE0,0x7C,0xE0,0x00,0x78,
0x1F,0x00,0x1F,0x0F,0x00,0x3E,0xE0,0x00,
0xF0,0x0F,0x00,0xE0,0xFC,0xE0,0x00,0x38,
0x1F,0x00,0x9F,0x07,0x00,0x3E,0xE0,0x00,
0xE0,0x1F,0x00,0xE0,0xF8,0xE0,0x00,0x3C,
0x1F,0x00,0x9F,0x07,0x00,0x3E,0xE0,0x00,
0xC0,0x7F,0x00,0xE0,0xF8,0xE1,0x00,0x3C,
0x1F,0x00,0xDF,0x03,0x00,0x3E,0xF0,0x00,
0xC0,0xFF,0x00,0xE0,0xF0,0xE1,0x00,0x3C,
0x3E,0x00,0xFF,0x07,0x00,0xFE,0xFF,0x00,
0x00,0xFF,0x03,0xE0,0xF0,0xE3,0x00,0x1C,
0x3E,0x00,0xFF,0x07,0x00,0xFE,0xFF,0x00,
0x00,0xFE,0x07,0xE0,0xE0,0xE3,0x00,0x1E,
0x3E,0x00,0xFF,0x0F,0x00,0xFE,0xFF,0x00,
0x00,0xFC,0x1F,0xE0,0xE0,0xE7,0x00,0x1E,
0x7C,0x00,0xFF,0x0F,0x00,0x7E,0xF8,0x00,
0x00,0xF0,0x3F,0xE0,0xC0,0xEF,0x00,0x0E,
0x7C,0x00,0xBF,0x1F,0x00,0x3E,0xF0,0x00,
0x00,0xC0,0x3F,0xE0,0x80,0xEF,0x00,0xFF,
0x7F,0x00,0x1F,0x1F,0x00,0x3E,0xE0,0x00,
0x00,0x80,0x7F,0xE0,0x80,0xFF,0x00,0xFF,
0x7F,0x00,0x1F,0x3F,0x00,0x3E,0xE0,0x00,
0x00,0x00,0x7E,0xE0,0x00,0xFF,0x00,0xFF,
0xFF,0x00,0x1F,0x3E,0x00,0x3E,0xE0,0x00,
0x00,0x00,0xFC,0xE0,0x00,0xFF,0x00,0x07,
0xF8,0x00,0x1F,0x7E,0x00,0x3E,0xE0,0x00,
0x00,0x00,0xF8,0xE0,0x00,0xFE,0x80,0x07,
0xF8,0x00,0x1F,0x7C,0x00,0x3E,0xE0,0x00,
0x00,0x00,0xF8,0xE0,0x00,0xFE,0x80,0x07,
0xF8,0x00,0x1F,0xFC,0x00,0x3E,0x00,0x00,
0x20,0x00,0xF0,0xE0,0x00,0xFC,0x80,0x03,
0xF8,0x01,0x1F,0xF8,0x00,0x3E,0x00,0x00,
0x38,0x00,0xF0,0xE0,0x00,0xFC,0xC0,0x03,
0xF0,0x01,0x1F,0xF8,0x01,0x3E,0x00,0x00,
0x78,0x00,0xF0,0xE0,0x00,0xF8,0xC0,0x03,
0xF0,0x01,0x1F,0xF0,0x01,0x3E,0x00,0x00,
0x78,0x00,0xF8,0xE0,0x00,0xF0,0xC0,0x03,
0xF0,0x03,0x1F,0xF0,0x01,0x3E,0x00,0x18,
0x78,0x00,0xF8,0xE0,0x00,0xF0,0xE0,0x03,
0xF8,0x03,0x1F,0xE0,0x03,0x3E,0x00,0x1C,
0x70,0x00,0x78,0xE0,0x00,0xE0,0xF8,0x0F,
0xFC,0xEF,0x3F,0xE0,0x03,0x3E,0x00,0x1C,
0xF0,0x00,0x7C,0xE0,0x0F,0xE0,0xF8,0x0F,
0xFC,0xEF,0xFF,0xF8,0x07,0x3E,0x00,0x1E,
0xF0,0x00,0x3C,0xFC,0x0F,0xC0,0xF8,0x01,
0xC0,0xEF,0xFF,0xF8,0x1F,0x3E,0x00,0x1E,
0xF0,0x01,0x3E,0xFC,0x0F,0x00,0x00,0x00,
0x00,0x00,0xC0,0xF8,0xDF,0x3F,0x00,0x1F,
0xF0,0x87,0x1F,0xFC,0x01,0x00,0x00,0x00,
0x00,0x00,0x00,0x80,0xDF,0xFF,0x83,0x0F,
0xF0,0xFF,0x0F,0x04,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0xC0,0xFF,0xFF,0x0F,
0xF0,0xFF,0x07,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0xFC,0xFF,0x0F,
0xF0,0xFF,0x01,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x80,0xFF,0x0F,
0xE0,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0xF8,0x0F,
0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x07,
0x20,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};//bitmap“SNAKE”
int level; //Snake Game level

//The corresponding game level, the snake to move a lattice 
//required time (actually slightly larger than leveltime)(ms)
int leveltime;

unsigned long time1=0;//Record system time
 char r[3];//The game ends to display the highest score
 char u[3];//The game ends to display the current score
unsigned long time=0;//Record system time
int n=0;//The current snake length
int wei=0;//Records snake tail coordinates: 0 ~ 511
int ore;//Direction of movement of the snake 1: Right 2: Up 3: Left 4: Down
int y;

//From k [0] to k [511] in order to store the coordinates of the snake head 
//to the tail, if there is no save -1
int k[512];
//For example, if the snake has two nodes, the snake head coordinate is 1 
//and the tail coordinates is 0, K [1] = 0, k [2] ~ k [511] = - 1 

int addr=0;//EEPROM stores the highest address
unsigned long s[16];//Used to record the coordinates of each section of the snake is occupied
long randNumber;//Randomly produces a snack food as a snake
unsigned long p,q;

void draw1(void)
{

r[0]=(EEPROM.read(addr)-3)/100+48;
r[1]=((EEPROM.read(addr)-3)%100)/10+48;
r[2]=(EEPROM.read(addr)-3)%10+48;
u[0]=(n-3)/100+48;;
u[1]=((n-3)%100)/10+48;
u[2]=(n-3)%10+48;
u8g.setFont(u8g_font_helvB24);
u8g.drawStr(74, 28,r);
u8g.setFont(u8g_font_helvB24);
u8g.drawStr(74, 60,u );
u8g.drawHLine(0,32, 128);
u8g.setFont(u8g_font_helvB12);
u8g.drawStr(4,15,"HIGH");
u8g.drawStr(4,31,"SCORE");
u8g.drawStr(4,47,"YOUR");
u8g.drawStr(4,63,"SCORE");
}
void draw2(void)
{
u8g.setFont(u8g_font_helvB12);
u8g.drawStr(42, 32,"GAME");
u8g.drawStr(42, 46,"OVER");
u8g.drawRFrame(39,17, 53,32, 2);
}
void draw(void) {
  int x;
int m=0;
  for(x=0;x<=511;x++)
  {
  if(k[x]>=0)
  {
    m=m+1;     
  }
  }
 for(x=0;x<=m;x++)
  {
  if((k[x]-k[x+1])*(k[x]-k[x+1])==1)
  {
  u8g.drawBox((min(k[x],k[x+1])%32)*4,(min(k[x],k[x+1])/32)*4,7,3);
  }
  }
   for(x=0;x<=m-2;x++)
  {
  if((k[x]-k[x+1])*(k[x]-k[x+1])==1024)
  {
  u8g.drawBox((min(k[x],k[x+1])%32)*4,(min(k[x],k[x+1])/32)*4,3,7);
  }
  }
u8g.drawBox((randNumber%32)*4,(randNumber/32)*4,3,3);  
//Serial.println(randNumber);
}
unsigned long cifang(int w)//2 of the w power
{
      int v;
      if(w<=30)
      {
    unsigned long q=1;
    for(v=0;v<=w;v++)
    {
    q=q*2;
    }
    unsigned long p=q/2;
    return p;
      }
      if(w==31)
      {
      p=2147483648;
      return p;
      }

}

void writes()
{
  for(y=0;y<=15;y++)   
{
s[y]=0;
}
  for(y=0;y<n;y++)
  {
  s[k[y]/32]=s[k[y]/32]+cifang(31-k[y]%32);
  }
}
void gameover()
{
    if(n>EEPROM.read(addr))
      {
      EEPROM.write(addr, n);//If the score exceeds the highest score, the record
      }
       u8g.firstPage();  
      do {
     draw2();//Display GAME OVER
      } while( u8g.nextPage() );
      delay(1500);
      u8g.firstPage();  
      do {
     draw1();//Displays the score
      } while( u8g.nextPage() );
        for(y=0;y<=511;y++)//The game ends with reinitialization to start over
    {
    k[y]=-1;
    }
      k[0]=240;
      k[1]=239;
      k[2]=238;
    for(y=0;y<=15;y++)   
    {
    s[y]=0;
    }
    for(y=0;y<=511;y++)
      {
      if(k[y]>=0)
      {
      s[k[y]/32]=s[k[y]/32]+cifang(31-k[y]%32);
      }
      }
    ore=1;
}

int le(int w)//Level w corresponding to the delay
{
    int f;
    if(w==1) f=900;
    if(w==2) f=500;
    if(w==3) f=250;
    if(w==4) f=100;
    if(w==5) f=50;
    if(w==6) f=2;
    return f;
}



void setup(void) {
int level=EEPROM.read(1);
  Serial.begin(9600);
// pinMode(12,INPUT); 
while(analogRead(1)<1000)
{
  while(millis()-time1==300)
  {
if(analogRead(0)>900)
{
  level=level+1;
  if(level>6)
  {
  level=1;
  }
}
if(analogRead(0)<100)
{
  level=level-1;
  if(level<1)
  {
  level=6;
  }
}
u8g.firstPage();  
  do {
    u8g.setFont(u8g_font_helvB12);
    switch(level)
    {
    case 1:
     u8g.drawStr(32, 60,"LEVEL 1");
     break;
     case 2:
     u8g.drawStr(32, 60,"LEVEL 2");
     break;
     case 3:
     u8g.drawStr(32, 60,"LEVEL 3");
     break;
     case 4:
     u8g.drawStr(32, 60,"LEVEL 4");
     break;
     case 5:
     u8g.drawStr(32, 60,"LEVEL 5");
     break;
     case 6:
     u8g.drawStr(32, 60,"LEVEL 6");
     break;
    }
    u8g.drawXBMP( 0, 0, 128, 56, snake);
 //   u8g.setFont(u8g_font_helvB24);
 //   u8g.drawStr(12, 40,"SNAKE");
  } while( u8g.nextPage() );
  time1=millis();
  }
}
leveltime=le(level);
if(level!=EEPROM.read(1))
{
EEPROM.write(1,level);
}
Serial.println(leveltime);
  for(y=0;y<=511;y++)   
{
k[y]=-1;
}
  k[0]=240;
  k[1]=239;
  k[2]=238;
for(y=0;y<=15;y++)   
{
s[y]=0;
}
for(y=0;y<=511;y++)
  {
  if(k[y]>=0)
  {
  s[k[y]/32]=s[k[y]/32]+cifang(31-k[y]%32);
  }
  }
randomSeed(analogRead(5));
ore=1;
// attachInterrupt(0, downleft, CHANGE);
//  attachInterrupt(1, upright, CHANGE);
}



void loop(void) {
aa: do {randNumber=random(0,512);}
while(((s[randNumber/32])/(cifang(31-randNumber%32)))%2==1);
 n=0;
  for(y=0;y<=511;y++)
  {
  if(k[y]>=0)
  {
    n=n+1;     
  }
  }

while(k[0]!=randNumber)
{
 
  u8g.firstPage();  
  do {
 draw();
  } while( u8g.nextPage() );
  time=millis();
  while(millis()-time<leveltime)
{
if (analogRead(0)>900)
{
if((ore==1)||(ore==3))  
{
  ore=4;
  goto out;
}
}
if (analogRead(0)<100)
{
if((ore==1)||(ore==3))  
{
  ore=2;
  goto out;
}
}
if (analogRead(1)>900)
{
if((ore==2)||(ore==4))  
{
  ore=1;
  goto out;
}
}
if (analogRead(1)<100)
{
if((ore==2)||(ore==4))  
{
  ore=3;
  goto out;
}
}
}
out: wei=k[n-1];
  if(ore==1)
  {
  for(y=n-2;y>=0;y--)
  {
  k[y+1]=k[y];
  }
  k[0]=k[0]+1;
   if((k[0]%32==0)||(((s[k[0]/32])/(cifang(31-k[0]%32)))%2==1))   
  {
 gameover();
 while(analogRead(1)<900)
 {
 }
 goto aa;
  }
 writes();
  }
  if(ore==2)
  {
  for(y=n-2;y>=0;y--)
  {
  k[y+1]=k[y];
  }
  k[0]=k[0]-32;
   if((k[0]<0)||(((s[k[0]/32])/(cifang(31-k[0]%32)))%2==1))   
 {
   gameover();
   while(analogRead(1)<900)
 {
 }
 goto aa;
  }
 writes();
  }
  if(ore==3)
  {
  for(y=n-2;y>=0;y--)
  {
  k[y+1]=k[y];
  }
  k[0]=k[0]-1;
  if(((k[0]+33)%32==0)||(((s[k[0]/32])/(cifang(31-k[0]%32)))%2==1))
 {
  gameover();
while(analogRead(1)<900)
 {
 }
 goto aa;
  }
 writes();
  }
  if(ore==4)
  {
  for(y=n-2;y>=0;y--)
  {
  k[y+1]=k[y];
  }
  k[0]=k[0]+32;
   if((k[0]>511)||(((s[k[0]/32])/(cifang(31-k[0]%32)))%2==1))   
 {
  gameover();
  while(analogRead(1)<900)
 {
 }
 goto aa;
  }
  writes();
  }


}
k[n]=wei;
s[k[n]/32]=s[k[n]/32]+cifang(31-k[n]%32);
}

Step 3: Compile and download the sketch to the UNO R3 board.

790 Replies to “Snake Game by LCD 12864”

  1. Pingback: social nft bounty
  2. Pingback: texas poker cc
  3. Pingback: Search here
  4. Pingback: oem air purifier
  5. Pingback: w88club slot
  6. Pingback: Go to this site
  7. Pingback: Read more
  8. Pingback: my pg slot
  9. Pingback: forex brokers
  10. Pingback: auto pg slot
  11. Pingback: my pg slot
  12. Pingback: buy wow gold
  13. Pingback: kaya bet88
  14. Pingback: maxim nail supply
  15. Pingback: p2p lending
  16. Pingback: no wa sbowin
  17. Pingback: Find It
  18. Pingback: lender synonym
  19. Pingback: best sms marketing
  20. Pingback: viagra cost
  21. Pingback: eterneva valuation
  22. Pingback: we buy junk cars
  23. Pingback: Read more
  24. Pingback: buy cali online
  25. Pingback: 4d download
  26. Pingback: jokerbet login
  27. Pingback: hk pools sgp
  28. Pingback: togel 188 online
  29. Pingback: joker123 myanmar
  30. Pingback: udemy
  31. Pingback: dtec silicon oasis
  32. Pingback: lootwowgold reddit
  33. Pingback: 5g sbowin
  34. Pingback: acer testing
  35. Pingback: dachshund price
  36. Pingback: masterslot login
  37. Pingback: celebrity bakery
  38. Pingback: slot net
  39. Pingback: gacor 77
  40. Here at Leslie’s Pugsland Breeder, Our beautiful fawn pug has given birth to 4 healthy Pug puppies.
    She is our beloved family dog and this is her 1st litter.
    Both mum and dad are AKC registered with 5 gen pedigree certificate. Both from Top Champion bloodlines.Mum and Dad can be seen. Puppies have been wormed weeks 2,4,6,8 and will have had a flea preventative treatment before leaving us.
    They will have their vet check, 1st vaccinations and microchip.
    To view all available puppies and recent pictures, Search us in google as LESLIE’S PUGSLAND BREEDER or click on our website link bellow : https://pugslandbreeder.company.com/

    Pug Puppies for sale | pug for sale near me | pug puppy for sale | pug puppy | pug for sale | pug puppies for sale in va | black pug puppies for sale

  41. Pingback: togel poker cc
  42. Pingback: pokercc77
  43. Pingback: m sa gaming
  44. Pingback: mxe drug
  45. Pingback: judi slot booming
  46. Pingback: qiu qiu game
  47. Pingback: 24 7 steroids
  48. Pingback: sbobet register
  49. Pingback: bandarqq2
  50. Pingback: Buy Now
  51. Pingback: olansi group
  52. Pingback: pkv games domino
  53. Pingback: pc gaming news
  54. Pingback: k08 air purifier
  55. Pingback: olansi k08a
  56. Pingback: purifier
  57. Pingback: goat shop
  58. Pingback: goat kid supplier
  59. Pingback: Read More
  60. Pingback: glock 17
  61. Pingback: cialis tablet
  62. Pingback: bitcoin news
  63. Pingback: led strip lights
  64. Pingback: goat buy online
  65. Pingback: judi bola 365bet
  66. Pingback: Buy Crystal Meth
  67. Pingback: k08 air purifier
  68. Pingback: k08 air purifier
  69. Pingback: situs togel resmi
  70. Pingback: More info
  71. Pingback: noble fakes id
  72. Pingback: dai maker in china
  73. Pingback: exodus effect pdf
  74. Pingback: domino qiu qiu apk
  75. Pingback: oem air purifier
  76. Pingback: olansi k08a
  77. Pingback: cadr 600
  78. Pingback: cadr 600
  79. Pingback: olansi k08a
  80. Pingback: olansi k08a
  81. Pingback: k08 air purifier
  82. Pingback: olansi group
  83. Pingback: k08 air purifier
  84. Pingback: gambling sites uk
  85. Pingback: Situs Judi Online
  86. Pingback: pomeranian black
  87. Pingback: ip camera wifi
  88. Pingback: online goat sale
  89. Pingback: prop money near me
  90. Pingback: qiuqiu99
  91. Pingback: judi bola 365bet
  92. Pingback: pink runtz bags
  93. Pingback: olansi group
  94. Pingback: olansi k15b
  95. Pingback: k08 air purifier
  96. Pingback: olansi alibaba
  97. Pingback: olansi k08a
  98. Pingback: olansi k08a
  99. Pingback: Air Purifiers
  100. Pingback: kilim rugs - ikea
  101. Pingback: pubg diamond hack
  102. Pingback: best seo company
  103. Pingback: Olansi luftreinige
  104. Pingback: gift online
  105. Pingback: cavapoo breeder
  106. Pingback: olansi group
  107. Pingback: olansi group
  108. Pingback: olansi group
  109. Pingback: olansi group
  110. Pingback: loa contracting
  111. Pingback: nembutal for sale
  112. Pingback: nembutal for sale
  113. Pingback: floor marking tape
  114. Pingback: Visit Here
  115. Pingback: bloom brands
  116. Pingback: bloom carts gsc
  117. Pingback: toto result 2020
  118. Pingback: Read online
  119. Pingback: Skin Care Products
  120. Pingback: play guitar online
  121. Pingback: instagram font
  122. Pingback: oomnex machine
  123. Pingback: luxury777
  124. Pingback: oem/odm cosmetics
  125. Pingback: newspapers
  126. Pingback: webm to mp4 app
  127. Pingback: photo funny frames
  128. Pingback: live goat price
  129. Pingback: all new movie
  130. Pingback: cbd products
  131. Pingback: quilter logo
  132. Pingback: dabbing live resin
  133. Pingback: formations login
  134. Pingback: pc cabinet screws
  135. Pingback: self locking screw
  136. Pingback: big globe price
  137. Pingback: globe price list
  138. Pingback: cbd for anxiety
  139. Pingback: cheese price
  140. Pingback: online casinos
  141. Pingback: cbd capsules
  142. Pingback: dominoqq login
  143. Pingback: get new idea
  144. Pingback: hire seo expert#
  145. Pingback: indonesia lottery
  146. Pingback: Gallus Detox
  147. Pingback: webm to mp4 ffmpeg
  148. Pingback: play store
  149. Pingback: vaping for kids
  150. Pingback: layarkaca21
  151. Pingback: online casino goa
  152. Pingback: judi bola 365bet
  153. Pingback: poker rules
  154. Pingback: gout diagnosis
  155. Pingback: golf game rules
  156. Pingback: playnow games
  157. Pingback: Buy Oxycodone
  158. Pingback: dog care products
  159. Pingback: chinese sheet mask
  160. Pingback: online poker game
  161. Pingback: anime tv
  162. Pingback: limousine in USA
  163. Pingback: osrs gold
  164. Pingback: dark web download
  165. Pingback: corona news
  166. Pingback: cpa syllabus
  167. Pingback: goa casino online
  168. Pingback: buy pet food
  169. Pingback: buy dog supplies
  170. Pingback: lightsaber colors
  171. Pingback: electrician work
  172. Pingback: food for your dog
  173. Pingback: sexual profermance
  174. Pingback: runescape 2
  175. Pingback: micro switch Spain
  176. Pingback: micro switch
  177. Pingback: car scrap rate
  178. Pingback: lip balm for men
  179. Pingback: makeup online
  180. Pingback: SGP Lottery Data
  181. Pingback: dark web download
  182. Pingback: healthy food
  183. Pingback: pandora188
  184. Pingback: untung88
  185. Pingback: air purifier
  186. Pingback: micro switches
  187. Pingback: Testing 58
  188. Pingback: Kansas City SEO
  189. Pingback: https://astrow.pl/
  190. Pingback: 토토플릭스
  191. Pingback: Dentist Near Me
  192. Pingback: scar serum
  193. Pingback: m88vina
  194. Pingback: SEO Las Vegas
  195. Pingback: fun88
  196. Pingback: www.bobsseo.net
  197. Pingback: w88
  198. Pingback: Las Vegas SEO
  199. Pingback: lucky88.win
  200. Pingback: Luxury Blog
  201. Pingback: Bronx
  202. Pingback: Tinder Auto Liker
  203. Pingback: SEO Harrisburg
  204. Pingback: SEO Las Vegas
  205. Pingback: my review here
  206. Pingback: unblocked games
  207. Pingback: w88 thailand
  208. Pingback: 138bet

Leave a Reply