private RoomTemplate ConvertRoomModelToRoomTemplate(RoomDescriptionModel model, Vector2Int?scale, List <TransformationGrid2D> transformations, string setName) { var identifier = new RoomTemplateIdentifier() { RoomDescriptionName = model.Name, SetName = setName, Scale = scale ?? new Vector2Int(1, 1), }; if (roomTemplates.ContainsKey(identifier)) { return(roomTemplates[identifier]); } var roomTemplate = new RoomTemplate(new PolygonGrid2D(model.Shape).Scale(scale ?? new Vector2Int(1, 1)), GetDoorMode(model.DoorMode), transformations, model.RepeatMode ?? RoomTemplateRepeatMode.AllowRepeat); roomTemplates.Add(identifier, roomTemplate); return(roomTemplate); }
protected bool Equals(RoomTemplateIdentifier other) { return(SetName == other.SetName && RoomDescriptionName == other.RoomDescriptionName && Scale.Equals(other.Scale)); }