Bonjour,
Je cherche une façon expliquer/détailler de gérer une map en tittle mapping.
En gros une fonction pour ouvrir un fichier level, sa case dans un tableau etc mais j'ai vraiment du mal.
Dans mon programme actuel le main lance l'objet Menu qui ouvre une fenêtre, suite à l'appuie d'une touche sa lance une fonction ( et non un objet ) startGame qui se contente pour l'instant que de déclarer un objet Mapp dans lequel je suis bloquer.
Par exemple j'ai essayé cette technique :
Mais le problème c'est que des qu'on dépasse la 1ère ligne de tile sa ne draw pas au dessus de 8, il y a 8 tile par ligne, si je met 9 dans le tableau bien sa m'affiche rien vus que le 9 est à la ligne deux, il faut changer la position source.top mais je vois pleins de techniques différentes je cherche la plus performante s'il vous plait
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 void Mapp::DrawMap(sf::RenderWindow & window, std::string texture) { m_texture.loadFromFile(texture); m_tileset.setTexture(m_texture); sf::IntRect dest; sf::IntRect source; source.width =m_hauteurTile; source.height = m_largeurTile; for(int i(0);i<m_largeurTile;i++) { for(int j(0);j<m_hauteurTile;j++) { dest.left = i*m_hauteurTile; dest.top = j*m_largeurTile; //source.left = (m_table[j][i]-'0')*66; source.left = m_texturesLoad[j][i]* m_largeurTile; source.top = 0; m_tileset.setTextureRect(source); m_tileset.setPosition(dest.left, dest.top); window.draw(m_tileset); } } window.display(); }
Merci de votre aide
Partager