lib/IFMapper/FXSection.rb in ifmapper-0.8.5 vs lib/IFMapper/FXSection.rb in ifmapper-0.9

- old
+ new

@@ -3,9 +3,18 @@ require 'IFMapper/FXRoom' require 'IFMapper/Section' class FXSection < Section def new_connection( roomA, exitA, roomB, exitB = nil ) + # Verify rooms exist in section (ie. don't allow links across + # sections) + if not @rooms.include?(roomA) + raise ConnectionError, "Room #{roomA} not in section #{self}" + end + if roomB and not @rooms.include?(roomB) + raise ConnectionError, "Room #{roomB} not in section #{self}" + end + c = FXConnection.new( roomA, roomB ) return _new_connection(c, roomA, exitA, roomB, exitB) end def new_room(x, y)