Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
L
lemeilleurjeudumonde
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
tacticalrpg
lemeilleurjeudumonde
Commits
343ab01f
There was a problem fetching the pipeline summary.
Commit
343ab01f
authored
8 years ago
by
Montjoie Henri
Browse files
Options
Downloads
Patches
Plain Diff
commentaires doxygen du controleur SDL
parent
7c4fe9d9
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Pipeline
#
Changes
3
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
src/SDL.c
+6
-0
6 additions, 0 deletions
src/SDL.c
src/competence.h
+2
-2
2 additions, 2 deletions
src/competence.h
src/controleurSDL.c
+84
-13
84 additions, 13 deletions
src/controleurSDL.c
with
92 additions
and
15 deletions
src/SDL.c
+
6
−
0
View file @
343ab01f
...
...
@@ -15,6 +15,12 @@
* \brief Fichier contenant le code des fonctions liees l'affichage par la SDL.
*/
/*!
* \fn int main_SDL(char* Map)
* \brief fonction qui gre l'affichage
*
* \param la carte au format texte (une lettre = une case)
*/
int
main_SDL
(
char
*
Map
)
{
...
...
This diff is collapsed.
Click to expand it.
src/competence.h
+
2
−
2
View file @
343ab01f
...
...
@@ -3,8 +3,8 @@
* \brief Fichier contenant les signatures des fonctions liees a la structure competence.
*/
#ifndef
DEPLACEMENTS
_H_INCLUDED
#define
DEPLACEMENTS
_H_INCLUDED
#ifndef
COMPETENCE
_H_INCLUDED
#define
COMPETENCE
_H_INCLUDED
/* Fonctions */
...
...
This diff is collapsed.
Click to expand it.
src/controleurSDL.c
+
84
−
13
View file @
343ab01f
...
...
@@ -20,7 +20,12 @@ Carte Carte_actuelle;
Personnage
ListePersos
[
NB_PERSO
];
int
perso_actuel
=
0
;
/*!
* \fn void init_controleur(SDL_Rect Position_Case[])
* \brief fonction du controleur appellée par l'affichage et qui initialise le moteur du jeu (création de la carte et des personnages)
*
* \param les coordonnées de toutes les cases
*/
void
init_controleur
(
SDL_Rect
Position_Case
[])
{
int
i
;
...
...
@@ -32,11 +37,24 @@ void init_controleur(SDL_Rect Position_Case[])
init_personnage
(
&
ListePersos
[
i
],
NULL
,
&
Carte_actuelle
[
i
]);
}
/*!
* \fn int x_case_cliquee(int x_pixel, int y_pixel)
* \brief La fonction retourne la colonne d'une case à partir de sa position en pixels
*
* \param les coordonnées x et y de la case en pixels
* \return la colonne de la case
*/
int
x_case_cliquee
(
int
x_pixel
,
int
y_pixel
)
{
return
x_pixel
/
LARGEUR_CASE
;
}
/*!
* \fn int y_case_cliquee(int x_pixel, int y_pixel)
* \brief La fonction retourne la ligne d'une case à partir de sa position en pixels
*
* \param les coordonnées x et y de la case en pixels
* \return la ligne de la case
*/
int
y_case_cliquee
(
int
x_pixel
,
int
y_pixel
)
{
int
i
,
x_case
,
y_case
;
...
...
@@ -51,7 +69,13 @@ int y_case_cliquee(int x_pixel, int y_pixel)
}
return
y_case
;
}
/*!
* \fn Case * trouverCase(Carte c, int x, int y)
* \brief La fonction retourne un pointeur vers la case de coordonnées x,y
*
* \param les coordonnées x et y d'une case (pas en pixels mais bien en colonne et ligne), ainsi que la carte utilisée
* \return un pointeur vers cette case
*/
Case
*
trouverCase
(
Carte
c
,
int
x
,
int
y
)
{
if
((
x
<
0
)
||
(
x
>=
LARGEUR_CARTE
)){
...
...
@@ -64,18 +88,29 @@ Case * trouverCase(Carte c, int x, int y)
return
&
c
[(
y
*
LARGEUR_CARTE
)
+
x
];
}
}
persosuivant
(){
/*!
* \fn void persosuivant()
* \brief La fonction permet de selectionner le personnage suivant
*/
void
persosuivant
(){
if
(
perso_actuel
<
NB_PERSO
-
1
)
perso_actuel
++
;
else
perso_actuel
=
0
;
}
/*!
* \fn int persoactuel()
* \brief La fonction retourne le numéro du personnage actuellement controlé
*/
int
persoactuel
(){
return
perso_actuel
;
}
/*!
* \fn void deplacement_personnage(int x, int y))
* \brief Cette fonction du controleur appelle la fonction du moteur permettant de déplacer le personnage selectionné
*
* \param les coordonnées (en pixels) de l'endroit ou l'utilisateur a cliqué
*/
void
deplacement_personnage
(
int
x
,
int
y
)
{
if
(
x
<
LARGEUR_CARTE
*
LARGEUR_CASE
&&
y
<
HAUTEUR_CARTE
*
HAUTEUR_CASE
)
...
...
@@ -85,25 +120,49 @@ void deplacement_personnage(int x, int y)
deplacement_unitaire
(
perso
,
case_cliquee
,
HAUTEUR_CASE
,
LARGEUR_CASE
);
}
}
/*!
* \fn Case* get_case_perso(int num)
* \brief donne la case sur laquelle est située un personnage
*
* \param le numéro d'un personnage
* \return un pointeur vers la case du personnage
*/
Case
*
get_case_perso
(
int
num
)
{
Personnage
*
perso
=
&
ListePersos
[
num
];
return
getPosition
(
perso
);
}
/*!
* \fn int get_position_perso_x(int num)
* \brief donne la coordonnée x en pixels d'un personnage
*
* \param le numéro d'un personnage
* \return la coordonnée x en pixels du personnage
*/
int
get_position_perso_x
(
int
num
)
{
Case
*
case_perso
=
get_case_perso
(
num
);
return
get_x
(
case_perso
);
}
/*!
* \fn int get_position_perso_y(int num)
* \brief donne la coordonnée y en pixels d'un personnage
*
* \param le numéro d'un personnage
* \return la coordonnée y en pixels du personnage
*/
int
get_position_perso_y
(
int
num
)
{
Case
*
case_perso
=
get_case_perso
(
num
);
return
get_y
(
case_perso
);
}
/*!
* \fn Case* deplacement_brillance(int x,int y)
* \brief La fonction retourne un pointeur vers la case de coordonnées x,y
*
* \param les coordonnées x et y d'une case (pas en pixels mais bien en colonne et ligne), ainsi que la carte utilisée
* \return un pointeur vers cette case
*/
Case
*
deplacement_brillance
(
int
x
,
int
y
)
{
if
(
x
<
LARGEUR_CARTE
*
LARGEUR_CASE
&&
y
<
HAUTEUR_CARTE
*
HAUTEUR_CASE
)
...
...
@@ -113,11 +172,23 @@ Case* deplacement_brillance(int x,int y)
return
NULL
;
}
/*!
* \fn int get_position_case_y(Case * Case)
* \brief retourne la coordonnée y d'une case
*
* \param un pointeur vers une case
* \return la coordonnée y de la case
*/
int
get_position_case_y
(
Case
*
Case
){
return
get_y
(
Case
);
}
/*!
* \fn int get_position_case_x(Case * Case)
* \brief retourne la coordonnée x d'une case
*
* \param un pointeur vers une case
* \return la coordonnée x de la case
*/
int
get_position_case_x
(
Case
*
Case
)
{
return
get_x
(
Case
);
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment