JeuWeb - Crée ton jeu par navigateur
[Résolu] Affichage des ressources en temps réel - 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 : [Résolu] Affichage des ressources en temps réel (/showthread.php?tid=1296)



[Résolu] Affichage des ressources en temps réel - Shanks224 - 05-05-2008

Bonjour, j'ai trouver un script très intéressant pour afficher le nombre de ressources en temps réel (une partie en javascript évidemment et je n'y connais rien dans ce code que j'apprendrais dès que j'aurais un peu plus de temps ;-) ).
Ce script vient bien évidemment de votre forum et il fonctionne super bien... Sauf quand on essaie de l'inclure dans une autre page... Je suppose que la solution est stupide (comme dans 90% des cas ^^) mais moi je bloque, peut-être pourriez-vous m'éviter beaucoup de temps perdu pour rien svp?

Normalement, il y a des aide liées au script mais ici il n'y en a pas, donc je poste ma question ici, j'espere que ça ne dérange ;-)

Le script en question :

Citation :<?php
// Initialisation des variables
$iRessourcesDepart = 100; // le joueur possède au départ 100 unités de bois par exemple
$iProductionParSeconde = 1; // Sa menuiserie produit 1 bout de bois par seconde
$iTempsDerniereModif = time() - (2 * 60); // On va dire que la dernière mise à jour a été effectué il y a 2 min.

//on calcule le nombre de secondes écoulées depuis la dernière mise à jour
$iTempsActuel = time();
$iTempsEcoule = $iTempsActuel - $iTempsDerniereModif ; // Dans notre exemple, ce sera 2 min soit 2*60 = .... 120 s (^^)

// On calcule le nombre de ressources produites durant le temps écoulé
$iRessourceProduite = $iProductionParSeconde * $iTempsEcoule;

$iRessourceTotale = $iRessourcesDepart + $iRessourceProduite;

// Mise a jour dans la bdd
//[...]
?>
<html>
<head>
<script type="text/javascript">
var iRessourcesDepart = <?php echo $iRessourceTotale; ?>;
var iProductionParSeconde = <?php echo $iProductionParSeconde; ?>;
var iSecondes = 0;
function augmentation_ressource(){

document.getElementById("ressource").innerHTML = iRessourcesDepart+(iProductionParSeconde*iSecondes);
iSecondes++;
setTimeout("augmentation_ressource()",1000);

}
</script>
</head>
<body onload="augmentation_ressource()">
<p>Votre menuiserie à produit <span id="ressource"><?php echo $iRessourceTotale; ?></span> morceaux de bois.</p>
</body>
</html>



RE: Affichage des ressources en temps réel - Shakkah - 05-05-2008

Shanks224 a écrit :Ce script vient bien évidemment de votre forum et il fonctionne super bien... Sauf quand on essaie de l'inclure dans une autre page... Je suppose que la solution est stupide (comme dans 90% des cas ^^)

Comment tu l'inclus dans tes autres pages ?

Car dans le code que tu as postés tu l'inclus nul part.

P.s: il est de coutume de se présenter sur ce forum ^_^


RE: Affichage des ressources en temps réel - Shanks224 - 05-05-2008

Désolé pour la présentation :heuuu: je savais pas :heuuu: aujourd'hui, j'ai pas le temps mais ce week-end j'essaierais...

J'ai honte, je viens de trouver la solution... enfaite sans faire exprès j'avais déjà inclus le code plus haut et donc ça foirait un peu :mauvais: . C'est car j'avais fait une copie vite fait du code sur une page sur laquelle je travaillais et après j'ai oublié de le supprimer :heuuu:

Je m'excuse pour cette question inutile :heuuu:

Mais j'ai quand même une petite question, c'est comment fait-on pour supprimer les variable de session quand le visiteur se rend sur une page d'un autre site (genre en cliquant sur ses raccourcis; je ne demande pas la bete fonction session_destroy ) ?

Je me presenterais dès que j'aurais plus de temps ;-)


RE: Affichage des ressources en temps réel - Ekilio - 06-05-2008

Bonjour,

Code PHP :
<?php 
unset($_SESSION['toto']);

Comme ça ?


RE: Affichage des ressources en temps réel - Shakkah - 06-05-2008

Une variable de session à une durée de vie , donc elle va s'auto détruire toute seule comme une grande ^_^

Sinon pour le gérer toi même , il faudrait créer différents scripts / fonctions qui gérent tous les événements possible pour partir de ton site :
- Fermer le navigateur
- Changer de site

(je sais pas si tous son facilement faisable, je me suis pas penché sur la question).

En cherchant vite fait je t'ai trouvé ce lien http://php.developpez.com/faq/?page=securite#deconnexion_automatique qui t'aidera peut être.


RE: Affichage des ressources en temps réel - Shanks224 - 07-05-2008

Ok merci pour vos réponses utiles ;-)
Et pour parler du script un peu, j'aimerais pouvoir n'afficher que des chiffres entiers... mais il faut que ça soit dans le javascript car si je fais dans le code php (avec ceil) alors la personne gagnera trop par secondes...

Pourriez-vous me donner la ligne de javascript avec la fonction javascript svp ? merci d'avance


RE: Affichage des ressources en temps réel - Ekilio - 07-05-2008

Bonjour,

Sers-toi de l'objet Math et de ses fonctions :

http://www.commentcamarche.net/javascript/jsmath.php3

x = Math.round(6.01);
//donne x = 6
x = Math.round(3.80);
//donne x = 4
x = Math.round(3.50);
//donne x = 4