Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 209 lines (197 sloc) 7.214 kB
dd1a07e divers effets de la mise à sac de la capitale
bastien authored
1 <?php // -*- mode: php; tab-width:2 -*-
3fdce51 mise en place de l'include root
bastien authored
2 if (file_exists('root.php'))
3 include_once('root.php');
4
1d2f691 déplacement des fichiers dans trunk
bastien authored
5
6 //Inclusion du haut du document html
3fdce51 mise en place de l'include root
bastien authored
7 include_once(root.'inc/fp.php');
1d2f691 déplacement des fichiers dans trunk
bastien authored
8
1e3a793 + Ajout dans la bdd des batiments de défense de la ville.* Lors de la…
dalai authored
9 $joueur = new perso($_SESSION['ID']);
dc1b176 Passage en objet
cinquante authored
10 $joueur->check_perso();
1d2f691 déplacement des fichiers dans trunk
bastien authored
11
12 //Vérifie si le perso est mort
13 verif_mort($joueur, 1);
14
237d8c3 x/y j'ai pas fait les attaques, et j'ai pas fini les journaux qui son…
Cinquante authored
15 $W_requete = 'SELECT royaume, type FROM map WHERE x = '.$joueur->get_x().' and y = '.$joueur->get_y();
1e3a793 + Ajout dans la bdd des batiments de défense de la ville.* Lors de la…
dalai authored
16 $W_req = $db->query($W_requete);
17 $W_row = $db->read_assoc($W_req);
18 $R = new royaume($W_row['royaume']);
19 $R->get_diplo($joueur->get_race());
1d2f691 déplacement des fichiers dans trunk
bastien authored
20
ac8956b divers effets de la mise à sac de la capitale -> juste en ville ^^
bastien authored
21 if ($R->is_raz() && $W_row['type'] == 1)
dd1a07e divers effets de la mise à sac de la capitale
bastien authored
22 {
23 echo "<h5>Impossible de commercer dans une ville mise à sac</h5>";
24 exit (0);
25 }
26
ec5946e - problemes d'acces a la ville suivant la diplo
bastien authored
27 if ($joueur->get_race() != $R->get_race() &&
28 $R->get_diplo($joueur->get_race()) > 6)
29 {
30 echo "<h5>Impossible de commercer avec un tel niveau de diplomatie</h5>";
31 exit (0);
32 }
34e5dfe Maj de l'interface
Cinquante authored
33 echo "<fieldset>";
edb53cb - bug TP bourg, ce coup ci ca doit marcher, et plus etre resrve aux r…
bastien authored
34 $batiment_ok = false;
24bdf03 More achiev
Florp authored
35 $tp = false;
edb53cb - bug TP bourg, ce coup ci ca doit marcher, et plus etre resrve aux r…
bastien authored
36 if ($W_row['type'] != 1)
37 {
38 $W_requete_bat = 'SELECT royaume, type FROM construction WHERE x = '.
39 $joueur->get_x().' and y = '.$joueur->get_y();
40 $W_req_bat = $db->query($W_requete_bat);
41 $W_row_bat = $db->read_assoc($W_req_bat);
f284b56 @GuillaumeGUIMBERTEAU BUG 551: Il manquait un condition dans un test pour ajouter le suppor…
GuillaumeGUIMBERTEAU authored
42 if ($W_row_bat && ($W_row_bat['type'] == 'bourg' || $W_row_bat['type'] == 'fort'))
edb53cb - bug TP bourg, ce coup ci ca doit marcher, et plus etre resrve aux r…
bastien authored
43 $batiment_ok = true;
44 }
45
573036e revert
bastien authored
46 if(array_key_exists('id', $_GET))
47 {
edb53cb - bug TP bourg, ce coup ci ca doit marcher, et plus etre resrve aux r…
bastien authored
48 if($W_row['type'] == 1 || $batiment_ok)
573036e revert
bastien authored
49 {
50 $requete = 'SELECT * FROM teleport WHERE ID = '.sSQL($_GET['id']);
51 $req = $db->query($requete);
52 $row = $db->read_array($req);
53 $P_distance = calcul_distance(convert_in_pos($row['posx'], $row['posy']), $joueur->get_pos());
54 if($row['cout'] > 0)
55 {
56 $cout = $row['cout'];
57 $taxe = 0;
58 }
59 else
60 {
61 $cout = ($P_distance * 10);
62 $taxe = ceil($cout * $R->get_taxe_diplo($joueur->get_race()) / 100);
63 $cout = $cout + $taxe;
64 }
65 if(($joueur->get_star() >= $cout) AND ($joueur->get_pa() >= 5))
66 {
67 $joueur->set_x($row['posx']);
68 $joueur->set_y($row['posy']);
69 $joueur->set_star($joueur->get_star() - $cout);
70 $joueur->set_pa($joueur->get_pa() - 5);
71 $joueur->sauver();
24bdf03 More achiev
Florp authored
72 $tp = true;
573036e revert
bastien authored
73 //Récupération de la taxe
74 if($taxe > 0)
75 {
76 $R->set_star($R->get_star() + $taxe);
77 $R->sauver();
78 $requete = "UPDATE argent_royaume SET teleport = teleport + ".$taxe." WHERE race = '".$R->get_race()."'";
79 $db->query($requete);
80 }
81 header("Location: deplacement.php");
82 }
83 else echo 'Vous n\'avez pas assez de stars ou de PA !<br />';
84 }
85 }
86 if(array_key_exists('id_bourg', $_GET))
87 {
88 $W_distance = detection_distance($W_case, $_SESSION['position']);
89 if($W_distance != 0)
90 {
91 $requete = "SELECT id, x, y FROM construction WHERE id = ".sSQL($_GET['id_bourg']);
92 $req = $db->query($requete);
93 $row = $db->read_array($req);
94 $P_distance = calcul_distance(convert_in_pos($row['x'], $row['y']), $joueur->get_pos());
95 $cout = ($P_distance * 7);
96 $taxe = ceil($cout * $R->get_taxe_diplo($joueur->get_race()) / 100);
97 $cout = $cout + $taxe;
98 if(($joueur->get_star() >= $cout) AND ($joueur->get_pa() >= 5))
99 {
100 $joueur->set_x($row['x']);
101 $joueur->set_y($row['y']);
102 $joueur->set_star($joueur->get_star() - $cout);
103 $joueur->set_pa($joueur->get_pa() - 5);
104 $joueur->sauver();
24bdf03 More achiev
Florp authored
105 $tp = true;
573036e revert
bastien authored
106 //Récupération de la taxe
107 if($taxe > 0)
108 {
109 $R->set_star($R->get_star() + $taxe);
110 $R->sauver();
111 $requete = "UPDATE argent_royaume SET teleport = teleport + ".$taxe." WHERE race = '".$R->get_race()."'";
112 $db->query($requete);
113 }
114 header("Location: deplacement.php");
115 }
116 else echo 'Vous n\'avez pas assez de stars ou de PA !<br />';
117 }
118 }
24bdf03 More achiev
Florp authored
119
120 if($tp)
121 {
122 // Augmentation du compteur de l'achievement
123 $achiev = $joueur->get_compteur('nbr_tp');
124 $achiev->set_compteur($achiev->get_compteur() + 1);
125 $achiev->sauver();
126 }
127
573036e revert
bastien authored
128 $W_coord = convert_in_coord($W_case);
129 ?>
34e5dfe Maj de l'interface
Cinquante authored
130 <legend><?php if(!array_key_exists('fort', $_GET)) return_ville( '<a href="ville.php" onclick="return envoiInfo(this.href, \'centre\')">'.$R->get_nom().'</a> > ', $joueur->get_pos()); ?> <?php echo '<a href="teleport.php" onclick="return envoiInfo(this.href, \'carte\')">';?> Pierre de téléportation </a></legend>
573036e revert
bastien authored
131 <?php include_once(root.'ville_bas.php');?>
1d2f691 déplacement des fichiers dans trunk
bastien authored
132
133 <div class="ville_test">
134 Liste des villes possible pour téléportation :<br />
135 <ul>
573036e revert
bastien authored
136 <?php
137 //Séléction de tous les téléport disponibles
138 $requete = 'SELECT * FROM teleport';
139 $req = $db->query($requete);
140 while($row = $db->read_array($req))
141 {
142 // Bastien : Si coût = 0 (pas NULL), on saute l'entrée
143 if ($row['cout'] === '0') continue;
144 if($row['cout'] > 0)
145 {
146 $cout = $row['cout'];
147 $row_diplo[0] = 127;
148 $row_race['capitale'] = 'Ville Neutre';
149 $row_race['race'] = 'neutre';
150 }
151 else
152 {
153 $coords_roy = convert_in_pos($row['posx'], $row['posy']);
154 //Récupération du royaume du téléport
237d8c3 x/y j'ai pas fait les attaques, et j'ai pas fini les journaux qui son…
Cinquante authored
155 $requete_roy = 'SELECT * FROM map WHERE x = '.$row['posx'].' and y = '.$row['posy'];
573036e revert
bastien authored
156 $req_roy = $db->query($requete_roy);
157 $row_roy = $db->read_array($req_roy);
158 //Récupération de la race du royaume
159 $requete_race = 'SELECT * FROM royaume WHERE ID = '.$row_roy['royaume'];
160 $req_race = $db->query($requete_race);
161 $row_race = $db->read_array($req_race);
162 if($row_race['race'] != '')
163 {
164 //Sélection de la diplomatie
165 $requete_diplo = "SELECT ".$row_race['race']." FROM diplomatie WHERE race = '".$joueur->get_race()."'";
166 $req_diplo = $db->query($requete_diplo);
167 $row_diplo = $db->read_row($req_diplo);
168 $distance = calcul_distance(convert_in_pos($row['posx'], $row['posy']), $joueur->get_pos());
169 $cout = $distance * 10;
170 $cout = ceil(($cout * $R->get_taxe_diplo($joueur->get_race()) / 100) + $cout);
171 }
172 else
173 {
174 $row_diplo[0] = 8;
175 }
176 }
177 //Si en paix
178 if(($row_diplo[0] <= 3) OR $row_diplo[0] == 127 AND $distance > 2)
179 {
180 if($cout != 0)
181 {
182 echo '
27db37d + Création d'un script (genere_class.php) permettant de générer direc…
dalai authored
183 <li><a href="teleport.php?poscase='.$W_case.'&amp;id='.$row['ID'].'" onclick="if(confirm(\'Voulez vous vous téléporter à '.addslashes($row_race['capitale']).' ('.$Gtrad[$row_race['race']].' - '.$cout.' Stars et 5 PA)\')) return envoiInfo(this.href, \'centre\'); else return false;">Téléportation à '.$row_race['capitale'].' ('.$Gtrad[$row_race['race']].')</a> ('.$cout.' Stars et 5 PA)</li>';
573036e revert
bastien authored
184 }
185 }
186 }
0aaeab8 + Impossibilité d'attaquer un bourg a la main
dalai authored
187 ?>
188 </ul>
189 Liste des bourgs possible pour téléportation :<br />
190 <ul>
191 <?php
573036e revert
bastien authored
192 if($R->get_diplo($joueur->get_race()) == 127)
193 {
194 //Séléction de tous les téléport disponibles
195 $requete = "SELECT id, x, y FROM construction WHERE type = 'bourg' AND royaume = ".$R->get_id();
196 $req = $db->query($requete);
197 while($row = $db->read_array($req))
198 {
199 $distance = calcul_distance(convert_in_pos($row['x'], $row['y']), $joueur->get_pos());
200 $cout = $distance * 7;
201 $cout = ceil(($cout * $R->get_taxe_diplo($joueur->get_race()) / 100) + $cout);
202 echo '<li><a href="teleport.php?poscase='.$W_case.'&amp;id_bourg='.$row['id'].'" onclick="if(confirm(\'Voulez vous vous téléporter sur ce bourg - '.$cout.' Stars et 5 PA)\')) return envoiInfo(this.href, \'centre\'); else return false;">Téléportation sur le bourg (X : '.$row['x'].' / Y : '.$row['y'].')</a> ('.$cout.' Stars et 5 PA)</li>';
203 }
204 }
0aaeab8 + Impossibilité d'attaquer un bourg a la main
dalai authored
205 ?>
206 </ul>
34e5dfe Maj de l'interface
Cinquante authored
207 </div>
208 </fieldset>
Something went wrong with that request. Please try again.