public TransportMechanism IdentifyRobotPart(RobotPart robotPart)
        {
            switch (robotPart.RobotPartCategory)
            {
            case RobotPartCategory.Assembly:
                return(new AssemblyRoomTransportMechanism((Assembly)robotPart));

            case RobotPartCategory.Weapon:
                return(new ArmouryTransportMechanism((Weapon)robotPart));
            }
            throw new NotImplementedException("I can't identify this component!");
        }
        public void IdentifyRobotPart(RobotPart robotPart)
        {
            switch (robotPart.RobotPartCategory)
            {
            case RobotPartCategory.Assembly:
                _transportMechanism = new AssemblyRoomTransportMechanism();
                break;

            case RobotPartCategory.Weapon:
                _transportMechanism = new ArmouryTransportMechanism();
                break;
            }
        }
 public void PickUpRobotPart(RobotPart robotPart)
 {
     _robotParts.Add(robotPart);
     IdentifyRobotPart(robotPart);
 }
 public void AddRobotPart(RobotPart robotPart)
 {
     _robotParts.Add(robotPart);
 }
        public void PickUpRobotPart(RobotPart robotPart)
        {
            var transportMechanism = IdentifyRobotPart(robotPart);

            _transportMechanisms.Add(transportMechanism);
        }