Exemplo n.º 1
0
        public Arsenal(int ownerId, Navigation navigation, UnitTargeting targeting, Following following, Partset partset, ShotsManager shotsManager, TimeManager timeManager)
        {
            _ownerId      = ownerId;
            _shotsManager = shotsManager;
            _timeManager  = timeManager;
            _targeting    = targeting;
            _navigation   = navigation;
            _following    = following;
            _partset      = partset;

            _partset.OnPartAttached += OnPartAttached;
            _partset.OnPartDetached += OnPartDetached;

            _targeting.OnTargetChange += OnTargetChange;
        }
Exemplo n.º 2
0
        public Unit(int id, IUnitObject unitObject, Faction startingFaction)
        {
            Id         = id;
            UnitObject = unitObject;

            var provider = ManagerProvider.Instance;

            Player           = provider.PlayerManager.GetPlayer(startingFaction);
            CommandProcessor = new CommandProcessor(provider.CommandManager.CommandFactory, provider.TimeManager, provider.GameSettings.UnitCommandsUpdatePeriod, this);
            Partset          = new Partset();
            Navigation       = new Navigation(UnitObject);
            Following        = new Following(Navigation, provider.TimeManager);
            Targeting        = new UnitTargeting(Player.Faction);
            Arsenal          = new Arsenal(Id, Navigation, Targeting, Following, Partset, provider.ShotsManager, provider.TimeManager);
            Selectable       = new Selectable();
            Visibility       = new Visibility(Player.Faction);
            Hull             = new Hull();
            Hull.OnDeath    += Die;
        }