| [Résolu mais pas pour longtemps] Tableau 2D | |
|
|
Auteur | Message |
---|
Mobi Utilisateur confirmé: Rang ****
Messages : 1256 Localisation : Dijon
| Sujet: [Résolu mais pas pour longtemps] Tableau 2D Mer 7 Nov 2012 - 14:50 | |
| Bonjour, voila mon problème : Je créer un tableau - Code:
-
for(xx=0;xx<room_width/16;xx+=1) { for(yy=0;yy<room_width/16;yy+=1) { tab[xx,yy]=0 } } Ensuite, je créer une "salle" - Code:
-
posx=room_width/2/16-argument0/2 posy=room_height/2/16-argument1/2
for(xx=posx;xx<posx+argument0;xx+=1) { for(yy=posy;yy<posy+argument1;yy+=1) { tab[xx,yy]=1 } }
for(xx=posx+1;xx<posx+argument0-1;xx+=1) { for(yy=posy+1;yy<posy+argument1-1;yy+=1) { tab[xx,yy]=2 } }
tab[posx+argument0/2,posy+argument1/2]=3 Pour continuer, je doit choisir un mur (=1) comment faire pour choisir UNE et UNE SEUL case de mon tableau de façons aléatoire ? _________________
Dernière édition par Mobi le Ven 9 Nov 2012 - 14:48, édité 3 fois |
|
| |
M@d_Doc Modérateur
Messages : 6600 Localisation : 47°44'8.04 Projet Actuel : aucun
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Mer 7 Nov 2012 - 15:02 | |
| tab[irandom(room_width),irandom(room_height)] _________________ Tous les icones de gm utilisables sur le cbna ICI |
|
| |
Mobi Utilisateur confirmé: Rang ****
Messages : 1256 Localisation : Dijon
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Mer 7 Nov 2012 - 15:04 | |
| ça c'est du rapide !!!
Merci M@d_Doc
edit*: j'ai parlé un peu vite, comment l'utiliser sur une seul valeur de mes cases ? Je vais quand même pas boucler ? _________________ |
|
| |
M@d_Doc Modérateur
Messages : 6600 Localisation : 47°44'8.04 Projet Actuel : aucun
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Mer 7 Nov 2012 - 16:06 | |
| Je ne suis pas sûr de comprendre ta question...
1) tu veux choisir une case au hasard et mettre par ex. la valeur "5" dedans : tab[ irandom(room_width) , irandom(room_height) ] = 5
2)Tu veux choisir une case précise (par exemple la case en 10,12 ), et mettre une valeur aléatoire (comprise entre 0 et 100) dedans: tab [ 10 , 12 ] = irandom(100) _________________ Tous les icones de gm utilisables sur le cbna ICI |
|
| |
Mobi Utilisateur confirmé: Rang ****
Messages : 1256 Localisation : Dijon
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Mer 7 Nov 2012 - 17:08 | |
| Je veux choisir une seul case aléatoire parmi celle de valeur 1 _________________ |
|
| |
onilink_ Modérateur
Messages : 9180 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Mer 7 Nov 2012 - 17:43 | |
| Obligé de boucler pour ça. |
|
| |
Mobi Utilisateur confirmé: Rang ****
Messages : 1256 Localisation : Dijon
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Mer 7 Nov 2012 - 20:12 | |
| sur le papier ça marche !!! mais j'ai un don pour afficher des trucs étranges... - Code:
-
recherche=0; cb=0;
for(xx=0;xx<room_width/16;xx+=1) { for(yy=0;yy<room_height/16;yy+=1) { if tab[xx,yy]=1 { cb+=1; } } }
recherche=irandom(cb); cb=0
for(xx=0;xx<room_width/16;xx+=1) { for(yy=0;yy<room_height/16;yy+=1) { if tab[xx,yy]=1 { cb+=1; } if cb=recherche { tab[xx*16,yy*16]=4 } } }
| | v _________________ |
|
| |
Mobi Utilisateur confirmé: Rang ****
Messages : 1256 Localisation : Dijon
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Ven 9 Nov 2012 - 11:03 | |
| Personne ne sait pourquoi mon code affiche ça !!! Ou est le problème et comment le résoudre !!! Aider moi s'il vous plait !!!! - Code:
-
recherche=0; cb=0;
for(xx=0;xx<room_width/16;xx+=1) { for(yy=0;yy<room_height/16;yy+=1) { if tab[xx,yy]=1 { cb+=1; } } }
recherche=irandom(cb); cb=0
for(xx=0;xx<room_width/16;xx+=1) { for(yy=0;yy<room_height/16;yy+=1) { if tab[xx,yy]=1 { cb+=1; } if cb=recherche { tab[xx*16,yy*16]=4 } } } _________________ |
|
| |
Térence Utilisateur confirmé: Rang *****
Messages : 2213 Localisation : Oui
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Ven 9 Nov 2012 - 11:29 | |
| Il est censé faire quoi le code ? Qu'est ce qui marche pas ? |
|
| |
Mobi Utilisateur confirmé: Rang ****
Messages : 1256 Localisation : Dijon
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Ven 9 Nov 2012 - 12:34 | |
| Il scan mon tableau Récupère le nombre de case de valeur 1 Choisit un nombre parmi entre 0 et le nombre de case 1 Ajoute une case de valeur 4 _________________ |
|
| |
Térence Utilisateur confirmé: Rang *****
Messages : 2213 Localisation : Oui
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Ven 9 Nov 2012 - 12:55 | |
| Mais c'est quoi le rapport avec l'image ? |
|
| |
Mobi Utilisateur confirmé: Rang ****
Messages : 1256 Localisation : Dijon
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Ven 9 Nov 2012 - 13:31 | |
| Baaa c'est ce que me fait mon code quand je compile... Je sais par pourquoi. Une sorte de malédiction ancestrale !
bleu = case de valeur 4 marron foncé = case de valeur 1 _________________ |
|
| |
Térence Utilisateur confirmé: Rang *****
Messages : 2213 Localisation : Oui
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Ven 9 Nov 2012 - 14:13 | |
| - Code:
-
if cb=recherche { tab[xx*16,yy*16]=4 } C'est ca qui doit poser problème, quand xx ou yy est petit, ca écrase les anciennes valeurs, contrairement au moment ou xx et yy sont élevés... Bref je sais pas si tu m'a capté, mais tu devrais remettre les valeurs en xx et yy et multiplier les index à l'affichage ; ou alors faire un deuxième tableau. |
|
| |
Mobi Utilisateur confirmé: Rang ****
Messages : 1256 Localisation : Dijon
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Ven 9 Nov 2012 - 14:23 | |
| AAA oui, j'ai rajouter 2 '*16' Mais tjrs des truc marrant à l'affichage - Spoiler:
- Spoiler:
- Spoiler:
_________________
Dernière édition par Mobi le Ven 9 Nov 2012 - 14:31, édité 1 fois |
|
| |
Térence Utilisateur confirmé: Rang *****
Messages : 2213 Localisation : Oui
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Ven 9 Nov 2012 - 14:29 | |
| Tu voudrais qu'il t'affiche quoi ? |
|
| |
Mobi Utilisateur confirmé: Rang ****
Messages : 1256 Localisation : Dijon
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Ven 9 Nov 2012 - 14:31 | |
| Juste un mur en bleu (une seul case)
edit* je pourrais faire des tableaux et devenir riiiiiiche... _________________ |
|
| |
Térence Utilisateur confirmé: Rang *****
Messages : 2213 Localisation : Oui
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Ven 9 Nov 2012 - 14:39 | |
| Je crois avoir capté : en gros cb n'augmente que si tab[xx,yy] est égal à 1, mais on imagine qu'il est égal à 4, cb n'augmentera plus et tab[xx*16,yy*16] vaudra 4. Bah j'ai l'impression qu'il fait sa en boucle vu que t'as un carré bleu toutes les 16 cases... Faut que tu fasse changer cb |
|
| |
Mobi Utilisateur confirmé: Rang ****
Messages : 1256 Localisation : Dijon
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Ven 9 Nov 2012 - 14:41 | |
| Trouvé !!! - Code:
-
recherche=0; cb=0;
for(xx=0;xx<room_width/16;xx+=1) { for(yy=0;yy<room_height/16;yy+=1) { if tab[xx,yy]=1 { cb+=1; } } }
recherche=irandom(cb); cb=0
for(xx=0;xx<room_width/16;xx+=1) { for(yy=0;yy<room_height/16;yy+=1) { if tab[xx,yy]=1 { cb+=1; } if cb==recherche and tab[xx,yy]=1 { tab[xx,yy]=4 } } } if cb==recherche and tab[xx,yy]=1 { tab[xx,yy]=4 } _________________ |
|
| |
Térence Utilisateur confirmé: Rang *****
Messages : 2213 Localisation : Oui
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Ven 9 Nov 2012 - 14:46 | |
| Et ben voilà ! |
|
| |
Mobi Utilisateur confirmé: Rang ****
Messages : 1256 Localisation : Dijon
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D Ven 9 Nov 2012 - 14:47 | |
| c'est bizard quand même _________________ |
|
| |
Contenu sponsorisé
| Sujet: Re: [Résolu mais pas pour longtemps] Tableau 2D | |
| |
|
| |
| [Résolu mais pas pour longtemps] Tableau 2D | |
|