From d73aaf1acf9ee0a42eec60391b3e5cdd6e69e852 Mon Sep 17 00:00:00 2001 From: Romain Jegat <romain.jegat@insa-rennes.fr> Date: Thu, 12 May 2016 11:49:37 +0200 Subject: [PATCH] avancement sur les fonctions d'attaques --- src/attaques.c | 29 +++++++++++++++++++++++++++-- src/structures.h | 4 +++- 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/src/attaques.c b/src/attaques.c index 70961a9..825f084 100644 --- a/src/attaques.c +++ b/src/attaques.c @@ -32,7 +32,13 @@ int attaquer(Personnage *attaquant, Attaque *attaque_select, Personnage *cible) */ int ajouter_effet_perso(Effet *effet_select, Personnage *cible) { - + int numero_effet = 0; + while((cible->effets[numero_effet].utilise)!=0) + { + numero_effet ++ ; + } + effet_select->utilise = 1; + cible->effets[numero_effet] = *effet_select; return 0; } @@ -47,8 +53,27 @@ int ajouter_effet_perso(Effet *effet_select, Personnage *cible) */ int appliquer_effet(Effet *effet_select, Personnage *cible) { - (cible->PV) -= (effet_select->valeur_degats); + if((effet_select->nb_tours) != 0) + { + (cible->PV) -= (effet_select->valeur_degats_duree); + (cible->PV) += (effet_select->valeur_soin_duree); + (cible->gele) = (effet_select->paralysie); + } + + /* A terminer */ + return 0; +} + +int declencher_effets_tour(Personnage *liste_perso) +{ + int num_perso = 0; + + + /* */ + + + return 0; } diff --git a/src/structures.h b/src/structures.h index e5154c0..aaba86c 100644 --- a/src/structures.h +++ b/src/structures.h @@ -142,6 +142,7 @@ typedef Case Carte[TAILLE_MAX_CARTE]; typedef struct Effet{ char id[TAILLE_ID]; /*!< ID de l'effet de taille TAILLE_ID*/ char nom[TAILLE_NOMS]; /*!< Nom de l'effet de taille TAILLE_NOMS*/ + unsigned int utilise; unsigned int nb_tours;/*!< Le nombre de tours restant avant que l'effet ne s'estompe*/ unsigned int valeur_degats; /*!< Le nombre de degats subis */ unsigned int valeur_soin; /*!< Le nombre PV regeneres */ @@ -186,7 +187,8 @@ typedef struct Personnage{ unsigned short int PV; /*!< Les PV actuels du personnage*/ unsigned short int mana; /*!< Le mana actuel du personnage*/ Case *position; /*!< La case representant la position actuelle du personnage*/ - Effet effets[]; /*!< Un tableau d'effets representant les effets affectant le personnage*/ + Effet effets[10]; /*!< Un tableau d'effets representant les effets affectant le personnage*/ + int gele; } Personnage; /*! \struct Competence structures.h -- GitLab