JeuWeb - Crée ton jeu par navigateur
[Carte] Système et galaxie - 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 : [Carte] Système et galaxie (/showthread.php?tid=29)

Pages : 1 2 3 4 5 6 7 8


RE: Une map 5*5 : methode avec systeme et galaxie - blackdemon - 22-03-2008

Excusez moi cela fonctionne aprésent mais je pensais sincèrement que la premiere aide donnée par SquallMazento avait fais débuger la 1ere partie du bug mais le 2eme etait provoqué par ma bétise et je m'emporte facilement Confusedtupid:


RE: Une map 5*5 : methode avec systeme et galaxie - letoine - 21-04-2008

Génial, ca marche super !


RE: [Carte] Système et galaxie - sadira - 18-06-2010

Merci pour ce superbe code, ca fonctionne parfaitement, néanmoins j'ai une petite question:

Lors de l'enregistrement d'un utilisateur, je doit insérer le pseudo, la galaxie, le système et la position (entre la valeur 12 et 23).

Comment puis-je faire pour assigner une valeur "galaxie", "système" et "position" aléatoire qui ne correspond à aucun enregistrement?

Est ce que "NOT IN" est la bonne piste à suivre ou bien faut il générer des variables avant?
par exemple:
Code :
INSERT INTO table_carte (`pseudo`,`galaxie`,`systeme`,`position`) VALUES ('" . $row['uLogin'] . "',$g,$s,$p)

Merci de l'aide que vous pourrez m'apporter


RE: [Carte] Système et galaxie - php_addict - 18-06-2010

whaou, ca c'est un topic qui commence a dater un peu, tu avais abandonné le projet?

(18-06-2010, 04:36 PM)sadira a écrit : Comment puis-je faire pour assigner une valeur "galaxie", "système" et "position" aléatoire qui ne correspond à aucun enregistrement?

Est ce que "NOT IN" est la bonne piste à suivre ou bien faut il générer des variables avant?

euh...non pas de NOT IN, relis la doc de mysql, si tu veux des valeurs aléatoires tu doit les générer toi meme en fonction de ce que tu veux...

un post recent à ce sujet: -> http://www.jeuweb.org/showthread.php?tid=3235&highlight=rand

la doc php:

rand — Génère une valeur aléatoire -> http://php.net/manual/fr/function.rand.php
mt_rand -> http://php.net/manual/fr/function.mt-rand.php


RE: [Carte] Système et galaxie - atra27 - 18-06-2010

Random puis check en sql si la positions est prise par un where, si sql te retourne rien, tu fait un insert, s'il te retourne quelque chose, la position est prise donc rerandom puis reverrif etc...

On va dire que cette solution est viable quand tu as une énorme quantité de positions libres... mais lorsque tu aura plus de 75% de positions de prises je pense qu'il faudra faire plusieurs tests avant de trouver une position de libre...

Reste ensuite une solution de faux aléatoire, tu note en sql/fichier le nombre d'inscrit et a partir de cette valeur, tu crée un algorithme qui te sort une position galaxie/SS/position
exemple:
$inscrit=nombre d'inscrits avant le joueur
moi perso je ferai:
$inscrit++;
$galaxie=($inscrit%10)*10;
$systeme=($inscrit%399)*399;
$position=($inscrit%15)*15;

Je base ce système sur une mise en place de 10 galaxie, 399 système par galaxie et 15 positions par système (config ogame si je me souvient bien...)
Il faudrait vérifier que cet algo ne ressort jamais deux fois les mêmes valeurs, j'ai pas le temps de tester mais j'ai déjà vu un codeur faire quelque chose de similaire... c'était pour un FPS (pas le même style :p)...


RE: [Carte] Système et galaxie - sadira - 18-06-2010

atra27> Merci pour cette solution, en effet cela posera sans doute problème dans les 25% de cas restants mais je vais tester cette méthode.

php_addict > Merci pour les infos

Je vais partir sur la méthode "simple" pour vérifier si l'enregistrement existe en base.
En vous remerciant