Я работаю над текстовой приключенческой игрой в прологе. Я пытаюсь определить что-то, что распечатывает все смежные комнаты и их описания, за исключением того, что когда я пытаюсь использовать это, это печатает дубликаты предметов и их описания.
Определения для смежных комнат следующие:
adjacent_rooms(Location):-
is_connected(Location, AdjacentLocation),
name(AdjacentLocation, AdjacentName),
short_desc(AdjacentLocation, AdjacentDescription),
write(AdjacentName), write(': '), write(AdjacentDescription),nl,fail.
adjacent_rooms(_).
Ниже вывод, когда я звоню рядом с комнатой (спальня).
?- adjacent_rooms(bedroom).
Your Bedroom's Closet: A cozy little room used for storing your valuables
Your Bedroom's Closet:
: A cozy little room used for storing your valuables
:
Hallway: Long pathway that has pictures hanging on wall
Hallway:
: Long pathway that has pictures hanging on wall
Что вызывает печать повторяющихся имен и описаний? Спасибо.