JeuWeb - Crée ton jeu par navigateur
fonction dans template ....? - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : fonction dans template ....? (/showthread.php?tid=1251)



fonction dans template ....? - maitremad - 03-06-2007

bonjours je débute depuis pas mal de temps j'apprends seul et donc doucement en fessant un petit jeu en php .....
mais je me trouve confronté a un problème ....que voici:
je voudrais faire une jauge de vie du personnage .
j'ai la fonction php pour le faire je les tester toute seul elle marche c'est sur .
je ne sais pas comment la rentrer dans ma template ....
car je lés mise dans un fichier common.php et comment l'appeler dans mon fichier template.tpl ?
je sens que c'est pas compliquer ...mais je ne trouve rien dans les moteur de recherche ......
s'il vous plais aider moi :respect:


RE: fonction dans template ....? - carlou - 03-06-2007

en TRES gros:

Code PHP :
<?php 
template
=new template()
include
"common.php";
ton traitement pour la jauge par ex
$jauge
=50;

$template = assign_vars(array (
'JAUGE' => $jauge
));

etc

et dans ton tpl:

Code PHP :
<?php 
<img src="image_jauge" width="{JAUGE}" height="10" alt="carburant"/>



RE: fonction dans template ....? - maitremad - 03-06-2007

ha .....mais j'ai une fonction pour mes barres ....
Code PHP :
<?php 
function barre($valeur, $max, $texte_alt="") {
$v=ceil($valeur);
$v2=$v;
$m=intval($max);

// pour du %, si on a plus de 100%, on limite à 100 pour ne pas avoir une barre de 3km de long...
// pour des barres au dela du %, remplacer 100 par $m
if ($v2>100) { $v2=100; }

if (
$v==$m && $valeur!=$m) { $v=floor($valeur); }

if (
$v==0) { // barre vide
$img1='<img src="img/barre_off_g.gif" title="'.$texte_alt.'" alt="'.$texte_alt.'" />';
$img2='';
$img3='<img src="img/barre_off.gif" width="100" height="12" title="'.$texte_alt.'" alt="'.$texte_alt.'" />';
$img4='<img src="img/barre_off_d.gif" title="'.$texte_alt.'" alt="'.$texte_alt.'" />';
}
// if
elseif ($v==$m || $v>$m) { // barre pleine
$img1='<img src="img/barre_on_g.gif" title="'.$texte_alt.'" alt="'.$texte_alt.'" />';
$img2='<img src="img/barre_on.gif" width="'.$v2.'" height="12" title="'.$texte_alt.'" alt="'.$texte_alt.'" />';
$img3='';
$img4='<img src="img/barre_on_d.gif" title="'.$texte_alt.'" alt="'.$texte_alt.'" />';
}
// elseif
else { // barre non pleine (et non vide)
$img1='<img src="img/barre_on_g.gif" title="'.$texte_altalt.'" alt="'.$texte_alt.'" />';
$img2='<img src="img/barre_on.gif" width="'.$v2.'" height="12" title="'.$texte_alt.'" alt="'.$texte_alt.'" /><img src="img/barre_bar.gif" title="'.$texte_alt.'" alt="'.$texte_alt.'" />';

// portion de barre vide
$r=$m-$v2;
if (
$r>0) {
$img3='<img src="img/barre_off.gif" width="'.$r.'" height="12" title="'.$texte_alt.'" alt="'.$texte_alt.'" />';
}
// if
else { $img3=''; } // else

$img4='<img src="img/barre_off_d.gif" title="'.$texte_alt.'" alt="'.$texte_alt.'" />';
}
// else

$retval= $img1.$img2.$img3.$img4;

return
$retval;
}
// function
?>

et ensuite je mets
Code PHP :
<?php 
echo barre($hp,$hp_max,$texte_alt="Point de vie");
mais c'est en php donc comment afficher cela dans ma template .....?


RE: fonction dans template ....? - carlou - 03-06-2007

si je reprends mon exemple :

Code PHP :
<?php 
template
=new template()
include
"common.php";
ton traitement pour la jauge par ex
$jauge
= barre($hp,$hp_max,$texte_alt="Point de vie");

$template = assign_vars(array (
'JAUGE' => $jauge
));
et dans le tpl::
a la place de
<img src="image_jauge" width="{JAUGE}" height="10" alt="carburant"/>

tu met juste:

{
JAUGE}



RE: fonction dans template ....? - maitremad - 03-06-2007

ha pardon .....je n'avez pas compris !!!
Merci beaucoup je vais m'empresser de tester cela !!!
merci Cool

edit: super j'ai tout compris et ça marche !!!!
merci encors !!!!!