Systeme tours complexe ! - 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 : Systeme tours complexe ! (/showthread.php?tid=1044) |
Systeme tours complexe ! - zneman - 06-04-2007 Bonjour/bonsoir. Mon jeu (MagusWolrd) a énormément avancé ces derniers jours grace aux heures de travails (avec Oualala) que nous avons passé devant nos ecrans Pour autant, il nous reste un dernier codage important à faire (si si je vous jure :p) Et ce codage n'est autre que celui de la distribution des ressources ! Ce que l'on veut: - nous voulons que php regarde le timestamp actuel et le compare a celui enregistré dans la BDD. - Si ce l'écart entre les deux est de 3600 secondes (une heure), il faut qu'il ajoute a chaque membres X galds (la monnaie du jeu), X de mana et 1 tour ! Mes questions: - comment dire a php d'ajouter X Galds, X de mana et un tour sachant que les galds et le mana dépend de chaque membre ! - Faut il que la BDD soit constamment ouverte pour cela ? - Serrai ce mieux avec une tache Cron ? Voila, merci de votre aide, c'est le dernier Gros code du jeu, le seul qui nous manque pour lancer une version alpha (ca se dit ca :/ ?). Zneman RE: Systeme tours complexe ! - kunutheking - 06-04-2007 Oui avec un script cron que tu peux mettre en place avec des sites comme http://www.webcron.org/ RE: Systeme tours complexe ! - zneman - 06-04-2007 je sais bien mais le plus dure c'est d'actualiser chaque membre de ma table membres et de leur mettre les ressources qui correspondes aux paysans (pour les galds) et aux mages (pour le mana) RE: Systeme tours complexe ! - Shidame - 06-04-2007 ce qu'il faut que tu fasses (je te deconseil le cron toute les heures ca fais lourd) c'est bel et bien d'utiliser le timestamp tu stock un timestamp (derniere maj) et tu regarde pour tout les utilisateur ou le timestamp <= timestamp actuel - 3600 et tu actualises ce que tu as à actualiser^^ RE: Systeme tours complexe ! - zneman - 06-04-2007 zneman a écrit :je sais bien mais le plus dure c'est d'actualiser chaque membre de ma table membres et de leur mettre les ressources qui correspondes aux paysans (pour les galds) et aux mages (pour le mana) Ca je sais le faire Shidame Ce que je sais pas: comment dire a php d'ajouter X Galds, X de mana et un tour sachant que les galds et le mana dépend de chaque membre ! RE: Systeme tours complexe ! - Shidame - 06-04-2007 bah ca c'est toi qui vois les règles que tu veux, mais tu peux le faire via la requete sql directement sinon jette un oeil dans la rubrique Créer son jeu en PHP / PROGRAMMATION / Tutoriaux - scripts / Tutoriaux le sujet a déja été abordé au moins 3 fois je suis de bonne humeur tiens : http://www.jeuphp.com/board/showthread.php?tid=245 http://www.jeuphp.com/board/showthread.php?tid=530 http://www.jeuphp.com/board/showthread.php?tid=680 RE: Systeme tours complexe ! - Sephi-Chan - 06-04-2007 L'argent et la mana ajouté à chaque joueur est la même pour tout le monde (exemple : tous les joueurs gagnent 100 de mana ?) ou bien le joueur 1 va gagner 100 de mana, le joueur 2 en gagnera 38, etc. ? Si c'est le premier cas de figure, tu as juste à vérifier le timestamp, et si l'écart est de 3600 secondes, tu effectues la requête : UPDATE table_joueurs SET galds = galds + $x, mana = mana + $y, tour = tour + 1; Si c'est le second cas de figure, j'y réfléchis un peu dans la soirée et donne (peut-être) une réponse demain. Sephi-Chan RE: Systeme tours complexe ! - Shidame - 06-04-2007 il faut aussi penser au cas ou l'ecart est supérieur à 1h par exemple 6 heures, dans ce cas il faut en tenir compte et augmenter 6x les ressources RE: Systeme tours complexe ! - tchad - 07-04-2007 j'ai aussi eu ce problème avec une requete à faire qui ressemble à ce que tu veux faire fais une requète en boucle avec WHILE comme cet exemple : Code : <? RE: Systeme tours complexe ! - Haiken - 07-04-2007 Code : <? Mon dieu, qu'est-ce que c'est que ce code ? :heuuu: Tu sais que ça se simplifie en un seul "UPDATE nomdelatable set variable1=variable1+1" ?? |