@Override
 public void update(GameContainer container, int arg1) throws SlickException {
   input = container.getInput();
   if (input.isKeyPressed(Input.KEY_ENTER)) {
     GameStart = true;
   }
   if (!player.GameOver && GameStart) {
     invul_frame -= 1;
     trap.update(v);
     for (int x = 0; x < 4; x++) {
       for (int y = 0; y < 3; y++) {
         walls[x][y].update(v);
       }
     }
     input = container.getInput();
     player.update();
     if (input.isKeyPressed(Input.KEY_SPACE)) {
       player.jump();
     }
     if (isCollide(player, trap, invul_frame)) {
       player.HIT();
       ;
       invul_frame = 30;
     }
     if (trap.getX() <= -100) {
       randomTrap();
     }
   }
   input = container.getInput();
   if (player.GameOver && input.isKeyPressed(Input.KEY_R)) {
     GameStart = false;
     container.reinit();
   }
 }
  public boolean isCollide(Runner player, BasicTrap trap, float invul) throws SlickException {

    float deltaX = (player.getSizeX() + trap.getSizeX()) / 2;
    float deltaY = (player.getSizeY() + trap.getSizeY()) / 2;
    if (Math.abs(player.getX() - trap.getX()) <= deltaX
        && Math.abs(player.getY() - trap.getY()) <= deltaY
        && invul <= 0) {
      return true;
    }
    return false;
  }
 @Override
 public void render(GameContainer arg0, Graphics arg1) throws SlickException {
   renderwall();
   player.render();
   trap.render();
   if (player.GameOver) {
     SplashGameOver.draw(140, 140);
   }
 }