// constructor // rumId "0" innebär utgång, ingen karta skapas // nuvarande position måste anges, läggs först i listan // listan fylls på med ev angränsande rum public cMuseum(string museum, string id) { if (id != "0") { cRum rum = new cRum(id); rumLista.Add(rum); GetOpenRooms(museum, id); } }
// hämta data om angränsande rum (öppen dörr) // olika planlösningar hämtas beroende på valt museum public void GetOpenRooms(string museum, string rumId) { // aktuell planritning hämtas string[,] kartBeskrivning = HemtaPlanritning(museum); // array-uppbyggnaden = [rad, kolumn] // antal rader i arrayen = antalet element / antal kolumner int antRad = (kartBeskrivning.Length / kartBeskrivning.Rank); for (int ind = 0; ind < antRad; ind++) { // en ny rad i listan för varje möjlig förflyttning if (kartBeskrivning[ind, 0] == rumId) { cRum rum = new cRum(kartBeskrivning[ind, 1]); rumLista.Add(rum); } } }