void restart() {
    dead = false;
    level = 0;
    lives=10;
    enemiesLeft = 6;
    initEnemies();
}
Exemplo n.º 2
0
bool EnemyCache::init() {

	if (!Node::init()) {
		return false;
	}

	batch = SpriteBatchNode::create("virus.png", 10);
	this->addChild(batch);

	initEnemies();
	this->scheduleUpdate();

	return true;
}
void checkLevelComplete() {
    bool allDead = true;
    for (int i=0; i<enemyCount[level]; i++) {
        if (!enemies[i]->isDead()) {
            allDead = false;
        }
    }
    if (allDead && level == NUM_LEVELS) {
        win = true;
    }
    if (allDead && level<NUM_LEVELS) {
        level++;
        printf("\nlevel++ to %i with %i enemies\n", level, enemyCount[level]);
        if (sound) PlaySound(L"audio/level.wav",NULL,SND_FILENAME|SND_ASYNC);
        initEnemies();
    }


    if (level==1) {
        fog=true;
        light();
    }
}
void setupScene() {

    std::cout<<"Initializing scene..."<<std::endl;

    light();

    initEnemies();


    glShadeModel(GL_SMOOTH);

    glEnable(GL_DEPTH_TEST);

    dungarvan = new model3DS("dungarvan\\dungarvan.3ds", 2);

    if (intro) {
        xPos = -575;
        yPos = -50;
        zPos = 267;
        xRotation = 29;
        yRotation = 29;
    }

}
Exemplo n.º 5
0
/*JUEGO*/
void game(){
  u8 atkObj = 0;

  initVariables(1);
  initPlayer(map);
  initNivel();
  initEnemies(map);

   cpct_clearScreen(0);
   drawMap(map);
   while (1){
    if(finish == 1) return;
    //Esperar el retrazado
    cpct_waitVSYNC();

    //Desdibujar personajes
    erases();

    //Dibujar pickups
    if(temp == 10)
        drawPickUps(n.corazon,n.bullet);

    //Dibujar personajes
    draws();

    //Dibujar fatiga
    if(temp == 10){
        if(player.atk < 20) drawFatiga(player.atk,2);
        else if(player.atk > 20) drawFatiga(player.atk,1);
        else drawFatiga(player.atk,0);
    }
    //guardar datos anteriores
    if(temp%2 == 0){
        player.lx = player.x;
        player.ly = player.y;
    }

    if(enemy.life > 0){
        if(temp%2 == 1){
            enemy.lx = enemy.x;
            enemy.ly = enemy.y;
        }

       move();
        switch(checkCollisions(player.x, player.y, enemy.x, enemy.y, player.atk)){
          case 1:
            erase(enemy.lx,enemy.ly,0);
            enemy.x = enemy.ox;
            enemy.y = enemy.oy;
            enemy.lx = enemy.x;
            enemy.ly = enemy.y;
            enemy.ox = originse[map-1][4];
            enemy.oy = originse[map-1][5];
            enemy.life -= 1;
            player.atk = 20;
            enemy.pursue = 0;
            break;
          case 2:
            erase(player.lx,player.ly,0);
            player.x =originsp[map-1][0];
            player.y = originsp[map-1][1];
            player.lx =originsp[map-1][0];
            player.ly = originsp[map-1][1];
            player.life -= 1;
            player.atk = 20;
            enemy.pursue = 0;
            break;
        }
    }
    if(temp > 10)
        temp = 0;
    temp += 1;
    player.latk = player.atk;
      //Comprobar teclado
      cpct_scanKeyboard_f();
      player.sprite = checkKeyboard();
      checkBoundsCollisions(&n.corazon,&n.bullet);

      if(arrow == 1){
        moveObject();
        bound = checkArrowCollisions();
        if(object.dir == 2 || object.dir == 8)
            atkObj = 21;
        else
            atkObj = 22;
       if(enemy.life > 0 && checkCollisions(object.x, object.y, enemy.x, enemy.y, atkObj) == 1 && bound == 0){
         enemy.life -= 1;
         erase(enemy.lx,enemy.ly,0);
         enemy.x = enemy.ox;
         enemy.y = enemy.oy;
         enemy.lx = enemy.x;
         enemy.ly = enemy.y;
         enemy.pursue = 0;
         object.vivo = 0;
         bound = 1;
       }
      }
      
      if(player.life == 0){
        gameOver();
        finish = 1;
      } 
      

   }
}