2fd95d7e
Martin CHAUVELIERE
1ere Version bis
|
1
2
3
4
5
6
|
#include <stdio.h>
#include <stdlib.h>
#include "../Graphique/libgraph.h"
#include "../ListeC/Liste.h"
#include "Monstre.h"
|
590ac30b
Martin CHAUVELIERE
Debut Collision
|
7
8
|
#define TailleX 500
#define TailleY 500
|
3ab4f73a
Martin CHAUVELIERE
Amelioration Coll...
|
9
|
#define ErreurHitbox 2
|
590ac30b
Martin CHAUVELIERE
Debut Collision
|
10
|
|
3ab4f73a
Martin CHAUVELIERE
Amelioration Coll...
|
11
|
//Sens = 1 -> Va vers la droite
|
0cc8564c
Martin CHAUVELIERE
Fin des colisions...
|
12
|
void DeplacementSbire(struct liste_entite *l, int *psens, int speed)
|
2fd95d7e
Martin CHAUVELIERE
1ere Version bis
|
13
14
15
16
17
18
19
20
|
{
int ind=0;
struct liste_entite *ml=l;
while(ml != NULL)
{
if (*psens==1)
{
ml->enti.posx+=speed;
|
590ac30b
Martin CHAUVELIERE
Debut Collision
|
21
|
if(ml->enti.posx>=9*TailleX/10)ind=1;
|
2fd95d7e
Martin CHAUVELIERE
1ere Version bis
|
22
23
24
25
|
}
else
{
ml->enti.posx-=speed;
|
590ac30b
Martin CHAUVELIERE
Debut Collision
|
26
|
if(ml->enti.posx<=TailleX/10)ind=2;
|
2fd95d7e
Martin CHAUVELIERE
1ere Version bis
|
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
|
}
ml=ml->suivant;
}
if (ind==1)
{
*psens=0;
struct liste_entite *ml2=l;
while(ml2 != NULL)
{
ml2->enti.posy+=30;
ml2=ml2->suivant;
}
}
else if (ind==2)
{
*psens=1;
struct liste_entite *ml2=l;
while(ml2 != NULL)
{
ml2->enti.posy+=30;
ml2=ml2->suivant;
}
}
}
|
590ac30b
Martin CHAUVELIERE
Debut Collision
|
52
|
|
0cc8564c
Martin CHAUVELIERE
Fin des colisions...
|
53
|
|
0cc8564c
Martin CHAUVELIERE
Fin des colisions...
|
54
|
void LigneSbire(struct liste_entite **enemies,int nbr_enemies, int nbr_rangee)
|
590ac30b
Martin CHAUVELIERE
Debut Collision
|
55
|
{
|
3ab4f73a
Martin CHAUVELIERE
Amelioration Coll...
|
56
|
for (int j=1; j<= nbr_rangee; j++)
|
590ac30b
Martin CHAUVELIERE
Debut Collision
|
57
|
{
|
0cc8564c
Martin CHAUVELIERE
Fin des colisions...
|
58
59
|
int compteurY=j*TailleY/10;
int compteurX=TailleX/nbr_enemies;
|
3ab4f73a
Martin CHAUVELIERE
Amelioration Coll...
|
60
|
|
0cc8564c
Martin CHAUVELIERE
Fin des colisions...
|
61
62
|
for (int i=0; i<nbr_enemies; i++)
{
|
3ab4f73a
Martin CHAUVELIERE
Amelioration Coll...
|
63
64
65
66
67
68
69
70
71
72
|
if (j == nbr_rangee)
{
ajout_tete(enemies,creer_entite(compteurX,compteurY,1));
compteurX +=2*TailleX/(3*nbr_enemies);
}
else
{
ajout_tete(enemies,creer_entite(compteurX,compteurY,0));
compteurX +=2*TailleX/(3*nbr_enemies);
}
|
0cc8564c
Martin CHAUVELIERE
Fin des colisions...
|
73
|
}
|
590ac30b
Martin CHAUVELIERE
Debut Collision
|
74
75
|
}
}
|
3ab4f73a
Martin CHAUVELIERE
Amelioration Coll...
|
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
|
void AfficherSbire(int lutin, int L, int H, struct liste_entite *l)
{
struct liste_entite *ml=l;
while(ml != NULL)
{
afficherLutin(lutin,ml->enti.posx - L/2 + ErreurHitbox,ml->enti.posy - H/2 + ErreurHitbox);
ml=ml->suivant;
}
}
|