Beispiel #1
0
 public PanzerBuilder(IPanzerCommander panzer)
 {
     if (panzer == null)
     {
         throw new ArgumentException("Panzer commander can't be null.", nameof(panzer));
     }
     _panzer = new Panzer(panzer);
 }
Beispiel #2
0
        public IPanzer GetPanzer(IMap map, IPanzerCommander panzer)
        {
            PanzerBuilder builder = _builderFactory.GetBuilder(panzer);

            builder.InitCharacteristics();
            builder.InitPosition(map);

            var result = builder.GetResult();

            (map.LocationOfForces as MapLayer <IForce>)[result.CurrentPosition.Y, result.CurrentPosition.X] = result;
            return(result);
        }
        public PanzerBuilder GetBuilder(IPanzerCommander panzer)
        {
            switch (panzer.Type)
            {
            case CommanderType.ArmoredType:
                return(new ArmoredPanzerBuilder(panzer));

            case CommanderType.FasterType:
                return(new FasterPanzerBuilder(panzer));

            case CommanderType.PowerfulType:
                return(new PowerfulPanzerBuilder(panzer));

            default:
                return(new DefaultPanzerBuilder(panzer));
            }
        }
Beispiel #4
0
 public FasterPanzerBuilder(IPanzerCommander panzer) : base(panzer)
 {
 }
 public DefaultPanzerBuilder(IPanzerCommander panzer) : base(panzer)
 {
 }
Beispiel #6
0
 public PowerfulPanzerBuilder(IPanzerCommander panzer) : base(panzer)
 {
 }
Beispiel #7
0
 public Panzer(IPanzerCommander panzer)
 {
     PanzerComander = panzer;
 }
Beispiel #8
0
 public ArmoredPanzerBuilder(IPanzerCommander panzer) : base(panzer)
 {
 }