Bon sa fonctionne mais il j'ai des bug, certaine texture corresponde pas. De plus j'ai cette phrase
après un build :
=> c:/......... warning: missing braces around initializer for 'int [8]' (-Wmissing-braces)
PS voici le code ( je le met pas en balise c++ ) car c'est quasi le même que le 1er et sa ferais un post sasser long
#include <SFML/Audio.hpp>
#include <SFML/Graphics.hpp>
#include <iostream>
#include <sstream>
#include <stdlib.h>
int LARGEUR_TILE = 30;
int HAUTEUR_TILE = 30;
int main()
{
sf::RenderWindow World(sf::VideoMode(600, 600), "tilemap");
sf::Texture myTexture;
myTexture.loadFromFile("ressource/tuiles.png");
int map[16][8]
{
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2,
0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 2, 0, 0, 0, 0,
1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1,
0, 1, 0, 0, 2, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0,
0, 1, 1, 0, 2, 2, 2, 0, 0, 0, 1, 1, 1, 2, 0, 0,
0, 0, 1, 0, 1, 0, 2, 2, 0, 0, 1, 1, 1, 1, 2, 0,
2, 0, 1, 0, 2, 0, 2, 2, 2, 0, 1, 1, 1, 1, 1, 1,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
}; <= L'erreur ce situ ici
///BOUCLE///////////////////////////////
while (World.isOpen())
{
sf::Event event;
while (World.pollEvent(event))
{
if (event.type == sf::Event::Closed)
World.close();
}
World.clear();
///tuile 0 : rouge
sf::Sprite mySprite(myTexture);
mySprite.setTextureRect(sf::IntRect(0,0,40,40));
sf::Sprite tuile0;
tuile0 = mySprite;
///tuile 1 : Maron
sf::Sprite mySprite1(myTexture);
mySprite1.setTextureRect(sf::IntRect(40,0,40,40));
sf::Sprite tuile1;
tuile1 = mySprite1;
///tuile 2 : Bleu
sf::Sprite mySprite2(myTexture);
mySprite2.setTextureRect(sf::IntRect(80,0,40,40));
sf::Sprite tuile2;
tuile2 = mySprite2;
for(int i = 0; i < 13; i++)
{
for(int j = 0; j < 7; j++)
{
///selon le code trouve dans le tableau on parametre le bon tile et on le colle sur l'ecran
switch(map[i][j])
{
case 0:
tuile0.setPosition(i * LARGEUR_TILE, j * HAUTEUR_TILE);
World.draw(tuile0);
break;
case 1:
tuile1.setPosition(i * LARGEUR_TILE, j * HAUTEUR_TILE);
World.draw(tuile1);
break;
case 2:
tuile2.setPosition(i * LARGEUR_TILE, j * HAUTEUR_TILE);
World.draw(tuile2);
break;
}
}
}
World.display();
}
}
j'espère avoir de l’aide.