rpgillusion

RPG Illusion: French fork of Dragon Knight
git clone https://git.neuralcrash.com/rpgillusion.git
Log | Files | Refs | README

towns.php (30321B)


      1 <?php // towns.php :: Les fonctions des villes.
      2 
      3 function inn() { // Auberge.
      4     
      5 global $userrow;
      6 
      7   $townquery = doquery("SELECT name,innprice FROM {{table}} WHERE latitude='".$userrow["latitude"]."' AND longitude='".$userrow["longitude"]."' LIMIT 1", "towns");
      8   $townrow = mysql_fetch_array($townquery);
      9 	
     10   $page ='<img src="images/jeu/actions/auberge.jpg" width="580" height="82" alt="L\'auberge de '.$townrow['name'].'"><br><br>';
     11       
     12   if (isset($_POST["submit"])) {
     13   
     14   if ($userrow["gold"] < $townrow["innprice"]) { 
     15   $page .='<b>Vous ne pouvez pas vous reposer dans l\'auberge!</b><br><br> Vous possédez seulement <span class="alerte">'.$userrow['gold'].' rubis</span>. Le repos dans cette auberge coûte <span class="alerte">'.$townrow['innprice'].' rubis</span>. Revenez lorsque vous aurez suffisament de rubis.<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au menu des villes</a>';
     16   }elseif(($userrow['currenthp'] == $userrow['maxhp'])&&($userrow['currentmp'] == $userrow['maxmp'])&&($userrow['currenttp'] == $userrow['maxtp'])){
     17   $page .='Vos points de <span class="mauve2"><b>HP</b></span>, <span class="mauve1"><b>MP</b></span> et <span class="rouge1"><b>TP</b></span> sont déja au maximum. Dormir dans cette auberge ne vous sera d\'aucunes utilité.<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au menu des villes</a>';
     18   }elseif($userrow['currentaction'] != 'En ville'){
     19   $page .='<span class="alerte">Erreur de manipulation!</span><br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a>';
     20   }else{
     21   $debit = $userrow['gold'] - $townrow['innprice']; 
     22   $update = doquery("UPDATE {{table}} SET gold='".$debit."',currenthp='".$userrow['maxhp']."',currentmp='".$userrow['maxmp']."',currenttp='".$userrow['maxtp']."' WHERE id='".$userrow['id']."' LIMIT 1", "users"); 
     23   $history = doquery("INSERT INTO {{table}} SET time='".time()."', content='<p><span class=\"mauve1\">".$userrow['charname']."</span> vient de se reposer à l\'auberge de <b>".$townrow['name']."</b></p>', charname='".$userrow['charname']."'", "history"); 
     24 
     25   $page .='<b>Vous venez dormir dans l\'auberge de '.$townrow['name'].'!</b><br><br> Après ce repos mérité, vos points de <span class="mauve2"><b>HP</b></span>, <span class="mauve1"><b>MP</b></span> et <span class="rouge1"><b>TP</b></span> ont été remplit au maximum. De même '.$townrow['innprice'].' rubis ont été débités de votre compte. 
     26   <br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au menu des villes</a>';
     27   }
     28   }else{
     29   
     30   // Classement des auberges
     31   $toptownquery = doquery ("SELECT name, innprice FROM {{table}} ORDER by innprice ASC LIMIT 8","towns"); 
     32  
     33   $count = 1;
     34   $top ='';
     35  
     36   while ($toptownrow = mysql_fetch_array($toptownquery))
     37   {
     38   $top .= '<span class="mauve1"><b>'.$count.'</b></span> '.$toptownrow['name'].' <span class="taille1"><i>(<span class="rose3">'.$toptownrow['innprice'].'</span> rubis)</i></span><br>';
     39   $count++;
     40   }
     41   
     42   $page .='<form enctype="multipart/form-data" action="" method="post"><div style="background-image: url(images/jeu/fond_auberge.jpg); background-repeat: no-repeat; background-position: center top">Pour vous reposer dans l\'auberge de '.$townrow['name'].' vous devez absolument avoir <b>'.$townrow['innprice'].' rubis</b>.<br><br><br>Souhaitez vous, vous reposer dans l\'auberge?<br><br>
     43   <div style="text-align: center"><input type="submit" name="submit" value="Oui"> <input type="button" value="Non" OnClick="javascript:location=\'index.php\'"></div>
     44   <br><br></div></form><img src="images/jeu/puce4.gif" alt=""> <span class="mauve2"><b>Le classement des auberges de la planète Paradis:</b></span><br><br>'.$top;
     45   }
     46     
     47   display($page, 'Auberge');
     48       
     49  }
     50  
     51  
     52  function buy() { // Visualisation du magasin.
     53     
     54     global $userrow;
     55     
     56     $townquery = doquery("SELECT name,itemslist FROM {{table}} WHERE latitude='".$userrow["latitude"]."' AND longitude='".$userrow["longitude"]."' LIMIT 1", "towns");
     57     $townrow = mysql_fetch_array($townquery);
     58 	
     59 	$page ='<img src="images/jeu/actions/magasin.jpg" width="580" height="82" alt="Le magasin"><br><br>';
     60 	$page.='Pour acheter un objet, il vous suffit de cliquer sur nom. Attention vérifiez bien que vous possédez assez de rubis. Les objets disponibles dans les magasins varient en fonction des villes.<br><br><span class="alerte">Note:</span> Le signe (*) signifie que l\'objet a un attribut spécial, qui change directement après l\'achat, un paramètre de votre personnage. L\'attribut vous sera indiqué juste après l\'achat de l\'objet.<br><br><br>';
     61 
     62     $itemslist = explode(",",$townrow["itemslist"]);
     63     $querystring = "";
     64     foreach($itemslist as $a=>$b) {
     65         $querystring .= "id='$b' OR ";
     66     }
     67     $querystring = rtrim($querystring, " OR ");
     68     
     69     $itemsquery = doquery("SELECT * FROM {{table}} WHERE $querystring ORDER BY id", "items");
     70 	
     71     while ($itemsrow = mysql_fetch_array($itemsquery)) {
     72         if ($itemsrow['special'] != "Aucun") { $special = '*'; } else { $special = ''; } 
     73 		if ($itemsrow['type'] == 1) { $categorie = "Pouvoir d'attaque:"; } else  { $categorie = "Pouvoir de défense:"; } 
     74         if ($itemsrow['type'] == 1) { $type = 'Arme'; $pouvoir ='d\'attaque';} 
     75         if ($itemsrow['type'] == 2) { $type = 'Armure'; $pouvoir ='de défense'; } 
     76         if ($itemsrow['type'] == 3) { $type = 'Bouclier'; $pouvoir ='de défense'; } 
     77         if ($userrow['weaponid'] == $itemsrow['id'] || $userrow['armorid'] == $itemsrow['id'] || $userrow['shieldid'] == $itemsrow['id']) { 
     78       $page .='<div class="bloc_rose"><div style="float:left"><img src="images/objets/'.$itemsrow['id'].'.jpg" alt="'.$itemsrow['name'].'"></div><b><span class="mauve2">'.$itemsrow['name'].'<span class="alerte">'.$special.'</span></span></b> - <i>type: <span class="mauve1">'.$type.'</span> - Pouvoir '.$pouvoir.': <span class="mauve1">'.$itemsrow['attribute'].'</span></i> <span class="alerte"><blink>(Déja acheté)</blink></span><br><span class="taille1">'.$itemsrow['description'].'</span></div><br>'; 
     79         } else { 
     80       $page .='<div class="bloc_rose"><div style="float:left"><img src="images/objets/'.$itemsrow['id'].'.jpg" alt="'.$itemsrow['name'].'"></div><a href="?do=buy2:'.$itemsrow['id'].'"><b><span class="mauve2">'.$itemsrow['name'].'<span class="alerte">'.$special.'</span></span></b></a> - <i>type: <span class="mauve1">'.$type.'</span> - Pouvoir '.$pouvoir.': <span class="mauve1">'.$itemsrow['attribute'].'</span></i> <span class="alerte">('.$itemsrow['buycost'].' rubis)</span><br><span class="taille1">'.$itemsrow['description'].'</span></div><br>'; } 
     81       }
     82     
     83 	$page .='<br><a href="index.php">» retourner au menu des villes</a><br><br>'; 
     84 
     85     
     86   display($page, 'Le magasin d\'objets');
     87     
     88 }
     89 
     90 
     91 function buy2($id) { // Achat dans  magasin.
     92     
     93     global $userrow;
     94     
     95     $townquery = doquery("SELECT name,itemslist FROM {{table}} WHERE latitude='".$userrow["latitude"]."' AND longitude='".$userrow["longitude"]."' LIMIT 1", "towns");
     96     $townrow = mysql_fetch_array($townquery);
     97     
     98     $itemsquery = doquery("SELECT * FROM {{table}} WHERE id='$id' LIMIT 1", "items");
     99     $itemsrow = mysql_fetch_array($itemsquery);
    100 	
    101 	$page ='<img src="images/jeu/actions/magasin.jpg" width="580" height="82" alt="Le magasin"><br><br>';
    102     
    103     if ($userrow["gold"] < $itemsrow["buycost"]) {   
    104 	$page .= 'Désolé vous ne possédez pas assez de rubis pour acheter l\'objet nommé <b>'.$itemsrow['name'].'</b>. Il vous faut absolument <span class="alerte">'.$itemsrow['buycost'].' rubis</span>, or vous possédez seulement <span class="alerte">'.$userrow['gold'].' rubis</span>.<br><br>Maintenant vous pouvez:<br><br><a href="?do=buy">» retourner au magasin</a><br><a href="index.php">» retourner au menu des villes</a>';
    105 	}else{
    106 	
    107     if ($itemsrow["type"] == 1) {
    108         if ($userrow["weaponid"] != 0) { 
    109             $itemsquery2 = doquery("SELECT * FROM {{table}} WHERE id='".$userrow["weaponid"]."' LIMIT 1", "items");
    110             $itemsrow2 = mysql_fetch_array($itemsquery2);
    111 			
    112             $page .= '<form enctype="multipart/form-data" action="?do=buy3:'.$id.'" method="post"><div>Avant d\'acheter l\'objet nommé <b>'.$itemsrow['name'].'</b>, un marchant habitant à '.$townrow['name'].' souhaite racheter votre ancienne arme nommé <b>'.$itemsrow2['name'].'</b>, pour un montant de <b>'.ceil($itemsrow2["buycost"]/2).' rubis</b><br><br><br>Acceptez vous le marché?<br><br>
    113             <div style="text-align: center"><input type="submit" name="achat" value="Oui"> <input type="button" value="Non" OnClick="javascript:location=\'?do=buy\'"></div></div></form>';
    114 
    115         } else {
    116             $page .= '<form enctype="multipart/form-data" action="?do=buy3:'.$id.'" method="post"><div>Vous avez choisi l\'objet nommé <b>'.$itemsrow['name'].'</b>. Celui-ci coûte <span class="alerte">'.$itemsrow['buycost'].' rubis</span><br><br><br>Souhaitez vous l\'acheter?<br><br>
    117             <div style="text-align: center"><input type="submit" name="achat" value="Oui"> <input type="button" value="Non" OnClick="javascript:location=\'?do=buy\'"></div></div></form>';
    118 
    119         }
    120     } elseif ($itemsrow["type"] == 2) {
    121         if ($userrow["armorid"] != 0) { 
    122             $itemsquery2 = doquery("SELECT * FROM {{table}} WHERE id='".$userrow["armorid"]."' LIMIT 1", "items");
    123             $itemsrow2 = mysql_fetch_array($itemsquery2);
    124 			
    125             $page .= '<form enctype="multipart/form-data" action="?do=buy3:'.$id.'" method="post"><div>Avant d\'acheter l\'objet nommé <b>'.$itemsrow['name'].'</b>, un marchant habitant à '.$townrow['name'].' souhaite racheter votre ancienne armure nommé <b>'.$itemsrow2['name'].'</b>, pour un montant de <b>'.ceil($itemsrow2["buycost"]/2).' rubis</b><br><br><br>Acceptez vous le marché?<br><br>
    126             <div style="text-align: center"><input type="submit" name="achat" value="Oui"> <input type="button" value="Non" OnClick="javascript:location=\'?do=buy\'"></div></div></form>';
    127 
    128         } else {
    129             $page .= '<form enctype="multipart/form-data" action="?do=buy3:'.$id.'" method="post"><div>Vous avez choisi l\'objet nommé <b>'.$itemsrow['name'].'</b>. Celui-ci coûte <span class="alerte">'.$itemsrow['buycost'].' rubis</span><br><br><br>Souhaitez vous l\'acheter?<br><br>
    130             <div style="text-align: center"><input type="submit" name="achat" value="Oui"> <input type="button" value="Non" OnClick="javascript:location=\'?do=buy\'"></div></div></form>';
    131         }
    132     } elseif ($itemsrow["type"] == 3) {
    133         if ($userrow["shieldid"] != 0) { 
    134             $itemsquery2 = doquery("SELECT * FROM {{table}} WHERE id='".$userrow["shieldid"]."' LIMIT 1", "items");
    135             $itemsrow2 = mysql_fetch_array($itemsquery2);
    136 			
    137             $page .= '<form enctype="multipart/form-data" action="?do=buy3:'.$id.'" method="post"><div>Avant d\'acheter l\'objet nommé <b>'.$itemsrow['name'].'</b>, un marchant habitant à '.$townrow['name'].' souhaite racheter votre ancien bouclier nommé <b>'.$itemsrow2['name'].'</b>, pour un montant de <b>'.ceil($itemsrow2["buycost"]/2).' rubis</b><br><br><br>Acceptez vous le marché?<br><br>
    138             <div style="text-align: center"><input type="submit" name="achat" value="Oui"> <input type="button" value="Non" OnClick="javascript:location=\'?do=buy\'"></div></div></form>';
    139 
    140         } else {
    141             $page .= '<form enctype="multipart/form-data" action="?do=buy3:'.$id.'" method="post"><div>Vous avez choisi l\'objet nommé <b>'.$itemsrow['name'].'</b>. Celui-ci coûte <span class="alerte">'.$itemsrow['buycost'].' rubis</span><br><br><br>Souhaitez vous l\'acheter?<br><br>
    142             <div style="text-align: center"><input type="submit" name="achat" value="Oui"> <input type="button" value="Non" OnClick="javascript:location=\'?do=buy\'"></div></div></form>';
    143 
    144         }
    145     }
    146 }
    147 	
    148   display($page, 'Le magasin d\'objets');
    149    
    150 }
    151 
    152 
    153 function buy3($id) { // Update users après achat.
    154     
    155     global $userrow;
    156     
    157     $townquery = doquery("SELECT name,itemslist FROM {{table}} WHERE latitude='".$userrow["latitude"]."' AND longitude='".$userrow["longitude"]."' LIMIT 1", "towns");
    158     $townrow = mysql_fetch_array($townquery);
    159     
    160     $itemsquery = doquery("SELECT * FROM {{table}} WHERE id='$id' LIMIT 1", "items");
    161     $itemsrow = mysql_fetch_array($itemsquery);
    162 	
    163 	$page ='<img src="images/jeu/actions/magasin.jpg" width="580" height="82" alt="Le magasin"><br><br>';
    164 
    165     if($userrow['currentaction'] != 'En ville'){
    166     $page .='<span class="alerte">Erreur de manipulation!</span><br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a>';
    167     }elseif($userrow["gold"] < $itemsrow["buycost"]) {   
    168 	$page .= 'Désolé vous ne possédez pas assez de rubis pour acheter l\'objet nommé <b>'.$itemsrow['name'].'</b>. Il vous faut absolument <span class="alerte">'.$itemsrow['buycost'].' rubis</span>, or vous possédez seulement <span class="alerte">'.$userrow['gold'].' rubis</span>.<br><br>Maintenant vous pouvez:<br><br><a href="?do=buy">» retourner au magasin</a><br><a href="index.php">» retourner au menu des villes</a>';
    169 	}else{
    170 	
    171 	$buybonus = null;
    172 	$buybonus2 = null;
    173 	$special = '<br><br>Cette objet ne contient pas d\'attribut spécial, donc aucunes modifications ne sera éffectué sur votre personnage.';
    174     
    175     if ($itemsrow["type"] == 1) { // Armes.
    176 
    177         if ($userrow["weaponid"] != 0) { 
    178             $itemsquery2 = doquery("SELECT * FROM {{table}} WHERE id='".$userrow["weaponid"]."' LIMIT 1", "items");
    179             $itemsrow2 = mysql_fetch_array($itemsquery2);
    180        
    181        $buybonus ='Un marchant vous à également racheté l\'objet <b>'.$itemsrow2["name"].'</b>, pour un montant de <b>'.ceil($itemsrow2["buycost"]/2).' rubis. </b>';
    182 	   $buybonus2='et crédité de <b>'.ceil($itemsrow2["buycost"]/2).' rubis</b>,';
    183 	   } else {
    184 	   
    185             $itemsrow2 = array("attribute"=>0,"buycost"=>0,"special"=>"Aucun");
    186         }
    187         
    188         $specialchange1 = "";
    189         $specialchange2 = "";
    190         if ($itemsrow["special"] != "Aucun") {
    191             $special = explode(",",$itemsrow["special"]);
    192             $tochange = $special[0];
    193             $userrow[$tochange] = $userrow[$tochange] + $special[1];
    194             $specialchange1 = "$tochange='".$userrow[$tochange]."',";
    195             if ($tochange == "strength") { $userrow["attackpower"] += $special[1]; }
    196             if ($tochange == "dexterity") { $userrow["defensepower"] += $special[1]; }
    197 			$special = '<br><br>Cet objet possède un attribut spécial. La propriété <b>'.$special[0].'</b> de votre personnage sera augmenté (ou diminué si signe (-) devant) de <b>'.$special[1].' point(s)</b>.';
    198         }
    199         if ($itemsrow2["special"] != "Aucun") {
    200             $special2 = explode(",",$itemsrow2["special"]);
    201             $tochange2 = $special2[0];
    202             $userrow[$tochange2] = $userrow[$tochange2] - $special2[1];
    203             $specialchange2 = "$tochange2='".$userrow[$tochange2]."',";
    204             if ($tochange2 == "strength") { $userrow["attackpower"] -= $special2[1]; }
    205             if ($tochange2 == "dexterity") { $userrow["defensepower"] -= $special2[1]; }
    206         
    207 		}
    208         
    209         $newgold = $userrow["gold"] + ceil($itemsrow2["buycost"]/2) - $itemsrow["buycost"];
    210         $newattack = $userrow["attackpower"] + $itemsrow["attribute"] - $itemsrow2["attribute"];
    211         $newid = $itemsrow["id"];
    212         $newname = $itemsrow["name"];
    213         $userid = $userrow["id"];
    214         if ($userrow["currenthp"] > $userrow["maxhp"]) { $newhp = $userrow["maxhp"]; } else { $newhp = $userrow["currenthp"]; }
    215         if ($userrow["currentmp"] > $userrow["maxmp"]) { $newmp = $userrow["maxmp"]; } else { $newmp = $userrow["currentmp"]; }
    216         if ($userrow["currenttp"] > $userrow["maxtp"]) { $newtp = $userrow["maxtp"]; } else { $newtp = $userrow["currenttp"]; }
    217         
    218         $updatequery = doquery("UPDATE {{table}} SET $specialchange1 $specialchange2 gold='$newgold', attackpower='$newattack', weaponid='$newid', weaponname='$newname', currenthp='$newhp', currentmp='$newmp', currenttp='$newtp' WHERE id='$userid' LIMIT 1", "users");
    219         
    220     } elseif ($itemsrow["type"] == 2) { // Armures.
    221 
    222         if ($userrow["armorid"] != 0) { 
    223             $itemsquery2 = doquery("SELECT * FROM {{table}} WHERE id='".$userrow["armorid"]."' LIMIT 1", "items");
    224             $itemsrow2 = mysql_fetch_array($itemsquery2);
    225 			
    226 			$buybonus ='Un marchant vous à également racheté l\'objet <b>'.$itemsrow2["name"].'</b>, pour un montant de <b>'.ceil($itemsrow2["buycost"]/2).' rubis. </b>';
    227 	        $buybonus2='et crédité de <b>'.ceil($itemsrow2["buycost"]/2).' rubis</b>,';
    228         } else {
    229             $itemsrow2 = array("attribute"=>0,"buycost"=>0,"special"=>"Aucun");
    230         }
    231         
    232         $specialchange1 = "";
    233         $specialchange2 = "";
    234         if ($itemsrow["special"] != "Aucun") {
    235             $special = explode(",",$itemsrow["special"]);
    236             $tochange = $special[0];
    237             $userrow[$tochange] = $userrow[$tochange] + $special[1];
    238             $specialchange1 = "$tochange='".$userrow[$tochange]."',";
    239             if ($tochange == "strength") { $userrow["attackpower"] += $special[1]; }
    240             if ($tochange == "dexterity") { $userrow["defensepower"] += $special[1]; }
    241 			$special = '<br><br>Cet objet possède un attribut spécial. La propriété <b>'.$special[0].'</b> de votre personnage sera augmenté (ou diminué si signe (-) devant) de <b>'.$special[1].' point(s)</b>.';
    242         }
    243         if ($itemsrow2["special"] != "Aucun") {
    244             $special2 = explode(",",$itemsrow2["special"]);
    245             $tochange2 = $special2[0];
    246             $userrow[$tochange2] = $userrow[$tochange2] - $special2[1];
    247             $specialchange2 = "$tochange2='".$userrow[$tochange2]."',";
    248             if ($tochange2 == "strength") { $userrow["attackpower"] -= $special2[1]; }
    249             if ($tochange2 == "dexterity") { $userrow["defensepower"] -= $special2[1]; }
    250         }
    251         
    252         $newgold = $userrow["gold"] + ceil($itemsrow2["buycost"]/2) - $itemsrow["buycost"];
    253         $newdefense = $userrow["defensepower"] + $itemsrow["attribute"] - $itemsrow2["attribute"];
    254         $newid = $itemsrow["id"];
    255         $newname = $itemsrow["name"];
    256         $userid = $userrow["id"];
    257         if ($userrow["currenthp"] > $userrow["maxhp"]) { $newhp = $userrow["maxhp"]; } else { $newhp = $userrow["currenthp"]; }
    258         if ($userrow["currentmp"] > $userrow["maxmp"]) { $newmp = $userrow["maxmp"]; } else { $newmp = $userrow["currentmp"]; }
    259         if ($userrow["currenttp"] > $userrow["maxtp"]) { $newtp = $userrow["maxtp"]; } else { $newtp = $userrow["currenttp"]; }
    260         
    261         $updatequery = doquery("UPDATE {{table}} SET $specialchange1 $specialchange2 gold='$newgold', defensepower='$newdefense', armorid='$newid', armorname='$newname', currenthp='$newhp', currentmp='$newmp', currenttp='$newtp' WHERE id='$userid' LIMIT 1", "users");
    262 
    263     } elseif ($itemsrow["type"] == 3) { // Boucliers.
    264 
    265         if ($userrow["shieldid"] != 0) { 
    266             $itemsquery2 = doquery("SELECT * FROM {{table}} WHERE id='".$userrow["shieldid"]."' LIMIT 1", "items");
    267             $itemsrow2 = mysql_fetch_array($itemsquery2);
    268 			
    269 			$buybonus ='Un marchant vous à également racheté l\'objet <b>'.$itemsrow2["name"].'</b>, pour un montant de <b>'.ceil($itemsrow2["buycost"]/2).' rubis. </b>';
    270 	        $buybonus2='et crédité de <b>'.ceil($itemsrow2["buycost"]/2).' rubis</b>,';
    271         } else {
    272             $itemsrow2 = array("attribute"=>0,"buycost"=>0,"special"=>"Aucun");
    273         }
    274         
    275         $specialchange1 = "";
    276         $specialchange2 = "";
    277         if ($itemsrow["special"] != "Aucun") {
    278             $special = explode(",",$itemsrow["special"]);
    279             $tochange = $special[0];
    280             $userrow[$tochange] = $userrow[$tochange] + $special[1];
    281             $specialchange1 = "$tochange='".$userrow[$tochange]."',";
    282             if ($tochange == "strength") { $userrow["attackpower"] += $special[1]; }
    283             if ($tochange == "dexterity") { $userrow["defensepower"] += $special[1]; }
    284 			$special = '<br><br>Cet objet possède un attribut spécial. La propriété <b>'.$special[0].'</b> de votre personnage sera augmenté (ou diminué si signe (-) devant) de <b>'.$special[1].' point(s)</b>.';
    285         }
    286         if ($itemsrow2["special"] != "Aucun") {
    287             $special2 = explode(",",$itemsrow2["special"]);
    288             $tochange2 = $special2[0];
    289             $userrow[$tochange2] = $userrow[$tochange2] - $special2[1];
    290             $specialchange2 = "$tochange2='".$userrow[$tochange2]."',";
    291             if ($tochange2 == "strength") { $userrow["attackpower"] -= $special2[1]; }
    292             if ($tochange2 == "dexterity") { $userrow["defensepower"] -= $special2[1]; }
    293         }
    294         
    295         $newgold = $userrow["gold"] + ceil($itemsrow2["buycost"]/2) - $itemsrow["buycost"];
    296         $newdefense = $userrow["defensepower"] + $itemsrow["attribute"] - $itemsrow2["attribute"];
    297         $newid = $itemsrow["id"];
    298         $newname = $itemsrow["name"];
    299         $userid = $userrow["id"];
    300         if ($userrow["currenthp"] > $userrow["maxhp"]) { $newhp = $userrow["maxhp"]; } else { $newhp = $userrow["currenthp"]; }
    301         if ($userrow["currentmp"] > $userrow["maxmp"]) { $newmp = $userrow["maxmp"]; } else { $newmp = $userrow["currentmp"]; }
    302         if ($userrow["currenttp"] > $userrow["maxtp"]) { $newtp = $userrow["maxtp"]; } else { $newtp = $userrow["currenttp"]; }
    303 
    304         $updatequery = doquery("UPDATE {{table}} SET $specialchange1 $specialchange2 gold='$newgold', defensepower='$newdefense', shieldid='$newid', shieldname='$newname', currenthp='$newhp', currentmp='$newmp', currenttp='$newtp' WHERE id='$userid' LIMIT 1", "users");        
    305     
    306     }
    307   
    308   $page .= 'Bravo, vous venez d\'acheter l\'objet nommé <b>'.$itemsrow['name'].'</b>. '.$buybonus.'Votre compte vient d\'être débité de <span class="alerte">'.$itemsrow['buycost'].' rubis</span>, '.$buybonus2.' il s\'élève désormais à <span class="alerte">'.$newgold.' rubis</span>.'.$special.'<br><br>Maintenant vous pouvez:<br><br><a href="?do=buy">» retourner au magasin</a><br><a href="index.php">» retourner au menu des villes</a>';
    309 }
    310   display($page, 'Le magasin d\'objets');
    311 
    312 }
    313 
    314 
    315 function maps() { // Visualisation du magasin.
    316     
    317     global $userrow;
    318 	
    319 	$townquery = doquery("SELECT * FROM {{table}} ORDER BY id", "towns");
    320         
    321     $page ='<img src="images/jeu/actions/magasin.jpg" width="580" height="82" alt="Le magasin"><br><br>';
    322 	$page.='Pour acheter une carte, il vous suffit de cliquer sur son nom. Attention vérifiez bien que vous possédez assez de rubis. Les cartes disponibles dans les magasins varient en fonction des villes.<br><br> Les cartes vous permet de vous téléporter de ville en ville, mais cette fonction utilise beaucoup de points de voyage (<span class="rouge1"><b>TP</b></span>).<br><br><br>';
    323 
    324     $mappedtowns = explode(",",$userrow["towns"]);
    325 
    326     while ($townrow = mysql_fetch_array($townquery)) {
    327         
    328         if ($townrow["latitude"] >= 0) { $latitude = $townrow["latitude"] . "N,"; } else { $latitude = ($townrow["latitude"]*-1) . "S,"; }
    329         if ($townrow["longitude"] >= 0) { $longitude = $townrow["longitude"] . "E"; } else { $longitude = ($townrow["longitude"]*-1) . "W"; }
    330         
    331         $mapped = false;
    332         foreach($mappedtowns as $a => $b) {
    333             if ($b == $townrow["id"]) { $mapped = true; }
    334         }
    335         if ($mapped == false) {
    336             $page .='<div class="bloc_rose"><a href="index.php?do=maps2:'.$townrow["id"].'"><b><span class="mauve2">Carte de '.$townrow["name"].'</span></b></a> (Location: caché; <span class="rouge1"><b>TP</b>: caché</span>) - <span class="alerte">('.$townrow['mapprice'].' rubis)</span><br></div><br>'; 
    337 
    338 		} else {
    339             $page .='<div class="bloc_rose"><b><span class="mauve2">Carte de '.$townrow["name"].'</span></b> (Location: '.$latitude.' '.$longitude.'; <span class="rouge1"><b>TP</b>: '.$townrow['travelpoints'].'</span>) - <span class="alerte"><blink>(Déja acheté)</blink></span><br></div><br>'; 
    340 
    341 		}
    342         
    343     }
    344     
    345 	$page .='<br><a href="index.php">» retourner au menu des villes</a><br><br>'; 
    346     
    347   display($page, 'Le magasin de cartes');
    348     
    349 }
    350 
    351 
    352 function maps2($id) { // Achat carte.
    353     
    354     global $userrow;
    355     
    356     $townquery = doquery("SELECT name,mapprice FROM {{table}} WHERE id='$id' LIMIT 1", "towns");
    357     $townrow = mysql_fetch_array($townquery);
    358 	
    359 	$page ='<img src="images/jeu/actions/magasin.jpg" width="580" height="82" alt="Le magasin"><br><br>';
    360  
    361     if ($userrow["gold"] < $townrow["mapprice"]) {
    362 	$page .= 'Désolé vous ne possédez pas assez de rubis pour acheter la carte de <b>'.$townrow['name'].'</b>. Il vous faut absolument <span class="alerte">'.$townrow['mapprice'].' rubis</span>, or vous possédez seulement <span class="alerte">'.$userrow['gold'].' rubis</span>.<br><br>Maintenant vous pouvez:<br><br><a href="?do=maps">» retourner au magasin</a><br><a href="index.php">» retourner au menu des villes</a>';
    363     }else{
    364 	
    365     $page .= '<form enctype="multipart/form-data" action="?do=maps3:'.$id.'" method="post"><div>Vous avez choisi d\'acheter la carte de <b>'.$townrow['name'].'</b>. Celui-ci coûte <span class="alerte">'.$townrow['mapprice'].' rubis</span><br><br><br>Souhaitez vous l\'acheter?<br><br>
    366             <div style="text-align: center"><input type="submit" name="achat" value="Oui"> <input type="button" value="Non" OnClick="javascript:location=\'?do=maps\'"></div></div></form>';
    367 }
    368 	
    369   display($page, 'Le magasin de cartes');
    370     
    371 }
    372 
    373 
    374 function maps3($id) { // Update users après achat.
    375         
    376     global $userrow;
    377     
    378     $townquery = doquery("SELECT name,mapprice FROM {{table}} WHERE id='$id' LIMIT 1", "towns");
    379     $townrow = mysql_fetch_array($townquery);
    380 	
    381 	$page ='<img src="images/jeu/actions/magasin.jpg" width="580" height="82" alt="Le magasin"><br><br>';
    382     if($userrow['currentaction'] != 'En ville'){
    383     $page .='<span class="alerte">Erreur de manipulation!</span><br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a>';
    384     }elseif($userrow["gold"] < $townrow["mapprice"]) {
    385 	$page .= 'Désolé vous ne possédez pas assez de rubis pour acheter la carte de <b>'.$townrow['name'].'</b>. Il vous faut absolument <span class="alerte">'.$townrow['mapprice'].' rubis</span>, or vous possédez seulement <span class="alerte">'.$userrow['gold'].' rubis</span>.<br><br>Maintenant vous pouvez:<br><br><a href="?do=maps">» retourner au magasin</a><br><a href="index.php">» retourner au menu des villes</a>';
    386     }else{
    387     
    388     $mappedtowns = $userrow["towns"].",$id";
    389     $newgold = $userrow["gold"] - $townrow["mapprice"];
    390     
    391     $updatequery = doquery("UPDATE {{table}} SET towns='$mappedtowns',gold='$newgold' WHERE id='".$userrow["id"]."' LIMIT 1", "users");
    392     
    393     $page .= 'Bravo, vous venez d\'acheter la carte de <b>'.$townrow['name'].'</b>. Votre compte vient d\'être débité de <span class="alerte">'.$townrow['mapprice'].' rubis</span>, il s\'élève désormais à <span class="alerte">'.$newgold.' rubis</span>.<br><br>Maintenant vous pouvez:<br><br><a href="?do=maps">» retourner au magasin</a><br><a href="index.php">» retourner au menu des villes</a>';
    394 }
    395 
    396 	display($page, 'Le magasin de cartes');
    397 
    398 }
    399 
    400 
    401 function travelto($id, $usepoints=true) { // Envois de l'utilisateur vers le menu de ville.
    402     
    403     global $userrow;
    404     
    405     if ($userrow["currentaction"] == "En combat") { header("Location: index.php?do=fight"); die(); }
    406     
    407     $townquery = doquery("SELECT name,travelpoints,latitude,longitude FROM {{table}} WHERE id='$id' LIMIT 1", "towns");
    408     $townrow = mysql_fetch_array($townquery);
    409 	
    410 	$page = '<img src="images/jeu/actions/exploration.jpg" width="580" height="82" alt="En exploration"><br><br>';
    411 	
    412 	if (($userrow["latitude"] == $townrow["latitude"]) && ($userrow["longitude"] == $townrow["longitude"])) { 
    413 	display($page .='<span class="alerte">Erreur:</span> Vous êtes déja dans cette ville!<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a>', "En exploration");
    414 	    }
    415 
    416 	if($usepoints==true) { 
    417         if ($userrow["currenttp"] < $townrow["travelpoints"]) { 
    418        	display($page .= 'Vous n\'avez pas assez de points de voyage (<span class="rouge1"><b>TP</b></span>) pour vous téléporter ici. Revenez en arrière et essayez de nouveau lorsque vous obtiendrez au minimum <b>'.$townrow['travelpoints'].' TP</b>.<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner sur mes pas</a>', "En exploration");
    419 	   }
    420         $mapped = explode(",",$userrow["towns"]);
    421         if (!in_array($id, $mapped)) { 
    422 		display($page .='<span class="alerte">Erreur de manipulation!</span><br><br>Maintenant vous pouvez:<br><br><a href="index.php">» retourner au jeu</a>', "En exploration");
    423 		}
    424     
    425 	}
    426 	
    427     if ($usepoints == true) { $newtp = $userrow["currenttp"] - $townrow["travelpoints"]; } else { $newtp = $userrow["currenttp"]; }
    428     
    429     $newlat = $townrow["latitude"];
    430     $newlon = $townrow["longitude"];
    431     $newid = $userrow["id"];
    432     
    433     $mapped = explode(",",$userrow["towns"]);
    434     $town = false;
    435     foreach($mapped as $a => $b) {
    436         if ($b == $id) { $town = true; }
    437     }
    438     $mapped = implode(",",$mapped);
    439     if ($town == false) { 
    440         $mapped .= ",$id";
    441         $mapped = "towns='".$mapped."',";
    442     } else { 
    443         $mapped = "towns='".$mapped."',";
    444     }
    445     
    446     $updatequery = doquery("UPDATE {{table}} SET currentaction='En ville',$mapped currenttp='$newtp',latitude='$newlat',longitude='$newlon' WHERE id='$newid' LIMIT 1", "users");
    447     
    448 	$page .= 'Vous voici en face de la ville de <b>'.$townrow['name'].'</b>, son chef vous souhaite la bienvenue!.<br><br>Maintenant vous pouvez:<br><br><a href="index.php">» entrer dans la ville</a>';
    449 
    450 
    451     display($page, "En exploration");
    452     
    453 }
    454  
    455  
    456 ?>