Accueil Connexion Inscription Membres Rechercher Le t'chat Accéder au jeu


Index / Les mises à jours et Mods / Le dojo







 NoiA
Membre

Messages : 317
Remonter

Le dojo

Posté le 16/02/2006 à 20:51:40

Une autre sorte de pvp plus simple que j'ai traduit de chez dk :

Dans versus2.php (a crée):


Code :

 <?php

//made by doublet

//for more information: admin@maffia.pri.ee

function fight0() {

global 
$userrow$numqueries;



if (isset(
$_POST['call'])) {

    
$query doquery("SELECT*FROM {{table}} WHERE charname='".$_POST['enemy']."' LIMIT 1""users");

    
$row mysql_fetch_array($query);

    
$maxbet $userrow["experience"];

    
$sum $row["gold"] + $row["bank"] / 2;

    

if (
$_POST['bet'] > $maxbet) { display("Vous pouvez pas miser plus de gils que votre experience. Miser beaucoup moins la prochaine fois.<p><a href="index.php?do=fight0">Retour dans le dojo</a>""Error"); die(); }

elseif (
$_POST['bet'] > $userrow["gold"]) { display("Vous n'avez pas assez de gils pour ce defis.<p><a href="index.php?do=bank">Passer à la banque</a>""ERROR"); die(); }



elseif (
$_POST['bet'] == "0") { display("Radin !! Misez des gils.<br /><a href="index.php?do=fight0">Go back</a>""ERROR"); die(); }

elseif (
$_POST['enemy'] == "") { display("Defis anuler<a href="index.php?do=fight0">Retourner au dojo</a>""ERROR"); die(); }



elseif (
$_POST['bet'] > $sum) { display("Votre rival n'a pas assez de gils, faite baisser la mise.<br /><a href="index.php?do=fight0">Retourner au dojo</a>""ERROR");





} else {

$newgold2 $userrow["gold"] - $_POST['bet'];

$fightlvl $userrow["strength"] + $userrow["dexterity"]; 

doquery("INSERT INTO {{table}} SET id='', challenger='".$userrow["id"]."', bet='".$_POST['bet']."', charname='".$userrow["charname"]."', reciver='".$row["id"]."', fightlvl='$fightlvl'""fight");



doquery("UPDATE {{table}} SET gold='$newgold2' WHERE id='".$userrow["id"]."' LIMIT 1""users"); 



$page .= "Challenge reussit<a href="index.php">Retourner en ville</a>"; } } 

else {

$maxbet $userrow["experience"];

             
$page .= "Rival = joueur a défier.<br />Mise = Le joueur vainqueur gagnera <strong></strong><br />";

            
$page .= "<form action=index.php?do=fight0 method=post><br />";

            
$page .= "Rival: <input type=text name=enemy size=10><br />";

            
$page .= "Mise maximum <strong>$$maxbet </strong><br />";

            
$page .= "Mise:<input type=text name=bet size=10><br />";

            
$page .= "<input type=submit value=Call name=call></form><br /><br />"

    
$page .= "<a href="index.php">Retourner en ville</a>"; }

    

    

    
display($page"Defi tournoi");

}



 function 
fight2() {

global 
$userrow$numqueries;

      
$page .= "<table width=500 class=title><tr><td>Defie</td></tr></table>";

    
$page .= "<table width=500><tr class=title><td></td><td width="200"><strong>Joueur vous defiant</strong></td><td><strong>Mise</strong></td><td widh=150></td><td></td></tr>"

 
$query doquery("SELECT*FROM {{table}} WHERE reciver='".$userrow["id"]."'""fight");

 
$rank 1;

    while (
$row mysql_fetch_array($query)) {

                     
$page .= "<tr><td><b>$rank</b></td><td>".$row["charname"]."</td><td >$".$row["bet"]."</td><td><a href="index.php?do=fight3:".$row["id"]."">[Accepter le duel]</a></td><td><a href="index.php?do=fight4:".$row["id"]."">[Refuser le duel]</a></tr> "

        

    
$rank++;

    }

    if (
mysql_num_rows($query) == 0) { $page .= "<tr><td width='100%'>Vous n'avez pas de defie.</td></tr> "; } // Which hopefully isnt the case.

    
$page .= "</table>";



$page .= "<a href="index.php">Retourner en ville</a>";

    
display($page"Dojo");

}

 



 function 
fight3($id) { // 

global $userrow$numqueries;



 
$query doquery("SELECT*FROM {{table}} WHERE id='$id'""fight");

$row mysql_fetch_array($query);



 
$vastanequery doquery("SELECT*FROM {{table}} WHERE id='".$row["challenger"]."'""users"); 

$vastanerow mysql_fetch_array($vastanequery); // it is you rivals query...do not change it



if(isset($_POST['lose'])) {



//Sed letter to winner

$win $row["bet"] * 2;

$title "Victoire";

$message "You won duel against ".$userrow["charname"].". You won $".$win."";

doquery("INSERT INTO {{table}} SET id='', owner='".$row["challenger"]."', sender='', message='$message', title='$title', date=NOW()""mail");

//update tabel....winner

$newgold $vastanerow["gold"] + $win;

$updatequery doquery("UPDATE {{table}} SET gold='$newgold' WHERE id='".$row["challenger"]."'""users");

//update table...looser

$newgold2 =$userrow["gold"] - $row["bet"];

$updatequery doquery("UPDATE {{table}} SET gold='$newgold2' WHERE id='".$userrow["id"]."'""users");

//what displays

$page.= "Vous avez perdu. Vous perdez ".$row["bet"]."gil(s)<p><a href="index.php">Retourner en ville</a>";

//delete row from mysql

doquery("DELETE FROM {{table}} WHERE id='$id'""fight");

}  

 

elseif(isset(
$_POST['win'])) {

//send lewtter

$win $row["bet"] * 2;

$title "Challenge defeat";

$message "You were defeated by ".$userrow["charname"]." and u lost  $".$row["bet"]."";

doquery("INSERT INTO {{table}} SET id='', owner='".$row["challenger"]."', sender='', message='$message', title='$title', date=NOW()""mail");

//update table...looser

$newgold $vastanerow["gold"] - $row["bet"];

$updatequery doquery("UPDATE {{table}} SET gold='$newgold' WHERE id='".$row["challenger"]."' ""users");

//update tabel....winner

$newgold2 $userrow["gold"] + $row["bet"];

$updatequery doquery("UPDATE {{table}} SET gold='$newgold2' WHERE id='".$userrow["id"]."' ""users");

//what displays

$page.= "Vous avez gagner! Vous remportez ".$row["bet"]."gil(s)<p><a href="index.php">Retourner en ville</a>";

//delete row from mysql

doquery("DELETE FROM {{table}} WHERE id='$id'""fight");



}





elseif(
$row["fightlvl"] > $userrow["fightlvl"]) //you lose

 
$page.= "<table>";

 
$page.= "<tr><td><img src="".$userrow["avatarid"].""></td><td>V.S</td><td><img src="".$vastanerow["avatarid"].""></td></tr><tr>".$userrow["charname"]."</td><td></td><td>".$vastanerow["charname"]."</td></tr><tr></tr><tr><td> Vous avez perdu !</td></tr><tr><td><form action=index.php?do=fight3:$id method=post><input type=submit value='Continuer' name=lose></td></tr></table>"; }



elseif(
$vastanerow["fightlvl"] < $userrow["fightlvl"]) //you won

 
$page.= "<table>";

 
$page.= "<tr><td><img src="".$userrow["avatarid"].""></td><td>V.S</td><td><img src="".$vastanerow["avatarid"].""></td></tr><tr>".$userrow["charname"]."</td><td></td><td>".$vastanerow["charname"]."</td></tr><tr></tr><tr><td>Vous avez gagner le défis</td></tr><tr><td><form action=index.php?do=fight3:$id method=post><input type=submit value='Continuer' name=won></td></tr></table>"; }

else { 
$page.="ERROR"; }

display($page"Defis"); 

}







 function 
fight4($id) { // 

        

        
global $userrow$numqueries$vastanerow;

  
$query doquery("SELECT * FROM {{table}} WHERE id='$id'""fight");

$row mysql_fetch_array($query);

$bet $row["bet"];

$challenger $row["challenger"];



 
$query2doquery("SELECT gold FROM {{table}} WHERE id='$challenger'""users");

$qrow mysql_fetch_array($query2);

$bet2 $qrow["gold"];



$newgold $bet2 $bet;

$query3 doquery("UPDATE {{table}} SET gold='$newgold' WHERE id='$challenger' LIMIT 1""users");

$query12 doquery("DELETE FROM {{table}} WHERE id='$id'  LIMIT 1""fight");

$page .= "<strong>defis anuler</strong>";

$page .= "<p><a href="index.php?do=fight2">Revenir au dojo</a>";



display($page"Annuler defis");

}

function 
mainfight() {

global 
$userrow;

$fightlvl $userrow["strength"] + $userrow["dexterity"]; 

$update doquery("UPDATE {{table}} SET fightlvl='$fightlvl' WHERE id='".$userrow["id"]."' LIMIT 1","users"); // updates fighting level

$page "<table width='100%'>

<tr><td width='20%'><img src='images/auberge.gif'></td><td><h3 class='title'>Dojo :</h3><li /><a href="index.php?do=fight0">Créer un défis</a><li /><a href="index.php?do=fight2">Verifier vos défis</a><li /><a href="index.php?do=kamp">Voir votre clan</a><li />Retourner<a href='index.php'> en ville</a></table><b>Classement des joueurs les plus puissants du jeu :</b>"
;

    
$page .= "<table width="100%">";

    
$topquery doquery("SELECT * FROM {{table}} ORDER BY level DESC LIMIT 20""users");

    
$rank 1;

    while (
$toprow mysql_fetch_array($topquery)) { 

        
$page .= "<tr><td width="10%"><b>$rank</b></td><td width="50"><a href="index.php?do=onlinechar:".$toprow["id"]."">".$toprow["charname"]."</a></td><td width="20%">Level: <b>".$toprow["level"]."</b></td><td width="20%">Exp: <b>".number_format($toprow["experience"])."</b></td></tr> ";

        
$rank++;

    }

    
$page .= "</table> <br /><br /> ";

display($page"Dojo - Tournoi"); }



?>




Dans index.php :


Code :

 elseif ($do[0] == "mainfight") { include('versus2.php'); mainfight(); }

    elseif (
$do[0] == "fight0") { include('versus2.php'); fight0(); }

    elseif (
$do[0] == "fight2") { include('versus2.php'); fight2(); }

    elseif (
$do[0] == "fight3") { include('versus2.php'); fight3($do[1]); }

    elseif (
$do[0] == "fight4") { include('versus2.php'); fight4($do[1]); }




Et dans towns.php(templates) :



Code :

 <img src="././images/pic2.gif" /><a href="index.php?do=mainfight"Defier un joueur</a>




Maintenant les sql :


Code :

 -- 

-- 
Structure de la table `rpg_fight`

-- 



CREATE TABLE `rpg_fight` (

  `
idsmallint(6NOT NULL auto_increment,

  `
challengersmallint(6NOT NULL default '0',

  `
betmediumint(9NOT NULL default '0',

  `
charnamevarchar(30NOT NULL default '',

  `
fightlvlmediumint(9NOT NULL default '0',

  `
reciversmallint(6NOT NULL default '0',

  
KEY `id` (`id`)

ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=;



-- 

-- 
Contenu de la table `rpg_fight`

-- 








Et dans ???_users:


Code :

 fightlvl varchar(25)







 ggdj3000
Membre

Messages : 436
Remonter

RE:Le dojo

Posté le 17/02/2006 à 07:33:05

je le déconseille car dès qu'on gagne on monte automatiquement d'un lvl


-------------------------------------------------------




Sophie
Visiteur
Remonter

RE:Le dojo

Posté le 18/02/2006 à 19:25:33

J'ai tout fais mais lorsque je lance ça me met

Parse error: parse error, unexpected T_STRING in /var/www/free.fr/f/1/realpain/versus2.php on line 13


='( pkoi ? Sinon ton script est génial bravo!!




 mark
Membre

Messages : 296
Remonter

RE:Le dojo

Posté le 18/02/2006 à 19:38:26

sophie je crois qu tu serais mieu avec l'autre version de pvp que tu peut trouver sur ce forum


-------------------------------------------------------


Hé les glands voici mon status sur Kopete(ben oui vous croyez que je suis encore sous windows)


Sophie
Visiteur
Remonter

RE:Le dojo

Posté le 18/02/2006 à 21:33:09

:`( oui marc je compte l'installer aussi mais j'aimerai bien faire une partie tournoi dans la ville. est-ce que tu peux m'aider s'il te plait

ca me dit
Parse error: parse error, unexpected T_STRING in /var/www/free.fr/f/1/realpain/versus2.php on line 13

a la ligne 13 j'ai
if ($_POST['bet'] > $maxbet) { display("Vous pouvez pas miser plus de gils que votre experience.<br> Miser beaucoup moins la prochaine fois.<p><a href="index.php?do=fight0">Retour dans le dojo</a>", "Error"); die(); }

je pense que j'ai du faire une fausse manoeuvre dans la bdd sql avec t dans rpg_users:
fightlvl varchar(25)
Merci sophie )




 mark
Membre

Messages : 296
Remonter

RE:Le dojo

Posté le 18/02/2006 à 21:53:44

le problème vien tu lien met des avant les " et je crois que sa devrai aller


-------------------------------------------------------


Hé les glands voici mon status sur Kopete(ben oui vous croyez que je suis encore sous windows)


Sophie
Visiteur
Remonter

RE:Le dojo

Posté le 18/02/2006 à 22:13:26

je dois mettre des espaces avant les " ? }




Sophie
Visiteur
Remonter

RE:Le dojo

Posté le 18/02/2006 à 22:52:32

Je dois mettre des espaces devant les " ?




 -Squall
Administrateur

-Squall
Messages : 1263
Remonter

RE:Le dojo

Posté le 19/02/2006 à 01:35:42

Les " tout seul je pense pas que ca fonctionnera. Enleve tout simplement les 2 " pour le lien et laisse les autres


-------------------------------------------------------
Version actuelle : 1.2b
Site officiel : http://www.rpgillusion.net'


 mark
Membre

Messages : 296
Remonter

RE:Le dojo

Posté le 19/02/2006 à 02:09:00

excuse j'avais pas mi la balise de code met sa avant
Code :

  


:p


-------------------------------------------------------


Hé les glands voici mon status sur Kopete(ben oui vous croyez que je suis encore sous windows)









® RPGillusion.net - Tous droits réservés - 2005-2008. Reproduction interdite par les droits d'auteurs.