123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- #ifndef ARME_H_INCLUDED
- #define ARME_H_INCLUDED
- //Notes temporaires: La gérance du clic d'icone se fera par le joueur.
- /*La classe arme permet de gerer tous
- les attributs de l'arme, y compris le viseur associé.*/
- #include <iostream>
- #include <SDL/SDL.h>
- #include "menuFire.h"
- class Arme
- {
- public:
- Arme(SDL_Surface* ecran,unsigned int IDarme,int xCalibreExpl, int yCalibreExpl, int recul);
- ~Arme();
- void afficher(bool tir, SDL_Rect* positionViseur);
- void tir();
- unsigned int getTypeWeapon();
- //void recharger();
- protected:
- SDL_Surface* m_ecran;//Pour blits
- const int m_IDarme;//Permet d'ajuster la position de l'icone, et determinant facilement l'arme. Note:0=Baroudeur, 1=Usiane, 2=TriPhaseur
- SDL_Surface* m_arme;//Image de l'arme
- SDL_Surface* m_viseur;//Image du viseur
- SDL_Surface* m_tir;//Image de l'explosion lors du tir
- SDL_Surface* m_impact;//Image de l'impact
- const int m_recul;
- const int m_xCalibreExpl;
- const int m_yCalibreExpl;
- int m_munitionsRestantes;
- //int m_tempsRecharge const;//Afaire
- //int m_ResteTempsRecharge;//Afaire
- };
- /*Description:
- Permet de creer l'interface du joueur.
- */
- class Joueur
- {
- public:
- Joueur(SDL_Surface* ecran);
- ~Joueur();
- void afficher();
- void setArme(std::string choixArme);
- void giveMousePosition(int x,int y);
- void tir();
- void recevoirDegats(int degats);
- bool estVivant();
- unsigned int getTypeWeapon();
- protected:
- //Ecran en attribut pour les blits
- SDL_Surface* m_ecran;
- //Nombre de boucles depuis le début du programme
- int m_armeCycle;
- int m_variableVie;
- SDL_Rect m_positionViseur;
- SDL_Rect m_positionInterVie;
- SDL_Surface* m_interVie;
- SDL_Surface* m_jaugeVie[60];
- bool m_tirInstant;
- Arme* m_armeSelect;
- Arme* m_armeOne;
- Arme* m_armeTwo;
- Arme* m_armeThree;
- };
- #endif // ARME_H_INCLUDED
|