-
Notifications
You must be signed in to change notification settings - Fork 0
/
deck.cpp
113 lines (102 loc) · 4.56 KB
/
deck.cpp
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
#include "prototypes.h"
//Permet de print toutes les cartes avec une bonne position dans le gestionnaire de deck
void actualiserImageDeck(std::vector<Cartes*> & cartesJoueur,std::vector<SDL_Surface*> & imageCache, SDL_Surface *windowSurface,std::vector<int> selected)
{
SDL_Rect position, position2, position3;
for(size_t i = 0; i< cartesJoueur.size(); i++ )
{
if(selected[i] == 0)
{
position = cartesJoueur[i]->getPosition();
SDL_BlitSurface(imageCache[cartesJoueur[i]->getImage()], NULL, windowSurface, &position);
}
else if(selected[i]==1)
{
position = cartesJoueur[i]->getPosition();
position.x -= 42;
position.y -= 59;
SDL_BlitSurface(imageCache[cartesJoueur[i]->getImage()+18], NULL, windowSurface, &position);
}
else if(selected[i]==2)
{
position = cartesJoueur[i]->getPosition();
position.x -= 42;
position.y -= 59;
position2 = position;
position.x += 20;
position.y +=27;
SDL_BlitSurface(imageCache[cartesJoueur[i]->getImage()+18], NULL, windowSurface, &position2);
SDL_BlitSurface(imageCache[cartesJoueur[i]->getImage()+18], NULL, windowSurface, &position);
}
else if(selected[i]==3)
{
position = cartesJoueur[i]->getPosition();
position.x -= 42;
position.y -= 59;
position2 = position;
position2.x += 20;
position2.y +=27;
position3 = position2;
position3.x += 20;
position3.y += 27;
SDL_BlitSurface(imageCache[cartesJoueur[i]->getImage()+18], NULL, windowSurface, &position);
SDL_BlitSurface(imageCache[cartesJoueur[i]->getImage()+18], NULL, windowSurface, &position2);
SDL_BlitSurface(imageCache[cartesJoueur[i]->getImage()+18], NULL, windowSurface, &position3);
}
}
}
//Init de toutes les images de cartes
void initDeckCartes(std::vector<SDL_Surface*> &imageCache)
{
imageCache.push_back(IMG_Load("Cartes/VentiP.png"));
imageCache.push_back(IMG_Load("Cartes/TartagliaP.png"));
imageCache.push_back(IMG_Load("Cartes/NingguangP.png"));
imageCache.push_back(IMG_Load("Cartes/KleeP.png"));
imageCache.push_back(IMG_Load("Cartes/BennetP.png"));
imageCache.push_back(IMG_Load("Cartes/Klee2P.png"));
imageCache.push_back(IMG_Load("Cartes/MonaP.png"));
imageCache.push_back(IMG_Load("Cartes/JeanP.png"));
imageCache.push_back(IMG_Load("Cartes/NoelleP.png"));
imageCache.push_back(IMG_Load("Cartes/ZhongliP.png"));
imageCache.push_back(IMG_Load("Cartes/SucroseP.png"));
imageCache.push_back(IMG_Load("Cartes/BarbaraP.png"));
imageCache.push_back(IMG_Load("Cartes/abondanceP.png"));
imageCache.push_back(IMG_Load("Cartes/benedictionP.png"));
imageCache.push_back(IMG_Load("Cartes/flechesP.png"));
imageCache.push_back(IMG_Load("Cartes/maledictionP.png"));
imageCache.push_back(IMG_Load("Cartes/poisonP.png"));
imageCache.push_back(IMG_Load("Cartes/potionP.png"));
imageCache.push_back(IMG_Load("Cartes/VentiG.png"));
imageCache.push_back(IMG_Load("Cartes/TartagliaG.png"));
imageCache.push_back(IMG_Load("Cartes/NingguangG.png"));
imageCache.push_back(IMG_Load("Cartes/KleeG.png"));
imageCache.push_back(IMG_Load("Cartes/BennetG.png"));
imageCache.push_back(IMG_Load("Cartes/Klee2G.png"));
imageCache.push_back(IMG_Load("Cartes/MonaG.png"));
imageCache.push_back(IMG_Load("Cartes/JeanG.png"));
imageCache.push_back(IMG_Load("Cartes/NoelleG.png"));
imageCache.push_back(IMG_Load("Cartes/ZhongliG.png"));
imageCache.push_back(IMG_Load("Cartes/SucroseG.png"));
imageCache.push_back(IMG_Load("Cartes/BarbaraG.png"));
imageCache.push_back(IMG_Load("Cartes/abondanceG.png"));
imageCache.push_back(IMG_Load("Cartes/benedictionG.png"));
imageCache.push_back(IMG_Load("Cartes/flechesG.png"));
imageCache.push_back(IMG_Load("Cartes/maledictionG.png"));
imageCache.push_back(IMG_Load("Cartes/poisonG.png"));
imageCache.push_back(IMG_Load("Cartes/potionG.png"));
}
//Permet de choisir les coordonee des cartes dans le gestionnaire de deck
void actualiserCarteDeck(std::vector<Cartes*> &cartesPioche)
{
int y = 200, x = 0;
for(size_t i = 0; i < cartesPioche.size(); i++)
{
cartesPioche[i]->setPosition(250 + x*200, y);
if(x==6)
{
x = 0;
y+=250;
}
else{x++;}
}
}