So, I have been working on designing a minimap for a metroidvania style game. I have it functional now, but it's very inconvenient to work with, as I need to manually, by hand, tell the engine where every room should be.
Currently, I have the game set up so that each map has a list game attribute which holds a value for every room in the map. Each room is associated with one slot in the list, and a value of 0 means it hasn't been found, and a value of 1 means it has. Then, in the map's code, I have an individual if statement for each item in the list in which I, by hand, assign what kind of wall to put on the four sides of the room (no wall, solid wall, or door) then create the room in the location it should be in.
This functions, but it's extremely tedious to put together for each map since I need to manually input a lot of values. I am wondering if there is a more efficient way to do it that requires less by-hand work, without becoming too difficult to work with. I am thinking, for example, creating more lists so I can have the map assemble using a for each loop, but that may end up requiring 7 lists per map which might be a bit much.