Accueil Connexion Inscription Membres Rechercher Accéder au jeu


   Index / Les mises à jours et Mods / mod : nouvel inventaire

   


sebcap26
Membre

Messages : 5
Remonter

mod : nouvel inventaire (0 vote)

Posté par sebcap26, le 21/04/2007 à 14:42:16

Bonjour, c'est mon premier mod alors soyez indulgents. Il changera l'inventaire pour en mettre un comme dans les vrais jeux de role. J'ai adapté le magasin pour que l'objet se place dans une des cases de l'inventaire. Vous pourrez également vendre, jeter ou équiper un objet à votre convenance. Voici déja un petit apercu : http://www.rpgillusion.net/modules/uploadeur/inventaire%20par%20sebcap26.jpg.
Bien alors on commence par le sql :


Code :

ALTER TABLE rpg_users ADD 'inv1' INT(255) DEFAULT '0',

ADD 'inv2' INT(255) DEFAULT '0',

ADD 'inv3' INT(255) DEFAULT '0',

ADD 'inv4' INT(255) DEFAULT '0',

ADD 'inv5' INT(255) DEFAULT '0',

ADD 'inv6' INT(255) DEFAULT '0',

ADD 'inv7' INT(255) DEFAULT '0',

ADD 'inv8' INT(255) DEFAULT '0',

ADD 'inv9' INT(255) DEFAULT '0';






ensuite, créez un fichier inventaire.php et mettez y ce code :


Code :

<?php



function inventaire () //affiche l'inventaire

{

global 
$userrow;

//récupération de l'inventaire

if ($userrow["inv1"]<>0);

{

$inv1q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv1"], "items");

$inv1=mysql_fetch_array($inv1q);

$img1="images/items/".$inv1["image"].".gif";

}

if(
$userrow["inv1"]==0)

{

$img1="images/items/0.gif";

}



if (
$userrow["inv2"]<>0)

{

$inv2q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv2"], "items");

$inv2=mysql_fetch_array($inv2q);

$img2="images/items/".$inv2["image"].".gif";

}

if(
$userrow["inv2"]==0)

{

$img2="images/items/0.gif";

}



if (
$userrow["inv3"]<>0)

{

$inv3q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv3"], "items");

$inv3=mysql_fetch_array($inv3q);

$img3="images/items/".$inv3["image"].".gif";

}

if(
$userrow["inv3"]==0)

{

$img3="images/items/0.gif";

}



if (
$userrow["inv4"]<>0)

{

$inv4q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv4"], "items");

$inv4=mysql_fetch_array($inv4q);

$img4="images/items/".$inv4["image"].".gif";

}

if(
$userrow["inv4"]==0)

{

$img4="images/items/0.gif";

}



if (
$userrow["inv5"]<>0)

{

$inv5q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv5"], "items");

$inv5=mysql_fetch_array($inv5q);

$img5="images/items/".$inv5["image"].".gif";

}

if(
$userrow["inv5"]==0)

{

$img5="images/items/0.gif";

}



if (
$userrow["inv6"]<>0)

{

$inv6q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv6"], "items");

$inv6=mysql_fetch_array($inv6q);

$img6="images/items/".$inv6["image"].".gif";

}

if(
$userrow["inv6"]==0)

{

$img6="images/items/0.gif";

}



if (
$userrow["inv7"]<>0)

{

$inv7q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv7"], "items");

$inv7=mysql_fetch_array($inv7q);

$img7="images/items/".$inv7["image"].".gif";

}

if(
$userrow["inv7"]==0)

{

$img7="images/items/0.gif";

}



if (
$userrow["inv8"]<>0)

{

$inv8q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv8"], "items");

$inv8=mysql_fetch_array($inv8q);

$img8="images/items/".$inv8["image"].".gif";

}

if(
$userrow["inv8"]==0)

{

$img8="images/items/0.gif";

}



if (
$userrow["inv9"]<>0)

{

$inv9q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv9"], "items");

$inv9=mysql_fetch_array($inv9q);

$img9="images/items/".$inv9["image"].".gif";

}

if(
$userrow["inv9"]==0)

{

$img9="images/items/0.gif";

}



if (
$userrow["weaponid"]<>0)

{

$weaponq=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["weaponid"], "items");

$weapon=mysql_fetch_array($weaponq);

$imgw="images/items/".$weapon["image"].".gif";

}

if(
$userrow["weaponid"]==0)

{

$imgw="images/items/0.gif";

}



if (
$userrow["armorid"]<>0)

{

$armorq=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["armorid"], "items");

$armor=mysql_fetch_array($armorq);

$imga="images/items/".$armor["image"].".gif";

}

if(
$userrow["armorid"]==0)

{

$imga="images/items/0.gif";

}



if (
$userrow["shieldid"]<>0)

{

$shieldq=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["shieldid"], "items");

$shield=mysql_fetch_array($shieldq);

$imgs="images/items/".$shield["image"].".gif";

}

if(
$userrow["shieldid"]==0)

{

$imgs="images/items/0.gif";

}



display ('<center><b>Inventaire</b>



<table border=5><tr><td>Arme</td><td>Armure</td><td>Autre</td></tr><tr>

<td><img src="'
.$imgw.'" width=40 height=40></td>

<td><img src="'
.$imga.'" width=40 height=40></td>

<td><img src="'
.$imgs.'" width=40 height=40></td></tr></table>



<table border=5><tr>

<td><a href="index.php?do=useinv:1"><img src="'
.$img1.'" width=40 height=40></a></td>

<td><a href="index.php?do=useinv:2"><img src="'
.$img2.'" width=40 height=40></a></td>

<td><a href="index.php?do=useinv:3"><img src="'
.$img3.'" width=40 height=40></a></td>

</tr><tr>

<td><a href="index.php?do=useinv:4"><img src="'
.$img4.'" width=40 height=40></a></td>

<td><a href="index.php?do=useinv:5"><img src="'
.$img5.'" width=40 height=40></a></td>

<td><a href="index.php?do=useinv:6"><img src="'
.$img6.'" width=40 height=40></a></td>

</tr><tr>

<td><a href="index.php?do=useinv:7"><img src="'
.$img7.'" width=40 height=40></a></td>

<td><a href="index.php?do=useinv:8"><img src="'
.$img8.'" width=40 height=40></a></td>

<td><a href="index.php?do=useinv:9"><img src="'
.$img9.'" width=40 height=40></a></td>

</tr></table><a href="index.php?do=jeter">Jeter un objet</a></center>'
"inventaire");

}





function 
useinv($numinv)

{

global 
$userrow;

//récupération de l'inventaire

if ($numinv == '1')

{

$i1q=doquery("SELECT * FROM {{table}} WHERE id='".$userrow["inv1"]."'""items");

$inv=mysql_fetch_array($i1q);

}

elseif (
$numinv == '2')

{

$i2q=doquery("SELECT * FROM {{table}} WHERE id='".$userrow["inv2"]."'""items");

$inv=mysql_fetch_array($i2q);

}

elseif (
$numinv == '3')

{

$i3q=doquery("SELECT * FROM {{table}} WHERE id='".$userrow["inv3"]."'""items");

$inv=mysql_fetch_array($i3q);

}

elseif (
$numinv == '4')

{

$i4q=doquery("SELECT * FROM {{table}} WHERE id='".$userrow["inv4"]."'""items");

$inv=mysql_fetch_array($i4q);

}

elseif (
$numinv == '5')

{

$i5q=doquery("SELECT * FROM {{table}} WHERE id='".$userrow["inv5"]."'""items");

$inv=mysql_fetch_array($i5q);

}

elseif (
$numinv == '6')

{

$i6q=doquery("SELECT * FROM {{table}} WHERE id='".$userrow["inv6"]."'""items");

$inv=mysql_fetch_array($i6q);

}

elseif (
$numinv == '7')

{

$i7q=doquery("SELECT * FROM {{table}} WHERE id='".$userrow["inv7"]."'""items");

$inv=mysql_fetch_array($i7q);

}

elseif (
$numinv == '8')

{

$i8q=doquery("SELECT * FROM {{table}} WHERE id='".$userrow["inv8"]."'""items");

$inv=mysql_fetch_array($i8q);

}

elseif (
$numinv == '9')

{

$i9q=doquery("SELECT * FROM {{table}} WHERE id='".$userrow["inv9"]."'""items");

$inv=mysql_fetch_array($i9q);

}

if(
$inv["id"]==0)

{

display("Aucun objet dans cet emplacement.<a href='index.php?do=inventaire'>Retour</a>""vide");

exit();

}



$itemsquery doquery("SELECT * FROM {{table}} WHERE id='".$inv["id"]."' LIMIT 1""items"); 

$itemsrow mysql_fetch_array($itemsquery); 



if  (
$inv["type"] == 1)

{

$nvwname $inv["name"];

$nvwid $inv["id"];

$nvinvid $userrow["weaponid"];



// Check if they already have an item in the slot. 

if ($userrow["weaponid"] != 0) { 

$itemsquery2 doquery("SELECT * FROM {{table}} WHERE id='".$userrow["weaponid"]."' LIMIT 1""items"); 

$itemsrow2 mysql_fetch_array($itemsquery2); 

} else { 

$itemsrow2 = array("attribute"=>0,"buycost"=>0,"special"=>"Aucun"); 





// Special item fields. 

$specialchange1 ""

$specialchange2 ""

if (
$itemsrow["special"] != "Aucun") { 

$special explode(",",$itemsrow["special"]); 

$tochange $special[0]; 

$userrow[$tochange] = $userrow[$tochange] + $special[1]; 

$specialchange1 "$tochange='".$userrow[$tochange]."',"

if (
$tochange == "strength") { $userrow["attackpower"] += $special[1]; } 

if (
$tochange == "dexterity") { $userrow["defensepower"] += $special[1]; } 



if (
$itemsrow2["special"] != "Aucun") { 

$special2 explode(",",$itemsrow2["special"]); 

$tochange2 $special2[0]; 

$userrow[$tochange2] = $userrow[$tochange2] - $special2[1]; 

$specialchange2 "$tochange2='".$userrow[$tochange2]."',"

if (
$tochange2 == "strength") { $userrow["attackpower"] -= $special2[1]; } 

if (
$tochange2 == "dexterity") { $userrow["defensepower"] -= $special2[1]; } 

}



if (
$userrow['charname'] != $townrow['commercant1']){

$newgold $userrow["gold"] + ceil($itemsrow2["buycost"]/2) - $itemsrow["buycost"]; 

}else{

$newgold $userrow["gold"]; 

}

$newattack $userrow["attackpower"] + $itemsrow["attribute"] - $itemsrow2["attribute"]; 

$newid $itemsrow["id"]; 

$newname $itemsrow["name"]; 

$userid $userrow["id"]; 

if (
$userrow["currenthp"] > $userrow["maxhp"]) { $newhp $userrow["maxhp"]; } else { $newhp $userrow["currenthp"]; } 

if (
$userrow["currentmp"] > $userrow["maxmp"]) { $newmp $userrow["maxmp"]; } else { $newmp $userrow["currentmp"]; } 

if (
$userrow["currenttp"] > $userrow["maxtp"]) { $newtp $userrow["maxtp"]; } else { $newtp $userrow["currenttp"]; } 



$updatequery doquery("UPDATE {{table}} SET $specialchange1 $specialchange2 prarme=0, attackpower='$newattack', weaponid='$newid', weaponname='$newname', currenthp='$newhp', currentmp='$newmp', currenttp='$newtp' WHERE id='".$userrow["id"]."' LIMIT 1""users"); 





doquery("UPDATE {{table}} set weaponname='".$nvwname."', weaponid='".$nvwid."', inv".$numinv."='".$nvinvid."' WHERE id='".$userrow["id"]."'""users");

display("<center>L'objet à bien été équipé.<a href='index.php?do=inventaire'>Retour</a></center>""itemused");

}

if  (
$inv["type"] == 2)

{

$nvaname $inv["name"];

$nvaid $inv["id"];

$nvinvid $userrow["armorid"];



// Check if they already have an item in the slot. 

if ($userrow["armorid"] != 0) { 

$itemsquery2 doquery("SELECT * FROM {{table}} WHERE id='".$userrow["armorid"]."' LIMIT 1""items"); 

$itemsrow2 mysql_fetch_array($itemsquery2); 

} else { 

$itemsrow2 = array("attribute"=>0,"buycost"=>0,"special"=>"Aucun"); 





// Special item fields. 

$specialchange1 ""

$specialchange2 ""

if (
$itemsrow["special"] != "Aucun") { 

$special explode(",",$itemsrow["special"]); 

$tochange $special[0]; 

$userrow[$tochange] = $userrow[$tochange] + $special[1]; 

$specialchange1 "$tochange='".$userrow[$tochange]."',"

if (
$tochange == "strength") { $userrow["attackpower"] += $special[1]; } 

if (
$tochange == "dexterity") { $userrow["defensepower"] += $special[1]; } 



if (
$itemsrow2["special"] != "Aucun") { 

$special2 explode(",",$itemsrow2["special"]); 

$tochange2 $special2[0]; 

$userrow[$tochange2] = $userrow[$tochange2] - $special2[1]; 

$specialchange2 "$tochange2='".$userrow[$tochange2]."',"

if (
$tochange2 == "strength") { $userrow["attackpower"] -= $special2[1]; } 

if (
$tochange2 == "dexterity") { $userrow["defensepower"] -= $special2[1]; } 





// New stats. 

if ($userrow['charname'] != $townrow['commercant1']){

$newgold $userrow["gold"] + ceil($itemsrow2["buycost"]/2) - $itemsrow["buycost"]; 

}else{

$newgold $userrow["gold"]; 

}

$newdefense $userrow["defensepower"] + $itemsrow["attribute"] - $itemsrow2["attribute"]; 

$newid $itemsrow["id"]; 

$newname $itemsrow["name"]; 

$userid $userrow["id"]; 

if (
$userrow["currenthp"] > $userrow["maxhp"]) { $newhp $userrow["maxhp"]; } else { $newhp $userrow["currenthp"]; } 

if (
$userrow["currentmp"] > $userrow["maxmp"]) { $newmp $userrow["maxmp"]; } else { $newmp $userrow["currentmp"]; } 

if (
$userrow["currenttp"] > $userrow["maxtp"]) { $newtp $userrow["maxtp"]; } else { $newtp $userrow["currenttp"]; } 



$updatequery doquery("UPDATE {{table}} SET $specialchange1 $specialchange2 ptarmure=0, defensepower='$newdefense', armorid='$newid', armorname='$newname', currenthp='$newhp', currentmp='$newmp', currenttp='$newtp' WHERE id='".$userros["id"]."' LIMIT 1""users"); 



doquery("UPDATE {{table}} set armorname='".$nvaname."', armorid='".$nvaid."', inv".$numinv."='".$nvinvid."' WHERE id='".$userrow["id"]."'""users");

display("<center>L'objet a bien été équipé.<a href='index.php?do=inventaire'>Retour</a></center>""itemused");

}

if  (
$inv["type"] == 3)

{

$nvsname $inv["name"];

$nvsid $inv["id"];

$nvinvid $userrow["shieldid"];



// Check if they already have an item in the slot. 

if ($userrow["shieldid"] != 0) { 

$itemsquery2 doquery("SELECT * FROM {{table}} WHERE id='".$userrow["shieldid"]."' LIMIT 1""items"); 

$itemsrow2 mysql_fetch_array($itemsquery2); 

} else { 

$itemsrow2 = array("attribute"=>0,"buycost"=>0,"special"=>"Aucun"); 





// Special item fields. 

$specialchange1 ""

$specialchange2 ""

if (
$itemsrow["special"] != "Aucun") { 

$special explode(",",$itemsrow["special"]); 

$tochange $special[0]; 

$userrow[$tochange] = $userrow[$tochange] + $special[1]; 

$specialchange1 "$tochange='".$userrow[$tochange]."',"

if (
$tochange == "strength") { $userrow["attackpower"] += $special[1]; } 

if (
$tochange == "dexterity") { $userrow["defensepower"] += $special[1]; } 



if (
$itemsrow2["special"] != "Aucun") { 

$special2 explode(",",$itemsrow2["special"]); 

$tochange2 $special2[0]; 

$userrow[$tochange2] = $userrow[$tochange2] - $special2[1]; 

$specialchange2 "$tochange2='".$userrow[$tochange2]."',"

if (
$tochange2 == "strength") { $userrow["attackpower"] -= $special2[1]; } 

if (
$tochange2 == "dexterity") { $userrow["defensepower"] -= $special2[1]; } 





// New stats. 

if ($userrow['charname'] != $townrow['commercant1']){

$newgold $userrow["gold"] + ceil($itemsrow2["buycost"]/2) - $itemsrow["buycost"]; 

}else{

$newgold $userrow["gold"]; 



$newdefense $userrow["defensepower"] + $itemsrow["attribute"] - $itemsrow2["attribute"]; 

$newid $itemsrow["id"]; 

$newname $itemsrow["name"]; 

$userid $userrow["id"]; 

if (
$userrow["currenthp"] > $userrow["maxhp"]) { $newhp $userrow["maxhp"]; } else { $newhp $userrow["currenthp"]; } 

if (
$userrow["currentmp"] > $userrow["maxmp"]) { $newmp $userrow["maxmp"]; } else { $newmp $userrow["currentmp"]; } 

if (
$userrow["currenttp"] > $userrow["maxtp"]) { $newtp $userrow["maxtp"]; } else { $newtp $userrow["currenttp"]; } 



$updatequery doquery("UPDATE {{table}} SET $specialchange1 $specialchange2 ptarmure=0, defensepower='$newdefense', shieldid='$newid', shieldname='$newname', currenthp='$newhp', currentmp='$newmp', currenttp='$newtp' WHERE id='".$userrow["id"]."' LIMIT 1""users"); 





doquery("UPDATE {{table}} set shieldname='".$nvsname."', shieldid='".$nvsid."', inv".$numinv."='".$nvinvid."' WHERE id='".$userrow["id"]."'""users");

display("<center>L'objet a bien été équipé.<a href='index.php?do=inventaire'>Retour</a></center>""itemused");

}

}



function 
jeter()

{

global 
$userrow;

//récupération de l'inventaire

if ($userrow["inv1"]<>0);

{

$inv1q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv1"], "items");

$inv1=mysql_fetch_array($inv1q);

$img1="images/items/".$inv1["image"].".gif";

}

if(
$userrow["inv1"]==0)

{

$img1="images/items/0.gif";

}



if (
$userrow["inv2"]<>0)

{

$inv2q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv2"], "items");

$inv2=mysql_fetch_array($inv2q);

$img2="images/items/".$inv2["image"].".gif";

}

if(
$userrow["inv2"]==0)

{

$img2="images/items/0.gif";

}



if (
$userrow["inv3"]<>0)

{

$inv3q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv3"], "items");

$inv3=mysql_fetch_array($inv3q);

$img3="images/items/".$inv3["image"].".gif";

}

if(
$userrow["inv3"]==0)

{

$img3="images/items/0.gif";

}



if (
$userrow["inv4"]<>0)

{

$inv4q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv4"], "items");

$inv4=mysql_fetch_array($inv4q);

$img4="images/items/".$inv4["image"].".gif";

}

if(
$userrow["inv4"]==0)

{

$img4="images/items/0.gif";

}



if (
$userrow["inv5"]<>0)

{

$inv5q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv5"], "items");

$inv5=mysql_fetch_array($inv5q);

$img5="images/items/".$inv5["image"].".gif";

}

if(
$userrow["inv5"]==0)

{

$img5="images/items/0.gif";

}



if (
$userrow["inv6"]<>0)

{

$inv6q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv6"], "items");

$inv6=mysql_fetch_array($inv6q);

$img6="images/items/".$inv6["image"].".gif";

}

if(
$userrow["inv6"]==0)

{

$img6="images/items/0.gif";

}



if (
$userrow["inv7"]<>0)

{

$inv7q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv7"], "items");

$inv7=mysql_fetch_array($inv7q);

$img7="images/items/".$inv7["image"].".gif";

}

if(
$userrow["inv7"]==0)

{

$img7="images/items/0.gif";

}



if (
$userrow["inv8"]<>0)

{

$inv8q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv8"], "items");

$inv8=mysql_fetch_array($inv8q);

$img8="images/items/".$inv8["image"].".gif";

}

if(
$userrow["inv8"]==0)

{

$img8="images/items/0.gif";

}



if (
$userrow["inv9"]<>0)

{

$inv9q=doquery("SELECT * FROM {{table}} WHERE id=".$userrow["inv9"], "items");

$inv9=mysql_fetch_array($inv9q);

$img9="images/items/".$inv9["image"].".gif";

}

if(
$userrow["inv9"]==0)

{

$img9="images/items/0.gif";

}



display ('<center><b>Quel objet voulez-vous jeter ?</b>



<table border=5><tr>

<td><a href="index.php?do=jeter2:1"><img src="'
.$img1.'" width=40 height=40></a></td>

<td><a href="index.php?do=jeter2:2"><img src="'
.$img2.'" width=40 height=40></a></td>

<td><a href="index.php?do=jeter2:3"><img src="'
.$img3.'" width=40 height=40></a></td>

</tr><tr>

<td><a href="index.php?do=jeter2:4"><img src="'
.$img4.'" width=40 height=40></a></td>

<td><a href="index.php?do=jeter2:5"><img src="'
.$img5.'" width=40 height=40></a></td>

<td><a href="index.php?do=jeter2:6"><img src="'
.$img6.'" width=40 height=40></a></td>

</tr><tr>

<td><a href="index.php?do=jeter2:7"><img src="'
.$img7.'" width=40 height=40></a></td>

<td><a href="index.php?do=jeter2:8"><img src="'
.$img8.'" width=40 height=40></a></td>

<td><a href="index.php?do=jeter2:9"><img src="'
.$img9.'" width=40 height=40></a></td>

</tr></table></center>'
"inventaire");

}



function 
jeter2($numinv)

{

global 
$userrow;

//récupération de l'inventaire

if ($numinv == '1')

{

$i1q=doquery("SELECT * FROM {{table}} WHERE id='".$userrow["inv1"]."'""items");

$inv=mysql_fetch_array($i1q);

}

elseif (
$numinv == '2')

{

$i2q=doquery("SELECT * FROM {{table}} WHERE id='".$userrow["inv2"]."'""items");

$inv=mysql_fetch_array($i2q);

}

elseif (
$numinv == '3')

{

$i3q=doquery("SELECT * FROM {{table}} WHERE id='".$userrow["inv3"]."'""items");

$inv=mysql_fetch_array($i3q);

}

elseif (
$numinv == '4')

{

$i4q=doquery("SELECT * FROM {{table}} WHERE id='".$userrow["inv4"]."'""items");

$inv=mysql_fetch_array($i4q);

}

elseif (
$numinv == '5')

{

$i5q=doquery("SELECT * FROM {{table}} WHERE id='".$userrow["inv5"