-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathEcranFinal.cpp
More file actions
73 lines (56 loc) · 1.51 KB
/
EcranFinal.cpp
File metadata and controls
73 lines (56 loc) · 1.51 KB
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#include "EcranFinal.h"
#include "ManagerEcran.h"
#include <iostream>
using namespace std;
/**
* Constructeur
*/
EcranFinal::EcranFinal(ManagerEcran *man, DonneesJeu* don) :
ok(Bouton("Images/okDepart.png", "Images/okClique.png")),
manager(man),
donnees(don)
{
// On charge l'image de fond dans la texture "image"
image.loadFromFile("Images/final.png");
// On met la texture dans le sprite ecran
ecran.setTexture(image);
}
/**
* Cette fonction lance l'affichage de la fênetre
* @param window la fenetre
*/
void EcranFinal::afficher(sf::RenderWindow &fenetre)
{
if(ok.getClique()==true)
{
// on passe a l'écran Epilogue
manager->setEcranCourant(manager->getEcranEpilogue());
}
// Affichage des elements
fenetre.draw(ecran);
sf::Sprite sp = ok.getSprite();
sp.move(sf::Vector2f(588, 610));
fenetre.draw(sp);
//on affiche le joueur gagnant
sf::Texture texture;
texture= donnees->getGagnant()->getTexture();
sf::Sprite sprite;
sprite.setTexture(texture);
sprite.setPosition(610,350);
fenetre.draw(sprite);
}
/**
* Cette fonction permet le changement d'ecran en fonction des evenements
* @param event un evenement envoyé par les classes superieurs
*/
void EcranFinal::update(sf::Event event)
{
int x = event.mouseButton.x;
int y = event.mouseButton.y;
// si l'utilisateur clique sur le bouton ok
if(588<=x && x<=708 && 610<=y && y<=690)
{
// on enfonce le bouton
ok.clique();
}
}