public void AddArmyBuilder(ArmyBuilder Builder)
        {
            var section = new ScenarioBuilderArmySection(Builder, GameData.Factions.Values);

            section.OnParametersChanged += HandleArmyParametersChanged;
            section.OnRemoved           += HandleArmyRemoved;
            _ArmiesTable.Add(section);
        }
 public ArmyBuilderController(
     ArmyBuilder ArmyBuilder, ArmyBuilderScreen Screen, UnitConfigurationRenderer Renderer)
 {
     _ArmyBuilder        = ArmyBuilder;
     _Screen             = Screen;
     _Screen.OnFinished += HandleFinished;
     _Screen.OnUnitConfigurationRightClicked += HandleUnitConfigurationRightClicked;
     _Renderer = Renderer;
 }
Ejemplo n.º 3
0
        void HandleArmyAdded(object Sender, EventArgs E)
        {
            var builder =
                new ArmyBuilder(
                    _IdGenerator,
                    new ArmyParameters(GameData.Factions.Values.First(), 0, 1, _ScenarioBuilder.Parameters));

            _Screen.AddArmyBuilder(builder);
            _ScenarioBuilder.AddArmy(builder);
        }
Ejemplo n.º 4
0
        public ScenarioBuilderArmySection(ArmyBuilder ArmyBuilder, IEnumerable <Faction> Factions)
            : base("scenario-builder-army-section")
        {
            this.ArmyBuilder = ArmyBuilder;

            foreach (Faction faction in Factions)
            {
                _FactionSelect.Add(
                    new SelectionOption <Faction>("scenario-builder-army-section-faction-select-option")
                {
                    DisplayedString = ObjectDescriber.Describe(faction),
                    Value           = faction
                });
            }
            _FactionSelect.SetValue(i => i.Value == ArmyBuilder.Parameters.Faction);

            _PointsInput.Value = ArmyBuilder.Parameters.Points.ToString();

            for (byte i = 1; i <= 3; ++i)
            {
                _TeamSelect.Add(
                    new SelectionOption <byte>("scenario-builder-army-section-team-select-option")
                {
                    DisplayedString = i.ToString(),
                    Value           = i
                });
            }
            _TeamSelect.SetValue(i => i.Value == ArmyBuilder.Parameters.Team);

            var removeButton = new Button("scenario-builder-army-section-remove-button")
            {
                DisplayedString = "X"
            };

            _FactionSelect.OnChange += HandleChange;
            _PointsInput.OnLeave    += HandleChange;
            _TeamSelect.OnChange    += HandleChange;
            removeButton.OnClick    += HandleRemove;

            Add(new GuiContainer <GuiItem>("scenario-builder-army-section-faction-cell")
            {
                _FactionSelect
            });
            Add(new GuiContainer <GuiItem>("scenario-builder-army-section-points-cell")
            {
                _PointsInput
            });
            Add(new GuiContainer <GuiItem>("scenario-builder-army-section-team-cell")
            {
                _TeamSelect
            });
            Add(removeButton);
        }
Ejemplo n.º 5
0
 public bool RemoveArmy(ArmyBuilder Builder)
 {
     return(_Armies.Remove(Builder));
 }
Ejemplo n.º 6
0
 public bool AddArmy(ArmyBuilder Builder)
 {
     _Armies.Add(Builder);
     return(true);
 }
 public void RemoveArmyBuilder(ArmyBuilder Builder)
 {
     _ArmiesTable.Remove(
         i => i is ScenarioBuilderArmySection && ((ScenarioBuilderArmySection)i).ArmyBuilder == Builder);
 }