Well, first write down all your maps and in order of how they line up side by side. Like:
c1-->CODE |
ec1 Town :Dngn :Mntn:-N/A-:Town :Forst :Dngn Beach:Feilds:Feild:-N/A-:Forst:Dngn:-N/A- Dunes:Feilds:Town :Feilds:Mntn :Caves:-N/A- Town :-N/A-:Dngn:-N/A-:-N/A-:Town :-N/A- Dngn :-N/A-:Feild:-N/A-:Woods:-N/A-:-N/A- -N/A-:Dngn :Forst :Town :Lake :Town :Dngn c2 |
ec2
where each [] has a map in it and the linking sides are of equal width or hieght (based on direction to aproach), and say each set program contains 6 maps (eg. Town:Dngn:Mntn:-N/A-:Town:Forst:Dngn)
then youd make variable E equal to 6, and it would open the aproriate map collection for the direction you moved. In that map collection program, you'd use "if M=1:then[A]end, if 2...if 6:then[A]end, return" and as such load matrix data for getting that map, and it would then set all location vars and return to the game.
+) So...maps stored into programs
+) maps per pgroram stored into E
+) must keep maps the same size for each side that touches another map and it should be able to do the rest.
+) All map data is stored to be called by if M:then:end inside the programs