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); }