Gérer des déplacements pour un jeu en PHP - PHP - Programmation
Marsh Posté le 26-08-2004 à 23:53:59
perso j'aurais fais un tableau et chaque case du tableau correspond a une coordonnée X-Y qui serait enregistrer dans un variable de type array.
Marsh Posté le 27-08-2004 à 00:00:26
euh...
ouais, mais je vois pas trop comment faire...
voici mon code :
Code :
|
parce que si je met dans un tableau, comment faire pour que seule les 8 cases autour du bonhomme soit cliquables ?
Et comment faire comprendre à PHP les coordonnées exactes de la case ?
j'avoue que je rame...
Marsh Posté le 27-08-2004 à 00:06:51
tu génère un tableau html dynamiquement a partir des information que tu lui donne. A chaque fois qu'il va générer tu poses la question "quoi doit etre à l'interieur" il y aura forcement un concordence entre la position de cette case et le personnage qui doit y etre.
Marsh Posté le 27-08-2004 à 00:07:50
soit $posx l'abcisse du joueur et $posy l'ordonnée, tu fait un test
Code :
|
Marsh Posté le 27-08-2004 à 00:16:09
oki les gars je vais tester ca demain =)
merci encore !
EDIT : ca marche vs etes les meilleurs
Marsh Posté le 27-08-2004 à 17:06:41
Ok, par contre maintenant j'ai un nouveau probleme
Comment faire pour que si l'image d'un autre joueur soit dans les 8 cases adjacentes, le lien ne s'affiche pas ?
Parce que jusque la, le lien s'affiche au dessus de l'image, donc le joueur peut se superposer à un autre personnage
voici mon code :
Code :
|
Marsh Posté le 27-08-2004 à 20:01:39
Tu peux aussi faire un truc tout con, c'est un tableau à côté de ta map qui propose les huit directions choisissable via un bouton radio ou une image cliquable. Suffit de mettre ou non le bouton/image sous réserve que la case est atteignable ou non, pour ca tu rajoutes sur ta case un attribut qui la rend atteignable (si t'as un arbre sur ta case, elle sera pas atteignable par exemple ) + test si y'a un perso sur la case (si t'autorise plusieurs perso par case pas besoin du test) + test sur la coordonnée (si en dehors de la map alors inatteignable). J'espère avoir été assez clair
Ca évite de surcharger ta map avec un div cliquable et je trouve ca plus clair.
Et tu peux répéter ce principe si tu utilise l'orientation du perso sauf que la tu poses toutes les orientations possibles, pas besoin d'en empêcher.
Bonne chance pour la suite de ton jeu
Marsh Posté le 27-08-2004 à 20:12:31
excellente idée
je vais m'y mettre..
par contre, ca va peut etre paraitre stupide, mais je ne vois pas du tout comment tester si une case est vide ou occupée (par un joueur,arbre,etc...)
Marsh Posté le 27-08-2004 à 21:42:13
Comment tu dessines ta carte ? comment tu sais dans quelle case se trouve chaque perso ?
Citation : $id[$c]=$result['id']; |
Je suppose que la dedans tu sais pour chaque coordonnées quel est le pseudo présent (en passant, c'est mieux de travailler avec des id que des pseudos pour des raisons de sécurité entres autres, si pseudo représente bien un perso). Si c'est pas ca, bah expliques voir comment tu sais qui se trouve ou
Marsh Posté le 27-08-2004 à 22:22:05
ba en fait, regarde mon code, je trace d'abord la premiere ligne d'ordonnée 0, ensuite je trace 30 case dans cette ligne, puis la ligne d'ordonnée 1 etc...
A chaque case tracée, je vérifie que le couple de coordonnée existe pour un membre. Si il existe alors on place <img src> sinon on continue de tracer.
Marsh Posté le 27-08-2004 à 23:47:52
ok, j'ai trouvé maintenant ca marche
par contre, comment faire pour que dans une boucle le nombre de départ soit 00 puis 01, 02, etc ...
Pareil lors de l'insertion ds Mysql (le 02 devient 2)
J'ai essayé avec :
Code :
|
mais ca fait tout bugué au niveau du placement des persos.
Si j'enlève les guillemets autour du 0, ca me met un message d'erreur
Marsh Posté le 26-08-2004 à 23:27:13
Bonsoir !
Je voudrais faire un jeu PHP sur le thème du seigneur des anneaux, et lors de mes recherches je suis tombé sur ce site :
http://enefel.le.jeu.free.fr/carte.php?id_match=272
et je trouve ca vraiment excellent.
J'ai essayé cette apresmidi de trouver comment il fait, mais j'avoue que je coince :
Pour l'instant ma page d'index positionne les joueurs sur les différents <div>, selon leurs coordonnées entrées dans la base de données .
Par contre problème de taille :
Comment faire pour que le joueur qui est loggué sous tel pseudo puisse bouger son bonhomme dans les 8 cases adjacentes (en cliquant dessus) et pas dans les autres cases ?
En gros, il faudrait que les 8 cases (ou moins s'il est contre un bord) autour du bonhomme soit cliquable avec un lien du style :
<a href="deplacement.php?joueur=machin&coord=X-Y" > avec les coordonnées de la nouvelle case à la place de X-Y.
Par contre toutes les autres cases ne seraient pas cliquables.
C'est un peu chaud nan ?
Ou alors je me complique la vie pour rien ?
Merci d'avance de m'aider