예제 #1
0
파일: lista.cpp 프로젝트: zbigg/lista
void stare_main()
{

	Lista sl;
	int   i;
  
	cout << "(A) : "; sl.showValues();  
  
	for(i = 1; i <= 10; i++)
	{
	    obj* p = new obj;
	    p->value = i;
	    sl.pushFront(p);
	}


	cout << "(B) : ";   sl.showValues();
  
	sl.popFront();

	cout << "(C) : ";   sl.showValues(); 
	
	sl.erase(5);
	
	cout << "(5) : ";   sl.showValues();
}
예제 #2
0
void Bola::colidiu(Lista<Bloco> &blocos,Fila<Buff> &buffs,Player &jogador,Pilha<sf::Color> &pilha){
    for(Lista<Bloco>::iterator i=blocos.begin();i!=blocos.end();i++){
         if(this->getGlobalBounds().intersects(i->getGlobalBounds())){
             laser1.play();
             if(this->getPosition().y>i->getPosition().y&&this->getPosition().y<i->getPosition().y+25){
                 speed.x*=-1;
             }else speed.y*=-1;

             --(*i);
             //Olhar essa parte
             ///Mesmo sem quebrar o bloco, a pilha é alterada
             if(!pilha.empty()){
                 if(i->getFillColor()==pilha.top())
                     pilha.pop();
                 else
                     pilha.push(i->getFillColor());
             }
             if(i->getLife()==0){
                jogador.setPontos(jogador.getPontos()+10*i->getType());
                if(i->hasBuff){
                    if(!buffs.front().isActive){
                        buffs.front().isActive=true;
                        buffs.front().setPosition(i->getPosition());
                    }
                }
                i=blocos.erase(i);
             }

         }
    }
}
예제 #3
0
파일: lista.cpp 프로젝트: zbigg/lista
void test_zbyszka() 
{
    Lista sl;
    
    CHECK_EQUAL(sl.size(), 0 );
    
    for(int i = 1; i <= 10; i++)
    {
        obj* p = new obj;
        p->value = i;
        sl.pushFront(p);
        CHECK_EQUAL(sl.size(), i );
    }
    CHECK_EQUAL(sl.size(), 10 );
    sl.popFront();
    CHECK_EQUAL(sl.size(), 9 );
    sl.erase(5);
    CHECK_EQUAL(sl.size(), 8 );
}
예제 #4
0
파일: lista.cpp 프로젝트: zbigg/lista
void test_na_usuwanie()
{
    Lista sl;
    CHECK_EQUAL(sl.size(), 0 );
    for(int i = 1; i <= 3; i++)
    {
        obj* p = new obj;
        p->value = i;
        sl.pushFront(p);
    }
    
    CHECK_EQUAL(sl.first()->value, 3);
    CHECK_EQUAL(sl.first()->next->value, 2);
    CHECK_EQUAL(sl.first()->next->next->value, 1);
    
    sl.erase(1);
    
    CHECK_EQUAL(sl.first()->value, 3);
    CHECK_EQUAL(sl.first()->next->value, 2);
    //CHECK_EQUAL(sl.first()->next->next, 0);
    CHECK_EQUAL(sl.size(), 2);
}