Grille Hexagonale

vincseize Messages postés 113 Date d'inscription mardi 25 février 2003 Statut Membre Dernière intervention 28 mars 2010 - 1 juin 2004 à 02:27
vincseize Messages postés 113 Date d'inscription mardi 25 février 2003 Statut Membre Dernière intervention 28 mars 2010 - 15 oct. 2007 à 23:34
En fait certainement tout bete pour un mateux ...

Je souhaiterais faire un plateau de jeu type grille hexagonale,
sans avoir a dupliquer de mc (pas propre) ...

Et si quelqu un ...

Merci d avance

vincseize

8 réponses

SuperDevy Messages postés 842 Date d'inscription dimanche 24 novembre 2002 Statut Membre Dernière intervention 2 juillet 2007
1 juin 2004 à 20:45
Hum... Miam... ça j'aime bien faire !

//La fonction magique :
//H: nb de cases verticalement
//L: nb de cases horizontalement
function Grille(H, L) {
//Origine de la grille :
Ox = 20;
Oy = 20;
//Boucle de dessin (i: suivant x ; j: suivant y)
for (i=1; i<=L; i++) {
//x: abcisse de la colonne i (calculé une fois pour toute la colonne)
x = Ox+i*Carreau._width*3/4;
//m permet de décaller verticalement 1 cases sur 2 m (Math.floor(i/2) i/2) ? 0.5 : 0;
for (j=1; j<=H; j++) {
//y: ordonnée de la case j
y = Oy+(j+m)*Carreau._height;
//Carreau est le nom du clip de référence
_root.Carreau.duplicateMovieClip("Carreau"+i+"s"+j, i*H+j);
_root["Carreau"+i+"s"+j]._x = x;
_root["Carreau"+i+"s"+j]._y = y;
}
}
}
//appelle de la fonction
Grille(5, 10);

En fait je suis pas sûr que c'est ça que tu voulais. Sans dupliquer de mc, ça veux dire quoi ? Faire du copier/Coller ou faire ce que je te propose ?
vincseize Messages postés 113 Date d'inscription mardi 25 février 2003 Statut Membre Dernière intervention 28 mars 2010
3 juin 2004 à 01:07
Thx , je test et je te redis tt ce que j en pense ...

thx ...

vincseize
SuperDevy Messages postés 842 Date d'inscription dimanche 24 novembre 2002 Statut Membre Dernière intervention 2 juillet 2007
4 juin 2004 à 15:34
Petite amélioration de la grille : tu n'as qu'à copier ce code dans un fichier vide...

//La fonction magique :
//H: nb de cases verticalement
//L: nb de cases horizontalement
//T: taille des carreaux
function Grille(H, L, T) {
//Création du clip Carreau _root.createEmptyMovieClip("Carreau", -1);
with (Carreau) {
lineStyle(1, "0x0000FF");
beginFill("0x005500");
moveTo(-T/2, -T*Math.sqrt(3)/2);
lineTo(T/2, -T*Math.sqrt(3)/2);
lineTo(T, 0);
lineTo(T/2, T*Math.sqrt(3)/2);
lineTo(-T/2, T*Math.sqrt(3)/2);
lineTo(-T, 0);
lineTo(-T/2, -T*Math.sqrt(3)/2);
_visible = false;
}
//Origine de la grille :
Ox = 20;
Oy = 20;
//Boucle de dessin (i: suivant x ; j: suivant y)
for (i=1; i<=L; i++) {
//x: abcisse de la colonne i (calculé une fois pour toute la colonne)
x = Ox+i*T*3/2;
//m permet de décaller verticalement 1 cases sur 2m (Math.floor(i/2) i/2) ? 0.5 : 0;
for (j=1; j<=H; j++) {
//y: ordonnée de la case j
y = Oy+(j+m)*T*Math.sqrt(3);
//Carreau est le nom du clip de référence
_root.Carreau.duplicateMovieClip("Carreau"+i+"s"+j, i*H+j);
_root["Carreau"+i+"s"+j]._x = x;
_root["Carreau"+i+"s"+j]._y = y;
_root["Carreau"+i+"s"+j]._alpha = Math.random()*20+50;
}
}
}
//appelle de la fonction
Grille(10, 15, 20);

Petits rajouts :
- Carreaux dessinés en AS.
- Couleur des carreaux différentes.

puis-je te demander quelque-chose : tu souhaite faire quoi avec une telle grille ?
SuperDevy Messages postés 842 Date d'inscription dimanche 24 novembre 2002 Statut Membre Dernière intervention 2 juillet 2007
6 juin 2004 à 16:40
Ah!, petite erreur :

//La fonction magique :
//H: nb de cases verticalement
//L: nb de cases horizontalement
//T: taille des carreaux
function Grille(H, L, T) {
//Création du clip Carreau 
_root.createEmptyMovieClip("Carreau", -1);
with (Carreau) {
lineStyle(1, "0x0000FF");
beginFill("0x005500");
moveTo(-T/2, -T*Math.sqrt(3)/2);
lineTo(T/2, -T*Math.sqrt(3)/2);
lineTo(T, 0);
lineTo(T/2, T*Math.sqrt(3)/2);
lineTo(-T/2, T*Math.sqrt(3)/2);
lineTo(-T, 0);
lineTo(-T/2, -T*Math.sqrt(3)/2);
_visible = false;
}
//Origine de la grille :
Ox = 20;
Oy = 20;
//Boucle de dessin (i: suivant x ; j: suivant y)
for (i=1; i<=L; i++) {
//x: abcisse de la colonne i (calculé une fois pour toute la colonne)
x = Ox+i*T*3/2;
//m permet de décaller verticalement 1 cases sur 2m (Math.floor(i/2) i/2) ? 0.5 : 0;
for (j=1; j<=H; j++) {
//y: ordonnée de la case j
y = Oy+(j+m)*T*Math.sqrt(3);
//Carreau est le nom du clip de référence
_root.Carreau.duplicateMovieClip("Carreau"+i+"s"+j, i*H+j);
_root["Carreau"+i+"s"+j]._x = x;
_root["Carreau"+i+"s"+j]._y = y;
_root["Carreau"+i+"s"+j]._alpha = Math.random()*20+50;
}
}
}
//appelle de la fonction
Grille(10, 15, 20);

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
vincseize Messages postés 113 Date d'inscription mardi 25 février 2003 Statut Membre Dernière intervention 28 mars 2010
8 juin 2004 à 01:21
en fait c est pour commencer un plateau de jeu style wargame, ainsi que pour un systeme de navigation pour mon site.

vincseize
SuperDevy Messages postés 842 Date d'inscription dimanche 24 novembre 2002 Statut Membre Dernière intervention 2 juillet 2007
26 août 2004 à 01:36
[mailto:tam@relle.fr.st SuperDevy] <;-)
vincseize Messages postés 113 Date d'inscription mardi 25 février 2003 Statut Membre Dernière intervention 28 mars 2010
2 juin 2006 à 04:36
Bon je viens de me remettre à mon projet ...

Je tiens de nouveau à te remercier de tes efforts ....

Je me presente quelque peu ...
Je suis administrateur reseau-systeme en fait, mais comme tu le vois je developpe aussi
Ce qui peux se reveler pratique pour la suite de ce projet.*
...
Helas je ne suis pas un matématicien pur ...

Par contre, je pense qu il est largement faisable de faire un jeu à la ogame ou travian, en mieux, (déja en flash à l arrivée pour les utilisateurs, même si le noyau dur du moteur reste en php-mysql)

Je me suis remis donc à developper des briques de jeu ...

- Le systeme d'attaque et compte à rebours est OK

Je pensais mettre en ligne un gestionnaire de projet commun, car 2 autres personnes sont dans l'histoire ...

Est ce que cela t interresserait de faire partie de cette aventure !?

PS1: * La partie configuration de serveur ne poserait pas de probleme du coup vu que c'est mon taf !

PS2:Mon mail perso:  vincseize@gmail.com

PS3: est ce que tu habiterais paris par hasard!?

vincseize
vincseize Messages postés 113 Date d'inscription mardi 25 février 2003 Statut Membre Dernière intervention 28 mars 2010
15 oct. 2007 à 23:34
merci encore ... j avais mis cela de côté et je le ressort

:)

vincseize
Rejoignez-nous