C/C++ [D2P] Les fleches de changement de map

Inscrit
23 Novembre 2013
Messages
26
Reactions
0
#1
Salut a tous :D

Je galère depuis un moment sur le changement de carte. En effet, avant je faisais la liste des cellules non bloquées sur le coté, m'y rendais puis demandais un changement de map, mais il s'avère qu'il est possible que les cellules soient libres sans pour autant que l'on puisse changer de map.

J'ai donc exploré les sources et aperçu que je ne n'utilisais pas le paramètre arrow.

Dans CellData, celui-ci check si la cellule appartient à une top/bottom/right/left - Arrow, et le rajoute si c'est le cas à une liste de flèches de la map.

Mais pourtant lorsque je lis les données (je lis la bonne quantité de données j'ai checké), eh bien les fonctions useArrowXXX me renvoient toujours false, quelque soit la cell ou la map. Je n'ai donc pas de flèches pour les maps :'(

Quelqu'un a une idée, je fais quelque chose mal ? Pourtant je réalise leur lecture comme les autres paramètres...
 

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#2
Tu peux tout simplement prendre une cellule aléatoire au lieu de passer par la variable Arrow. Tu vérifie juste si la cellule n'est pas un obstacle et si elle est accessible.
La cellule peut ne pas être un obstacle mais être inaccessible, un décor qui l'entoure.
 
Inscrit
23 Novembre 2013
Messages
26
Reactions
0
#3
BlueDream a dit:
Tu peux tout simplement prendre une cellule aléatoire au lieu de passer par la variable Arrow. Tu vérifie juste si la cellule n'est pas un obstacle et si elle est accessible.
La cellule peut ne pas être un obstacle mais être inaccessible, un décor qui l'entoure.
Je fais deja ca, mais c'est inefficace, la cellule peut tres bien ne pas etre un obstacle, mais ne pas permettre de changer de map (ex : il y a un mur dans le decor derriere)
 
Dernière édition par un modérateur:

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#4
Oui donc tu n'as qu'a faire un chemin pour toute les cellules et prendre le premier qui n'est confronté à aucun obstacle.
 
Inscrit
23 Novembre 2013
Messages
26
Reactions
0
#5
Alexandre, pour le 2e fois, merci de ton aide, mais justement cette technique NE MARCHE PAS lorsque l'on veut un deplacement automatique, car

C. libre != Point de changement de map à tout les coups
 

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#6
Donc il faudrait débugger tes D2P, je t'aiderais dans la soirée en TV. Je rajouterais la solution a la suite du sujet.
 

ToOnS

Membre Actif
Inscrit
8 Avril 2009
Messages
974
Reactions
0
#7
Bonjour , regarde si sur la map d'apres y'a une cellule "adjacente" , ou mieux calcul un deplacement pas par une map mais par toutes les maps que tu veux traverser , en gros tu fais une map geante avec plusieurs maps
 
Inscrit
23 Novembre 2013
Messages
26
Reactions
0
#8
ToOnS a dit:
Bonjour , regarde si sur la map d'apres y'a une cellule "adjacente" , ou mieux calcul un deplacement pas par une map mais par toutes les maps que tu veux traverser , en gros tu fais une map geante avec plusieurs maps
Mais c'est la meme chose, il peut tres bien avoir une cellule adjacente mais de changement de map pour autant...
 

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#9
Desole j'ai pas pu etre présent ce soir. Nous verrons cela demain.
 

ToOnS

Membre Actif
Inscrit
8 Avril 2009
Messages
974
Reactions
0
#10
AnonymHax a dit:
ToOnS a dit:
Bonjour , regarde si sur la map d'apres y'a une cellule "adjacente" , ou mieux calcul un deplacement pas par une map mais par toutes les maps que tu veux traverser , en gros tu fais une map geante avec plusieurs maps
Mais c'est la meme chose, il peut tres bien avoir une cellule adjacente mais de changement de map pour autant...
heu non , ou alors je veux bien voir ou , quand , comment , parceque ca m'est jamais arrivé
 
Inscrit
23 Novembre 2013
Messages
26
Reactions
0
#11
Bon bah je vais faire ca merci
 
Haut Bas