~ubuntu-branches/ubuntu/saucy/dossizola/saucy

« back to all changes in this revision

Viewing changes to .pc/debian-changes-1.0-8.3/dossizola/isola.h

  • Committer: Bazaar Package Importer
  • Author(s): Jari Aalto
  • Date: 2010-11-05 16:16:25 UTC
  • Revision ID: james.westby@ubuntu.com-20101105161625-sih2fme049kwo4th
Tags: 1.0-8.3
* Non-maintainer upload.
  - Move to packaging format "3.0 (quilt)" due to desktop image files.
  - NMU approved by maintainer, see #549545.
* debian/compat
  - Update obsolete 5 to 8.
* debian/control
  - (Build-Depends): Add autotools-dev due to config.{sub,guess}.
    Update to debhelper 8.
  - (Depends) update tag "Source-Version" to "source:Version"
    to correct binNMU. Patch tanks to Lior Kaplan <kaplan@debian.org>
    (normal; Closes: #435939).
  - (Homepage): New field.
  - (Standards-Version): Update to 3.9.1.
  - Package dossizola
    + (Depends): Add ${misc:Depends} (Lintian).
  - Package dossizola-data
    + (Depends): New. Add ${misc:Depends} (Lintian).
    + (Description): Extend (Lintian).
* debian/copyright
  - Point to GPL-2, save as UTF-8, add copyright years (Lintian).
  - Add FSF preamble (Lintian).
  - Point URL to canonical Sourceforge project.
* debian/dossizola.{desktop,png,xcf}
  - New. Supplied by Stéphane Blondon <stephane.blondon@gmail.com>.
    (minor; Closes: #573870).
* debian/dossizola.sgml
  - (refnamediv): Fix bad whatis entry. Must be same as <refmeta> (Lintian).
* debian/rules
  - (PACKAGE, PKGDIR, SHAREROOTDIR, ICONDIR, DESKTOPDIR): New variables.
  - (binary-indep): Comment out dh_installchangelogs because upsream
    ChangeLog is empty (Lintian).
  - (clean): Cann makefile only if it exists. Delete Makefile.
  - (configure-stamp): use latest config.{sub,guess}
    (wishlist, FTBFS avr32; Closes: #549545).
  - (install): Change obsolete "dh_clean -k" to "dh_prep" (Lintian).
    Add install commands for *.desktop file and icons.
* debian/preinst
  - Add "set -e" (Lintian).
* debian/source/{format,include-binaries}
  - New files.
* debian/watch
  - New file (Lintian).

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
// Tailles de la grille
 
3
#define XCASEMIN 4
 
4
#define YCASEMIN 4
 
5
#define XCASEMAX 9
 
6
#define YCASEMAX 7
 
7
#define MAXCASES 10
 
8
 
 
9
// Vitesse des animation
 
10
#define TREMBLE_NB 10                   // Nombre d'it�rations du tremblement de la grille
 
11
#define TREMBLE_DECAL 6                 // D�callage maximum du tremblement de la grille
 
12
#define TREMBLE_VITESSE 2               // Vitesse du tremblement
 
13
#define BOULE_VITESSE 1                 // Vitesse de l'animation de la boule
 
14
#define CARACT_VITESSE 5                // Vitesse d'apparition des caract�re
 
15
#define TXT_DECALX -150                 // Position des textes du menu sur l'axe des X
 
16
#define TXT_DECALY -140                 // Position des textes du menu sur l'axe des Y
 
17
 
 
18
// Valeurs de jeu par d�faut
 
19
#define DFT_J1ROUGE NON
 
20
#define DFT_J1TYPE HUMAIN
 
21
#define DFT_J2TYPE HUMAIN
 
22
#define DFT_J1NIVO 2
 
23
#define DFT_J2NIVO 2
 
24
#define DFT_INTEMP NON
 
25
#define DFT_DOUBLE_DEPLACE NON
 
26
#define DFT_DOUBLE_BOULEFEU NON
 
27
#define DFT_XGRILLE 6
 
28
#define DFT_YGRILLE 6
 
29
#define DFT_FPS 64
 
30
 
 
31
// Textes
 
32
#define TXT_OUI                 "YES"
 
33
#define TXT_NON                 "NO"
 
34
#define TXT_SIMPLE              "SIMPLE"
 
35
#define TXT_DOUBLE              "DOUBLE"
 
36
#define TXT_INDISPONIBLE "NOT YET AVAILABLE"
 
37
#define TXT_PATIENTEZ   "PLEASE WAIT"
 
38
#define TXT_J1NOM               "PLAYER 1"
 
39
#define TXT_J2NOM               "PLAYER 2"
 
40
#define TXT_HUMAIN              "HUMAN"
 
41
#define TXT_ORDI                "COMPUTER"
 
42
#define TXT_JOUER               "START"
 
43
#define TXT_AIDE                "HELP"
 
44
#define TXT_QUITTER             "EXIT"
 
45
#define TXT_REFAIRE             "RESTART"
 
46
#define TXT_MENU                "MENU"
 
47
#define TXT_CONSEIL             "ADVICE"
 
48
#define TXT_QSTQUITTER  " EXIT NOW :"
 
49
#define TXT_QSTMENU             " BACK TO MENU :"
 
50
#define TXT_QSTREFAIRE  " RESTART GAME :"
 
51
#define TXT_RETOURMENU  "CLIC TO GO BACK TO MENU"
 
52
#define TXT_AIDE1               "GOAL OF THE GAME"
 
53
#define TXT_AIDE2               "YOU MUST BLOCK THE OPPONENT"
 
54
#define TXT_AIDE3               "BY DESTROYING ALL THE PADS"
 
55
#define TXT_AIDE4               "WHICH SURROUND HIM BEFORE"
 
56
#define TXT_AIDE5               "BEING BLOCKED YOURSELF"
 
57
#define TXT_AIDE6               "HOW TO PLAY"
 
58
#define TXT_AIDE7               "FOR EACH TURN OF PLAY YOU"
 
59
#define TXT_AIDE8               "MUST MOVE OF ONE PAD"
 
60
#define TXT_AIDE9               "ARROUND YOU AND DESTROY"
 
61
#define TXT_AIDE10              "A PAD WHERE YOU WANT"
 
62
#define TXT_AIDE11              "GAME OPTIONS:"
 
63
#define TXT_AIDE12              "CLIC ON THE GREEN WORDS"
 
64
#define TXT_AIDE13              "PLAYERS CAN BE HUMAN OR COM"
 
65
#define TXT_AIDE14              "PUTER WITH 3 LEVELS OF AI"
 
66
#define TXT_AIDE15              "METEORITS: A PAD IS"
 
67
#define TXT_AIDE16              "DESTROYED EACH TURN OF PLAY"
 
68
#define TXT_INTEMP              "METEORITS:"
 
69
#define TXT_DEPLACE             "MOVE:"
 
70
#define TXT_BOULEFEU    "FIREBALL:"
 
71
#define TXT_VITESSEJEU  "GAME SPEED:"
 
72
#define TXT_TAILLEGRILLE "GRID SIZE:  X"
 
73
#define TXT_J1GAGNE             "PLAYER 1 WINS"
 
74
#define TXT_J2GAGNE             "PLAYER 2 WINS"
 
75
#define TXT_J1PLACE             "PLAYER 1: CHOOSE A PAD"
 
76
#define TXT_J2PLACE             "PLAYER 2: CHOOSE A PAD"
 
77
#define TXT_J1DEPLACE   "PLAYER 1: MOVE"
 
78
#define TXT_J2DEPLACE   "PLAYER 2: MOVE"
 
79
#define TXT_J1TROU              "PLAYER 1: FIRE"
 
80
#define TXT_J2TROU              "PLAYER 2: FIRE"
 
81
 
 
82
// Fichiers des images
 
83
#define IMG_MENU                "menu.jpg"
 
84
#define IMG_FOND1               "fond1.jpg"
 
85
#define IMG_FOND2               "fond2.jpg"
 
86
#define IMG_FOND3               "fond3.jpg"
 
87
#define IMG_FOND4               "fond4.jpg"
 
88
#define IMG_FOND5               "fond5.jpg"
 
89
#define IMG_NIVO                "dossi-nivo.png"
 
90
#define IMG_POLICE1             "police-jaune.png"
 
91
#define IMG_POLICE2             "police-verte.png"
 
92
#define IMG_POLICE3             "police-rouge.png"
 
93
#define IMG_CASE                "case.png"
 
94
#define IMG_FEU                 "feu.png"
 
95
#define IMG_J1COURS             "dossi-cours.png"
 
96
#define IMG_J2COURS             "dossa-cours.png"
 
97
#define IMG_J1LANCE             "dossi-lance.png"
 
98
#define IMG_J2LANCE             "dossa-lance.png"
 
99
#define IMG_J1GAGNE             "dossi-victoire.png"
 
100
#define IMG_J2GAGNE             "dossa-victoire.png"
 
101
#define IMG_J1PERDU             "dossi-ange.png"
 
102
#define IMG_J2PERDU             "dossa-ange.png"
 
103
#define IMG_J1ATTEND    "dossi-attend.png"
 
104
#define IMG_J2ATTEND    "dossa-attend.png"
 
105
#define IMG_J1ATTENDFEU "dossi-attend-feu.png"
 
106
#define IMG_J2ATTENDFEU "dossa-attend-feu.png"
 
107
 
 
108
// Vitesse d'affichage des animations en frames par seconde
 
109
int FPS;
 
110
 
 
111
// Location des images
 
112
char imgpath [128];
 
113
char fichier [160];
 
114
 
 
115
// Types pour d�signer le contenu des cases, l'action en cours, ...
 
116
typedef enum {NON, OUI} BOOL;
 
117
typedef enum {VIDE, J1, J2, TROU} CASE;
 
118
typedef enum {J1_DEPLACE, J1_TROU, J2_DEPLACE, J2_TROU} ACTION;
 
119
typedef enum {HUMAIN, ORDI} TYPEJOUEUR;
 
120
typedef enum {COURSB, COURSH, COURSG, COURSD, LANCE, GAGNE, PERDU, ATTEND, ATTENDFEU} ANIM;
 
121
typedef enum {RIEN, QUITTER, MENU, REFAIRE, CONSEIL} CHXMENU;
 
122
 
 
123
// Structure contenant une police de caractere
 
124
typedef struct {
 
125
        SDL_Rect rect;                          // Rectangle de la taille d'un caract�re
 
126
        SDL_Surface *img;                       // Image contenant les caract�res
 
127
} POLICE;
 
128
 
 
129
// Structure permettant de m�moriser les cases offrant le plus de d�placements
 
130
typedef struct {
 
131
  int x, y;                                             // Coordonn�es de la case
 
132
  int nb;                                               // Valeur de la case
 
133
} MAX;
 
134
 
 
135
// Structure contenant les infos d'un joueur
 
136
typedef struct {
 
137
        CASE n;                                         // Num�ro du joueur
 
138
        TYPEJOUEUR type;                        // Humain ou Ordi
 
139
        int nivo;                                       // Niveau du joueur
 
140
        int x, y;                                       // Position sur la grille
 
141
        SDL_Rect rect, src;                     // Rectangle de position sur l'�cran et dans l'image d'animation
 
142
        SDL_Surface *imgCours;          // Images des d�placements
 
143
        SDL_Surface *imgLance;          // Images du lancement de la boule de feu
 
144
        SDL_Surface *imgGagne;          // Images de la victoire
 
145
        SDL_Surface *imgPerdu;          // Images de la d�faite
 
146
        SDL_Surface *imgAttend;         // Images de l'attente du d�placement
 
147
        SDL_Surface *imgAttendFeu;      // Images de l'attente du lancement de la boule de feu
 
148
        SDL_Surface *imgFeu;            // Images de la boule de feu
 
149
        // Nombre d'images pour les animations
 
150
        int nCours, nLance, nGagne, nPerdu, nAttend, nAttendFeu, nFeu;
 
151
        ANIM anim;                                      // Animation en cours
 
152
        int frame;                                      // Image en cours dans l'animation
 
153
} JOUEUR;
 
154
 
 
155
// Structure contenant les infos sur la grille du jeu
 
156
typedef struct {
 
157
        int xc, yc;                                     // Nombre de cases en longueur et en hauteur
 
158
        int x1, y1;                                     // Position du coin haut gauche de la grille
 
159
        int x2, y2;                                     // Position du coin bas  droite de la grille
 
160
        int tc;                                         // Taille des cases
 
161
        int c[XCASEMAX][YCASEMAX];      // Grille indiquant le contenu des cases
 
162
        SDL_Surface *imgCase;           // Image d'une case
 
163
        SDL_Surface *imgFond;           // Image de l'arri�re plan
 
164
} GRILLE;
 
165
 
 
166
// Structure contenant les infos g�n�rales sur le jeu
 
167
typedef struct {
 
168
        SDL_Surface *ecran;                     // Surface graphique principale (fenetre du prog)
 
169
        SDL_Surface *back;                      // Surface graphique tampon (back buffer)
 
170
        SDL_Rect titre;                         // Rectangle o� se situe le texte indiquant l'action en cours
 
171
        SDL_Rect rMenu[4];                      // Rects des boutons du menu pendant le jeu
 
172
        POLICE police1, police2, police3;       // Polices pour l'affichage de caract�res
 
173
        BOOL J1ROUGE;                           // Le joueur 1 est vert ou rouge ?
 
174
        BOOL INTEMP;                            // Pluie de boule de feu ?
 
175
        BOOL DOUBLE_DEPLACE;            // Deplacement simple ou double ?
 
176
        BOOL DOUBLE_BOULEFEU;           // Place un ou deux trous ?
 
177
        TYPEJOUEUR J1TYPE;                      // Humain ou Ordi ?
 
178
        TYPEJOUEUR J2TYPE;                      // Humain ou Ordi ?
 
179
        int J1NIVO;                                     // Niveau de l'IA
 
180
        int J2NIVO;                                     // Niveau de l'IA
 
181
        int XGRILLE, YGRILLE;           // Taille de la grille
 
182
} JEU;
 
183
 
 
184
// Renvoie au hasard un nombre compris entre les valeurs pass�es en arguments (la 2e non incluse)
 
185
int Alea (short, short);
 
186
 
 
187
// Affiche l'erreur obtenue pendant le chargement d'une image
 
188
void ImageErreur (char *);
 
189
 
 
190
// Convertit les coordonn�es du clic de souris en position dans la grille
 
191
int Case2CoordX (int, GRILLE);
 
192
int Case2CoordY (int, GRILLE);
 
193
 
 
194
// Convertit la position dans la grille en coordonn�es sur l'�cran
 
195
int Clic2CaseX (int, GRILLE);
 
196
int Clic2CaseY (int, GRILLE);
 
197
 
 
198
// Synchronise le temps sur la vitesse d'affichage (FPS)
 
199
void Attend_FPS (void);
 
200
 
 
201
// Fait trembler l'�cran
 
202
void Secouer_Ecran (JOUEUR[], GRILLE, SDL_Surface *);
 
203
 
 
204
// Affiche le joueur avec l'image de l'animation en cours
 
205
void Afficher_Joueur (JOUEUR *, SDL_Surface *);
 
206
 
 
207
// Renvoie OUI si le trou a put �tre plac� (et place le trou)
 
208
BOOL Placer_Trou (int , int , JOUEUR[], int, GRILLE *, JEU *, BOOL, CHXMENU *);
 
209
 
 
210
// Renvoie OUI si le joueur a put �tre d�plac� (et d�place le joueur)
 
211
BOOL Deplacer_Joueur (int, int, JOUEUR[], int, GRILLE *, JEU *, BOOL, CHXMENU *);
 
212
 
 
213
// Place le joueur � la position choisie et renvoie OUI si la position est disponible
 
214
BOOL Placer_Joueur (int, int, JOUEUR[], int, GRILLE *, JEU *, BOOL, CHXMENU *);
 
215
 
 
216
// Permet aux joueurs de choisir leur position de d�part
 
217
void Placer_Joueurs (JEU *, JOUEUR[], GRILLE *, CHXMENU *);
 
218
 
 
219
// Cr�e la grille, met les images en m�moire, ...
 
220
void Constructeur (JOUEUR[], GRILLE *, BOOL, SDL_Surface *, SDL_Surface *);
 
221
 
 
222
// Lib�re la m�moire occup�e par les images
 
223
void Destructeur (JOUEUR[], GRILLE *);
 
224
 
 
225
// Pr�vois les possibilit�s de d�placements pour chaques cases
 
226
void Calcul_Choix (GRILLE , int[][], int , int *);
 
227
 
 
228
// Cr�e une grille � partir du jeu pour calculer les d�placements possibles
 
229
void Meilleur_Choix (GRILLE , int[][], int, JOUEUR[], int, MAX[], MAX []);
 
230
 
 
231
// Place sur l'une des meilleurs cases
 
232
void Ordi_Place (int *, int *, JOUEUR, GRILLE);
 
233
 
 
234
// D�place sur l'une des meilleures cases
 
235
void Ordi_Deplace (int *, int *, JOUEUR [], int, GRILLE);
 
236
 
 
237
// D�truit l'une des meilleures cases de l'adversaire
 
238
void Ordi_Trou (int *, int *, JOUEUR [], int, GRILLE);
 
239
 
 
240
// Boucle de jeu principale qui g�re l'affichage et les �v�nements (souris, ...)
 
241
BOOL Jeu (JEU *);
 
242
 
 
243
// Affiche un caract�re � l'�cran
 
244
void Afficher_Caractere (int, int, char, POLICE, SDL_Surface *);
 
245
 
 
246
// Affiche une chaine de caract�re en faisant apparaitre les caract�res en
 
247
// glissan de l'un des bord de l'�cran
 
248
BOOL Afficher_Chaine (int, int, int, char[], POLICE, SDL_Surface *, SDL_Surface *);
 
249
 
 
250
// Affiche les images des personnages repr�sentant les niveaux d'intelligence
 
251
void Afficher_IA (int, SDL_Rect[], SDL_Rect[], SDL_Surface *, SDL_Surface *, SDL_Surface *, SDL_Surface *);
 
252
 
 
253
// Menu de choix des options
 
254
BOOL Menu (JEU *);
 
255
 
 
256
// Fonction principale qui v�rifie les param�tres pass�s � l'appel du programme,
 
257
// initialise la biblioth�que graphique SDL, cr�e l'affichage, ...
 
258
int main (int, char *[]);