Esempio n. 1
0
void Player::Draw(sf::RenderWindow& iWindow, sf::Color& iColor, float timeElapsed) const
{
	if(!mIsActive)
		return;

	sf::Shape cannon;
	sf::Color regularColor = iColor;
	
	if(mLife < 30 && ((int)timeElapsed%2))
	{
		iColor.a -= 130;
	}
	


	// create the cannon shape
	cannon.AddPoint(0, 0, iColor, sf::Color(255, 255, 255));
	cannon.AddPoint(20, 0, iColor,   sf::Color(255, 255, 255));
	cannon.AddPoint(20, 20, iColor, sf::Color(255, 255, 255));
	cannon.AddPoint(15, 20, iColor, sf::Color(255, 255, 255));
	cannon.AddPoint(15, 40, iColor, sf::Color(255, 255, 255));
	cannon.AddPoint(5, 40, iColor, sf::Color(255, 255, 255));
	cannon.AddPoint(5, 20, iColor, sf::Color(255, 255, 255));
	cannon.AddPoint(0, 20, iColor, sf::Color(255, 255, 255));


	// Define an outline width
	cannon.SetOutlineWidth(2);

	// Disable filling and enable the outline
	cannon.EnableFill(true);
	cannon.EnableOutline(true);

	cannon.SetColor(sf::Color(255, 255, 255));

	/*cannon.Move(mPosition.X(), mPosition.Y());
	cannon.SetCenter(10,0);
	cannon.Rotate(mCannonRotation);*/

	// move and rotate the shape for each player
	cannon.Move(mPosition.X(), mPosition.Y());
	cannon.SetCenter(10,0);

	//switch(mID)
	//{

	//case 0:
	//	cannon.Rotate(mCannonRotation);
	//	break;
	//case 1:
	//	cannon.Rotate(mCannonRotation+90.0f);
	//	break;
	//case 2:
	//	cannon.Rotate(mCannonRotation+180.0f);
	//	break;
	//case 3:
	//	cannon.Rotate(mCannonRotation-90.0f);
	//	break;
	//}

	cannon.Rotate(mCannonRotation);


	// Draw the cannon
	iWindow.Draw(cannon);


	// draw projectiles
	for(int i=0; i<mProjectiles.size(); i++)
	{
		mProjectiles.at(i)->Draw(iWindow,regularColor);
	}


}
Esempio n. 2
0
void WidgetBase::draw(sf::RenderWindow &window) const {
    window.Draw(_sprite);
}
Esempio n. 3
0
//*Methodes
void Carte::afficher(sf::RenderWindow& App,std::string txt){
    if (txt.compare("inf") == 0)
        App.Draw(Iinf);
    else
        App.Draw(Isup);
}
Esempio n. 4
0
void Animation::Draw(sf::RenderWindow &Window)
{
	Window.Draw(spriteImage);
}
Esempio n. 5
0
void Player::drawInventory(sf::RenderWindow& rw) const
{
	static bool firstRun = true;
	static sf::Image tlo;
	static sf::Font font;
	if(firstRun) 
	{
		tlo.LoadFromFile("Images/inv.png");
		firstRun = false;
		font.LoadFromFile("silesiana.otf", 50,  L"A�BC�DE�FGHIJKL�MN�O�PRS�TUWYZ��a�bc�de�fghijkl�mn�o�prs�tuwyz��XxVvQq0123456789~!@#$%^&*()_-[]\\;',./{}:\"<>?=-+ ");
	}

	sf::Sprite tloH(tlo);
	rw.Draw(tloH);
	
	std::stringstream ss;
	ss<<"Masz " << coins << " $";
	sf::String t(ss.str(), font, 30.f);
	t.SetColor(sf::Color(20, 18, 160));
	t.SetPosition(600.f, 30.f);
	rw.Draw(t);

	float posy = 30.0;
	int i = 0;
	for(std::vector<Item>::const_iterator it = inventory.begin(); it != inventory.end(); it++)
	{
		std::wstring name = it->getName();
		if(i == weapon)
		{
			name += L" (uzbrojny - bro�)";
		}
		if(i == armor)
		{
			name += L" (uzbrojny - zbroja)";
		}
		sf::String t(name, font, 30.f);
		t.SetColor(sf::Color(20, 18, 160));
		if(selectedItem == i)
			t.SetColor(sf::Color(200, 18, 160));
		t.SetPosition(20.f, posy);
		rw.Draw(t);
		posy += 30.0;
		i++;
	}
	if(0 <= selectedItem && selectedItem < inventory.size())
	{
		TextArea desc(inventory[selectedItem].getDesc(), 400, font);
		desc.SetPosition(300, 50);
		rw.Draw(desc);
		Item::Type type = inventory[selectedItem].getProperty();
		if(type == 0)
		{
			TextArea desc1(L"Bron - Atak + " +inventory[selectedItem].getBoost(), 400,font);
			desc1.SetPosition(350,250);
			rw.Draw(desc1);
		}
		else if(type == 1)
		{
			TextArea desc1(L"Zbroja - Obrona + " +inventory[selectedItem].getBoost(), 400,font);
			desc1.SetPosition(350,250);
			rw.Draw(desc1);
		}
		else if(type == 2)
		{
			TextArea desc1(L"Helm - Obrona + " +inventory[selectedItem].getBoost(), 400,font);
			desc1.SetPosition(350,250);
			rw.Draw(desc1);
		}
		else if(type == 3)
		{
			TextArea desc1(L"Mikstura", 460,font);
			desc1.SetPosition(350,250);
			rw.Draw(desc1);
		}

		
	}
}
Esempio n. 6
0
void TankSpawn::Draw(sf::RenderWindow& wnd){
	wnd.Draw(mSprite);
}
Esempio n. 7
0
File: IGui.cpp Progetto: DanLB/Maze
void IGui::Draw(sf::RenderWindow& window)
{
    window.Draw(sprite);
}
Esempio n. 8
0
void Map::renderForeground(sf::RenderWindow& window) const
{
	window.Draw(*mForeground);
}
	void Node::Draw(sf::RenderWindow &renderWindow){
		if (_isLoaded){
			renderWindow.Draw(_sprite);
		}
	}
Esempio n. 10
0
void Frame::Draw(sf::RenderWindow& W){
    if(sprite)
        W.Draw(*sprite);
}
Esempio n. 11
0
void Map::renderBackground(sf::RenderWindow& window) const
{
	window.Draw(*mBackground);
}
Esempio n. 12
0
/**
 * Méthode principale de l'écran
 *
 * @Param sf::RenderWindow &fenetre
 * @Param Personnage &perso1
 * @Param Personnage &perso2
 * @Param Affichage &affichage
 * @Param Carte &carteJeu
 * @Son &son
 *
 * @Return int
 */
int EcranMenuMulti::run(sf::RenderWindow &fenetre, Personnage &perso1, Personnage &perso2, Affichage &affichage, Carte &carteJeu, Son &son)
{
	sf::Event monEvent;
	bool running = true;
	int i = 0;
	int j = 0;
	int k = 0;
	int l = 0;

    //Chargement de l'image de fond du menu multijoueur
    if (!ImageMulti.LoadFromFile("tilesets/MenuMulti.png"))
		std::cout << "Erreur chargement image du menu multi" << std::endl;

    //Chargement du tile pour le choix des personnages
    if (!ImagePerso.LoadFromFile("tilesets/Tile_perso.jpg"))
		std::cout << "Erreur chargement image du menu multi (tile perso)" << std::endl;

    //Chargement du tile pour le choix de la map
    if (!ImageMap.LoadFromFile("tilesets/Tile_Map.png"))
		std::cout << "Erreur chargement image du menu multi (tile map)" << std::endl;

    //Chargement de l'image flèche droite
    if (!ImageFlecheDroite.LoadFromFile("tilesets/FlecheDroite.png"))
		std::cout << "Erreur chargement image du menu multi (fleche droite) '" << std::endl;

    //Chargement de l'image flèche droite
    if (!ImageFlecheGauche.LoadFromFile("tilesets/FlecheGauche.png"))
		std::cout << "Erreur chargement image du menu multi (fleche gauche)" << std::endl;

    //Chargement de l'image pour le nombre de manches gagnantes
    if (!ImageNombreManches.LoadFromFile("tilesets/Tile_NombreManches.png"))
		std::cout << "Erreur chargement image du menu multi (tile nombre de manches)" << std::endl;


    //Chargement des images dans les sprites
    SpriteMulti.SetImage(ImageMulti);
    SpriteFlecheDroite1.SetImage(ImageFlecheDroite);
    SpriteFlecheDroite2.SetImage(ImageFlecheDroite);
    SpriteFlecheDroite3.SetImage(ImageFlecheDroite);
    SpriteFlecheDroite4.SetImage(ImageFlecheDroite);

    //Position des différents sprites
    SpriteFlecheDroite1.SetPosition(230, 450);
    SpriteFlecheDroite2.SetPosition(230, 620);
    SpriteFlecheDroite3.SetPosition(630, 390);
    SpriteFlecheDroite4.SetPosition(590, 587);

    SpriteFlecheGauche1.SetImage(ImageFlecheGauche);
    SpriteFlecheGauche2.SetImage(ImageFlecheGauche);
    SpriteFlecheGauche3.SetImage(ImageFlecheGauche);
    SpriteFlecheGauche4.SetImage(ImageFlecheGauche);
    SpriteFlecheGauche5.SetImage(ImageFlecheGauche);
    SpriteFlecheGauche1.SetPosition(50, 450);
    SpriteFlecheGauche2.SetPosition(50, 620);
    SpriteFlecheGauche3.SetPosition(420, 390);
    SpriteFlecheGauche4.SetPosition(5, 695);
    SpriteFlecheGauche5.SetPosition(455, 587);

    SpritePerso1.SetImage(ImagePerso);
    SpritePerso1.SetSubRect(sf::IntRect(0, 0, TAILLEIMAGEPERSO, TAILLEIMAGEPERSO));
    SpritePerso2.SetImage(ImagePerso);
    SpritePerso2.SetSubRect(sf::IntRect(0, 0, TAILLEIMAGEPERSO, TAILLEIMAGEPERSO));
    SpriteMap.SetImage(ImageMap);
    SpriteMap.SetSubRect(sf::IntRect(0, 0, TAILLEIMAGEMAP, TAILLEIMAGEMAP));
    SpriteNombreManches.SetImage(ImageNombreManches);
    SpriteNombreManches.SetSubRect(sf::IntRect(0, 0, TAILLEIMAGEMANCHES, TAILLEIMAGEMANCHES));
    SpritePerso1.SetPosition(115, 425);
    SpritePerso2.SetPosition(115, 595);
    SpriteMap.SetPosition(485, 350);
    SpriteNombreManches.SetPosition(520, 585);


    while(running)
	{
	    //Tant que la fenêtre contient des évènements
        while(fenetre.GetEvent(monEvent))
		{
			if (monEvent.Type == sf::Event::Closed)
				return (ECRAN_QUITTER); // On quitte le jeu

            if((monEvent.Type == sf::Event::MouseButtonPressed) && (monEvent.MouseButton.Button == sf::Mouse::Left))
            {
                //Cas ou on clique sur la fleche précédant
                if(monEvent.MouseButton.X > SpriteFlecheGauche4.GetPosition().x && monEvent.MouseButton.X < SpriteFlecheGauche4.GetPosition().x + TAILLEFLECHE)
                {
                    if(monEvent.MouseButton.Y > SpriteFlecheGauche4.GetPosition().y && monEvent.MouseButton.Y < SpriteFlecheGauche4.GetPosition().y + TAILLEFLECHE)
                    {
                        //On affiche le Menu Principal
                        return (ECRAN_MENU_PRINCIPAL);
                    }
                }
                if(monEvent.MouseButton.X > SpriteFlecheGauche1.GetPosition().x && monEvent.MouseButton.X < SpriteFlecheGauche1.GetPosition().x + TAILLEFLECHE)
                {
                    //Cas ou on clique sur la fleche précédant pour le choix du Perso 1
                    if(monEvent.MouseButton.Y > SpriteFlecheGauche1.GetPosition().y && monEvent.MouseButton.Y < SpriteFlecheGauche1.GetPosition().y + TAILLEFLECHE)
                    {
                        i = i - TAILLEIMAGEPERSO;
                        if(i < 0)
                        {
                            i = TAILLETILEPERSO - TAILLEIMAGEPERSO;
                        }

                        SpritePerso1.SetSubRect(sf::IntRect(i, 0, i + TAILLEIMAGEPERSO, TAILLEIMAGEPERSO));
                    }
                    //Cas ou on clique sur la fleche précédant pour le choix du Perso 2
                    if(monEvent.MouseButton.Y > SpriteFlecheGauche2.GetPosition().y && monEvent.MouseButton.Y < SpriteFlecheGauche2.GetPosition().y + TAILLEFLECHE)
                    {
                        j = j - TAILLEIMAGEPERSO;
                        if(j < 0)
                        {
                            j = TAILLETILEPERSO - TAILLEIMAGEPERSO;
                        }
                        SpritePerso2.SetSubRect(sf::IntRect(j, 0, j + TAILLEIMAGEPERSO, TAILLEIMAGEPERSO));
                    }
                }

                if(monEvent.MouseButton.X > SpriteFlecheDroite1.GetPosition().x && monEvent.MouseButton.X < SpriteFlecheDroite1.GetPosition().x + TAILLEFLECHE)
                {
                    //Cas ou on clique sur la fleche suivant pour le choix du Perso 1
                    if(monEvent.MouseButton.Y > SpriteFlecheDroite1.GetPosition().y && monEvent.MouseButton.Y < SpriteFlecheDroite1.GetPosition().y + TAILLEFLECHE)
                    {
                        i = i + TAILLEIMAGEPERSO;
                        if(i >= TAILLETILEPERSO)
                        {
                            i = 0;
                        }
                        SpritePerso1.SetSubRect(sf::IntRect(i, 0, i + TAILLEIMAGEPERSO, TAILLEIMAGEPERSO));
                    }
                    //Cas ou on clique sur la fleche suivant pour le choix du Perso 2
                    if(monEvent.MouseButton.Y > SpriteFlecheDroite2.GetPosition().y && monEvent.MouseButton.Y < SpriteFlecheDroite2.GetPosition().y + TAILLEFLECHE)
                    {
                        j = j + TAILLEIMAGEPERSO;
                        if(j >= TAILLETILEPERSO)
                        {
                            j = 0;
                        }
                        SpritePerso2.SetSubRect(sf::IntRect(j, 0, j + TAILLEIMAGEPERSO, TAILLEIMAGEPERSO));
                    }
                }

                if(monEvent.MouseButton.Y > SpriteFlecheDroite3.GetPosition().y && monEvent.MouseButton.Y < SpriteFlecheDroite3.GetPosition().y + TAILLEFLECHE)
                {
                    //Cas ou on clique sur la fleche précédant pour le choix de la map
                    if(monEvent.MouseButton.X > SpriteFlecheGauche3.GetPosition().x && monEvent.MouseButton.X < SpriteFlecheGauche3.GetPosition().x + TAILLEFLECHE)
                    {
                        k = k - TAILLEIMAGEMAP;
                        if(k < 0)
                        {
                            k = TAILLETILEMAP - TAILLEIMAGEMAP;
                        }
                        SpriteMap.SetSubRect(sf::IntRect(k, 0, k + TAILLEIMAGEMAP, TAILLEIMAGEMAP));
                    }
                    //Cas ou on clique sur la fleche suivant pour le choix de la map
                    if(monEvent.MouseButton.X > SpriteFlecheDroite3.GetPosition().x && monEvent.MouseButton.X < SpriteFlecheDroite3.GetPosition().x + TAILLEFLECHE)
                    {
                        k = k + TAILLEIMAGEMAP;
                        if(k >= TAILLETILEMAP)
                        {
                            k = 0;
                        }
                        SpriteMap.SetSubRect(sf::IntRect(k, 0, k + TAILLEIMAGEMAP, TAILLEIMAGEMAP));
                    }
                }


                if(monEvent.MouseButton.Y > SpriteFlecheDroite4.GetPosition().y && monEvent.MouseButton.Y < SpriteFlecheDroite4.GetPosition().y + TAILLEFLECHE)
                {
                    //Cas ou on clique sur la fleche précédant pour le choix du nombre de manches gagnantes
                    if(monEvent.MouseButton.X > SpriteFlecheGauche5.GetPosition().x && monEvent.MouseButton.X < SpriteFlecheGauche5.GetPosition().x + TAILLEFLECHE)
                    {
                        l = l - TAILLEIMAGEMANCHES;
                        if(l < 0)
                        {
                            l = TAILLETILEMANCHES - TAILLEIMAGEMANCHES;
                        }
                        SpriteNombreManches.SetSubRect(sf::IntRect(l, 0, l + TAILLEIMAGEMANCHES, TAILLEIMAGEMANCHES));
                    }

                    //Cas ou on clique sur la fleche suivant pour le choix du nombre de manches gagnantes
                    if(monEvent.MouseButton.X > SpriteFlecheDroite4.GetPosition().x && monEvent.MouseButton.X < SpriteFlecheDroite4.GetPosition().x + TAILLEFLECHE)
                    {
                        l = l + TAILLEIMAGEMANCHES;
                        if(l >= TAILLETILEMANCHES)
                        {
                            l = 0;
                        }
                        SpriteNombreManches.SetSubRect(sf::IntRect(l, 0, l + TAILLEIMAGEMANCHES, TAILLEIMAGEMANCHES));
                    }
                }

                //Cas ou on clique sur Commencer
                if(monEvent.MouseButton.X > 530 && monEvent.MouseButton.X < 710)
                {
                    if(monEvent.MouseButton.Y > 660 && monEvent.MouseButton.Y < 710)
                        {
                            //Switch sur i pour savoir quel perso a choisi le joueur 1
                            switch(i)
                            {
                                case 0*TAILLEIMAGEPERSO:
                                joueur1 = "zelda";
                                break;

                                case 1*TAILLEIMAGEPERSO:
                                joueur1 = "mario";
                                break;

                            }

                            //Switch sur j pour savoir quel perso a choisi le joueur 2
                            switch(j)
                            {
                                case 0*TAILLEIMAGEPERSO:
                                joueur2 = "zelda";
                                break;

                                case 1*TAILLEIMAGEPERSO:
                                joueur2 = "mario";
                                break;

                            }

                            //Switch sur k pour savoir quel map ont choisi les joueurs
                            switch(k)
                            {
                                case 0*TAILLEIMAGEMAP:
                                map = "zelda";
                                break;

                                case 1*TAILLEIMAGEMAP:
                                map = "mario";
                                break;

                            }

                            //On initialise le nombre de parties gagnantes
							perso1.setNombreDeManchesGagnantes((int)(l / TAILLEIMAGEMANCHES) + 1);
							perso2.setNombreDeManchesGagnantes((int)(l / TAILLEIMAGEMANCHES) + 1);

							perso1.setThemePersonnage(joueur1);
                            perso2.setThemePersonnage(joueur2);
                            affichage.setThemeCarte(map);
                            return (ECRAN_JEU); // On rentre dans l'écran du jeu
                        }
                }
            }
		}

		fenetre.Clear();
		fenetre.Draw(SpriteMulti);

		fenetre.Draw(SpriteFlecheDroite1);
		fenetre.Draw(SpriteFlecheDroite2);
		fenetre.Draw(SpriteFlecheDroite3);
		fenetre.Draw(SpriteFlecheDroite4);
		fenetre.Draw(SpriteFlecheGauche1);
		fenetre.Draw(SpriteFlecheGauche2);
		fenetre.Draw(SpriteFlecheGauche3);
		fenetre.Draw(SpriteFlecheGauche4);
		fenetre.Draw(SpriteFlecheGauche5);

		fenetre.Draw(SpritePerso1);
		fenetre.Draw(SpritePerso2);
		fenetre.Draw(SpriteMap);
		fenetre.Draw(SpriteNombreManches);
		fenetre.Display();
	}
	return (ECRAN_QUITTER);
}
Esempio n. 13
0
void Block::Draw(sf::RenderWindow& Window)const{
    Block::Sprite.SetPosition(Location);
    Window.Draw(Block::Sprite);
}
Esempio n. 14
0
void const MoveOrder::draw(sf::RenderWindow &App)
{
	destination_circle = sf::Shape::Circle(xpos, ypos, 2, sf::Color(0,0,0,0), 2, sf::Color::White);
	App.Draw(destination_circle);
}
Esempio n. 15
0
 //draws the chess piece
 void Knight::draw(sf::RenderWindow& canvas)const{
     canvas.Draw(m_sprite);
 }
Esempio n. 16
0
void Slider::draw(sf::RenderWindow &window) const {
    WidgetBase::draw(window);
    window.Draw(_cursor);
}
Esempio n. 17
0
void UserTron::ShowAskForInput(sf::RenderWindow& RW)
{
	RW.Draw( m_InsertInputText );
	RW.Display();
}
Esempio n. 18
0
File: paddle.cpp Progetto: d10p/pong
void Paddle::Draw(sf::RenderWindow& app)
{
	if(isVisible())
		app.Draw(*this);
}