Esempio n. 1
0
        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);
        }
Esempio n. 2
0
 protected bool Equals(RoomTemplateIdentifier other)
 {
     return(SetName == other.SetName && RoomDescriptionName == other.RoomDescriptionName && Scale.Equals(other.Scale));
 }