Я новичок в Scala. Я делаю игру, и у меня есть список мест, которые может посетить персонаж, типа Location
. Для этого я имею класс case и объект-компаньон.Scala прямой ссылки
LinkedLocations
внутри Location
представляет собой массив типа Location
и может иметь любое количество мест, к которым может привести местоположение. В этом случае комната 1 ведет в комнату 2 и наоборот.
case class Location(name: String, desc: String, linkedLocations: Array[Location]){}
object Location {
val none: Location = Location("none","none",Array(none))
val room1: Location = Location("room 1","you are in room 1",Array(room2))
val room2: Location = Location("room 2","you are in room 2",Array(room1))
room1.linkedLocations.foreach(location=>println(location.name))
}
Я попытался сделать их ленивыми, но в итоге переполнения стека. Как устранить проблемы с перенаправлением, подобные этому? Будет ли лучший способ разработать это?