JeuWeb - Crée ton jeu par navigateur
Une autre map avec un minimum de requête - 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 : Une autre map avec un minimum de requête (/showthread.php?tid=415)

Pages : 1 2 3 4 5


RE: Une autre map avec un minimum de requête - Kassak - 07-02-2007

Ah oui en effet^^J'avais mis persos au lieu de perso:heuuu:

Mmh, etant en pleine noobatitude, j'ia copié le code, mais euuh j'ai rien, du tout....Oo

J'ai fais mon systeme d'inscription deja, ma table membre s'apelle membres, dedant j'ai que le pseudo et mot de passe et l'id, je fais un mixte de la table perso et celle la??

Je m'y prend comment??

Puis pour mettre l'image d'un batiment, objets monstre...je fais comment?


RE: Une autre map avec un minimum de requête - barst - 07-02-2007

tu peux mixer ta table membre et perso où tu peux rajouter un champ à ta table membre : perso_id qui ferait le lien vers la table perso.

Pour ajouter des enregistrements dans les tables tu peux passer par une console d'administration de ta base du genre de phpmyadmin (fourni avec easyphp) ou te créer des pages/formulaires d'ajout/edition sur ces tables.

Personnellement, j'utilise une console d'administration que j'ai développé et où je peux gérer les éléments de mon jeu.
Cette cnosole d'admin est toujours la première partie que je développe en php, la partie jeu n'avance peut-être pas mais du coup j'ai une modélisation et une gestion de mes éléments totalement fini ce qui me permet de gagner du temps pour faire des modifs plus tard.


RE: Une autre map avec un minimum de requête - elazard - 07-07-2007

Bien le bonjour Smile j'ai lu ton tuto que je trouve très intéréssant, par contre je me posais une question:
Comment faire pour que seuls les joueurs online soient affichés sur la carte, je veux dire ce serait assez dérangeant de se faire poutrer par un joueur en étant déconnécté. J'ai pensé à un champ connecté dans la bdd, une simple condition si c'est oui (on active le listing de ce joueur sur la map) si pas on l'affiche pas. Par contre je me demandais comment changer ce champ de la bdd sur déconnecté. Si on crée une page de déconnection, c'est un bete update mais si le type se contente de fermer son navigateur?

Je vous remercie d'avance pour votre aide (meme si on pourrait dire que la question ne correspond que moyennement au sujet Smile)


RE: Une autre map avec un minimum de requête - Mysterarts - 07-07-2007

Tu peux par exemple enregistrer dans ta base de donnée, table joueurs, la date de sa dernière actualisation d'une page (un bête Update, justement, sur chaque page), pui spour savoir si il est connecté, tu fais une condition du genre :
if ((time() - $date_derniere_ action) < 1800) // Joueur connecté
else // Joueur déconnecté
Dans cette exemple, on considère qu'une personne est déconnecté au bout d'une demie heure d'inaction.
Je pense que c'est la manière la plus simple de faire.

Mysterarts


RE: Une autre map avec un minimum de requête - elazard - 07-07-2007

Ah oui c'est vrai que c'est assez simple donc dans l'ordre d'idée:

//on recupére tout ce qu'il y a sur le terrain dans le cadre à afficher===========
$qry3="select m3.x X,m3.y Y,m3.elt_type TYPE,p.id ID,p.image IMG,p.name NAME from map m3,perso p where [*] and m3.elt_type='".$elt_type['USER']."' and m3.elt_id=p.id and m3.x between ".$x." and ".($x+$vis_x-1)." and m3.y between ".$y." and ".($y+$vis_y-1)." ";

où [*] = condition du joueur connecté en fonction du timestamp donc en gros et sans tenir compte de la syntaxe $date_derniere_ action < 1800 ou alors je fais une vérification avant enfin ca c'est à voir

c'est bien ca?


RE: Une autre map avec un minimum de requête - elazard - 08-07-2007

j'ai encore uen question désolé pour le double post mais y'a un truc pas logique à savoir
http://www.heroes-world.be/test/hprpg/map.php regardez là où j'ai placé des ptits bonshommes les cases deviennent blanche et on ne peut pas passer dessus : / je comprend pas pourquoi (la deuxieme case blanche c'est un ptit bonhomme que j'ai nuke) si vous avez une idée jsuis preneur parce que j'ai beau voir le codej e capte pas (encore a la limite là ou je pose mon perso je comprend mais si j'en détruit un autre jvois pas pourquoi le terrain reviens pas à l'origine)

ah oui et quand je bouge la case reste normale : /

EDIT ah bah en fait j'ai compris c'est du super autisme, je remplacais la case en faisant un perso (donc rien quand il bougeait) au lieu de rajouter une entrée sur map contenant le perso : / voilà l'expression profonde de ce que je décrivais dans ma présentation


RE: Une autre map avec un minimum de requête - elazard - 22-07-2007

je me demandais : pour ajouter un elt_type genre les monstres les pnj et tout ca. Comment dois je modifier les requetes parce que bon, elle est assez compliquée :p et j'y comprends pas tout les trucs énoncés je me proposais de faire un truc du genre
Code PHP :
<?php 
//j'ajoute au début dans l'array

$elt_type['MOB'] = 4;

ensuite dans la requete qui sert à tout récup je fais

//on recupére tout ce qu'il y a sur le terrain dans le cadre à afficher===========
$qry1="select m1.x X,m1.y Y,m1.elt_type TYPE,t.id ID,t.image IMG,t.name NAME from map m1,terrain t where m1.elt_type='".$elt_type['GROUND']."' and m1.elt_id=t.id and m1.x between ".$x." and ".($x+$vis_x-1)." and m1.y between ".$y." and ".($y+$vis_y-1)." ";
$qry2="select m2.x X,m2.y Y,m2.elt_type TYPE,b.id ID,b.image IMG,b.name NAME from map m2,batiment b where m2.elt_type='".$elt_type['BUILD']."' and m2.elt_id=b.id and m2.x between ".$x." and ".($x+$vis_x-1)." and m2.y between ".$y." and ".($y+$vis_y-1)." ";
$qry3="select m3.x X,m3.y Y,m3.elt_type TYPE,p.id ID,p.image IMG,p.name NAME from map m3,perso p where m3.elt_type='".$elt_type['USER']."' and m3.elt_id=p.id and m3.x between ".$x." and ".($x+$vis_x-1)." and m3.y between ".$y." and ".($y+$vis_y-1)." ";
//ma requete mob
$qry4="select m4.x X,m4.y Y,m4.elt_type TYPE,m.id ID,m.image IMG,m.name NAME from map m4,mob m where m4.elt_type='".$elt_type['MOB']."' and m4.elt_id=m.id and m4.x between ".$x." and ".($x+$vis_x-1)." and m4.y between ".$y." and ".($y+$vis_y-1)." ";
//on utilise les UNION pour tout récupérer en 1 seule requête=================
$result=mysql_query($qry1." union ".$qry2." union ".$qry3." union ".$qry4);
//on stocke tout dans un tableau multidimension==============================
$map=array();
c'est ici que je bloque que dois je mettre pour que l'array reste valable dans le traitement ultérieur?
Code PHP :
<?php 
while($row=mysql_fetch_row($result)) $map[$row[0]][$row[1]][$row[2]]=array("img"=>$row[4],"name"=>$row[5]);
//on libere la connexion==================================================
mysql_close();

EDIT : cette méthode marche très bien Smile


RE: Une autre map avec un minimum de requête - Necromant - 02-09-2007

J'ai pas tout compris au script:
1- comment le joueur ce déplace, ataque... (sur la page)
2- il faut mettre quoi apres $sql_serveur=
Voila normalement c'est tout, merci d'avance.


RE: Une autre map avec un minimum de requête - Willow - 15-11-2007

J'ai pas compris une chose. A quel moment, l'on dit au code quel graphisme l'on va prendre ? Enfin. Si je veux mettre le graphisme de la map composé de plusieurs case.

A moin que l'on ne fasse au début qu'une suite d'indication. Par exemple :

-Herbe
Possibilité allez dessu : oui
Design : Herbe
Taille : 4px / 4px

-Sable
Possibilité allez dessu : oui
Design : sable
Taille : 4px / 4px

-route
Possibilité allez dessu : oui
Design : route
Taille : 4px / 4px

-arbre
Possibilité allez dessu : non
Design : arbre
Taille : 4px / 4px

Puis, on fait la map : exemple, une taille de 5case de largeur et 6 de hauteur.

Herbe / herbe / route / herbe / Arbre
herbe/herbe/route/herbe/sable
herbe/route/route/herbe/sable
arbre/route/herbe/herbe/sable
Herbe/route/herbe/arbre/sable
route/route/herbe/herbe/sable


Et ça forme :

[Image: terrainng9.jpg]

Faites pas attention à mes beau graphisme Smile


RE: Une autre map avec un minimum de requête - Sôbi - 22-02-2009

* rougit * petit up pour que je comprenne moi aussi.

* sourit *

Merci de votre aide.


EDIT : C'EST BON J'AI COMPRIS. MERCI QUAND MÊME.