JeuWeb - Crée ton jeu par navigateur
Liste des constructions en cours - 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 : Liste des constructions en cours (/showthread.php?tid=1430)



Liste des constructions en cours - akira - 07-07-2007

Bonjour à toutes et à tous , c'est mon premier message dans jeuweb.org.
Bon pour commencer je vous explique mon cas :
d'abord j'ai une page (ex construction.php), j'ai mis dans cette page des unitées (ex vaissaux) et pour construir une unité il faut mettre la quantité voulue dans un champ texte puis valider le formulaire et et la construction commence.
Tous ça c'est fait , mais le problème c'est que je veux que la construction suit un ordre selon une liste où les productions sont classées selon le temps de leur activation ( ex : la 1er production est "vaisseu A" puis la 2ème est "vaissau B" et insi de suite...), et à chaque fois qu'une production est achevée on passe à l'autre qui la suit .
Si quelequ'un a une idée, n'hésitez pas de me répondre, si mon explication est claire.
---------Merci d'avance---------


RE: Liste des constructions en cours - Mysterarts - 07-07-2007

Salut !
Alors comme premier message, j'aurais préféré que ça soit ta présentation, dans la section correspondante du forum ^^
Pour ton système, on vois très bien ce que tu veux faire... ogame ?
Pour ton problème, je ne suis effectivement pas sur de comprendre : avec des timestamp, tu peux te débrouiller pour faire ce que je crois que tu veux faire (C compliqué ^^)
Quand la page est réactualisée, tu regardes combien de temps est passé. Imaginons : 3000 secondes. Si par exemple dans ta base de donnée de construction tu as :
nom - durée (seconde)
Bat 1 - 2300
Bat 2 - 450
Bat 3 - 2000
Alors tu sera que Bat 1 et 2 sont construits, et qu'il reste 1750 seconde avant la fin de Bat 3... Je peux expliquer mieux si tu le souhaite, là c'est un peu rapide, et puis je suis pas sur de t'avoir compris ^^

Mysterarts


RE: Liste des constructions en cours - kunutheking - 07-07-2007

Tu crée une nouvelle table :
id_joueur | ordre | type_de_vaisseau | timestamp_début_construction | durée_de_la_construction

Ensuite c'est comme la gestion de ressources en temps réel :
Pour le vaisseau qui a l'ordre = 1, si le timestamp_actuel > timestamp_début_construction + durée_de_la_construction, tu ajoutes le vaisseau a ta flotte et tu regarde si c'est pareil pour le vaisseau qui a l'ordre 2 (tu fais une boucle)
Sinon c'est fini, le vaisseau qui a l'ordre = 1 n'est pas encore construit.

A chaque fois que tu met un vaisseau a construire tu compte le nombre de vaisseaux en cours de construction et l'ordre du nouveau vaisseau sera égal au nombre de vaisseau en cours + 1.

Je sais pas si j'explique très bien. Il y a peut-être des meilleures méthodes mais moi j'aurais fait comme ça.


RE: Liste des constructions en cours - akira - 07-07-2007

Exactement c'est le style du chantier spatiale d'ogame.


RE: Liste des constructions en cours - akira - 07-07-2007

Oui, je crois que c'est ce champ "ordre" qui va résoudre mon problème , c'est ce qui m'a échapé . Je vais essayer et je vous informe. Merci à vous.


RE: Liste des constructions en cours - Mysterarts - 07-07-2007

Après le petit tour dans la partie "présentation" (merchi Smile), il faudrait voir un faire un petit tour dans la partie Réglement (merchi d'avance Smile) : le double post n'est pas recommandé ^^
Bonne chance pour ton script !

Mysterarts


RE: Liste des constructions en cours - zigzog - 31-07-2007

Salut,
D'abord je m'excuse pour cette enorme up...

Ma base est comme ceci:
ordre | id_village | id_soldat | nb_soldat | time

je voudrais savoir comment faire pour selectionner le plus petit "ordre" et quand id_village=$id quand j'interroge ma BDD?
Mon ordre sera un primary_key avec un auto_increment

En sachant donc qu'au bout de 100 000 commandes(tous les joueurs compris) je ne veux pas faire une boucle qui va me prendre des plombes...

Merci d'avance!

Amicalement, ZigZog


RE: Liste des constructions en cours - Nessper - 31-07-2007

Code PHP :
<?php 
ORDER BY ordre ASC LIMIT 0
,1

(désolé pour cette réponse mais je ne vois pas quoi dire d'autre ^^)


RE: Liste des constructions en cours - Mysterarts - 31-07-2007

J'aurais ajouté un petit :

"Le SDZ est ton ami"

Histoire de remplir un peu le vide ^^

Mysterarts