public PlanetControllerImpl(FleetController fleetCont, Transform mapObj, GameGameObject game, GameObject baseFleet)
 {
     fleetController = fleetCont;
     mapObject       = mapObj;
     this.game       = game;
     this.baseFleet  = baseFleet;
 }
    public bool DetectTarget()
    {
        bool result = false;

        currentTarget = null;
        foreach (FleetController fleet in playerFleets)
        {
            if (fleet.RemainingBoats != 0)
            {
                if (!currentTarget)
                {
                    if (Vector3.Distance(fleet.Position, Position) <= detectionRange)
                    {
                        result        = true;
                        currentTarget = fleet;
                    }
                }
                else
                {
                    if (Vector3.Distance(fleet.Position, Position) < Vector3.Distance(currentTarget.Position, Position))
                    {
                        result        = true;
                        currentTarget = fleet;
                    }
                }
            }
        }
        return(result);
    }
Example #3
0
 void DecreasePlayerFleet(FleetController target)
 {
     remainingPlayerFleets--;
     if (remainingPlayerFleets == 0)
     {
         onLose.Invoke();
     }
 }
Example #4
0
 public void setUniverseGenerator(Game game, FleetController fleetController, PlanetController planetController, ShipDesigner shipDesigner, TechStore techStore)
 {
     this.game.setGame(game);
     this.fleetController  = fleetController;
     this.planetController = planetController;
     this.shipDesigner     = shipDesigner;
     this.techStore        = techStore;
 }
Example #5
0
    public void CreateFleet(FleetData FD, Vector3 Position)
    {
        GameObject      fleet       = ResourceManager.instance.CreateFleet(Position, Quaternion.identity);
        FleetController FleetScript = fleet.GetComponent <FleetController>();

        FleetScript.SetFleetData(FD);
        fleets.Add(FleetScript);
    }
Example #6
0
 public void AddToSelection(FleetController fleet)
 {
     if (!selectedFleets.Contains(fleet))
     {
         selectedFleets.Add(fleet);
         fleet.ToggleLineRender(true);
     }
 }
Example #7
0
 void DecreaseEnemyFleet(FleetController target)
 {
     remainingEnemyFleets--;
     if (remainingEnemyFleets == 0)
     {
         onWin.Invoke();
     }
 }
 public bool ValidateTarget()
 {
     if (currentTarget.RemainingBoats == 0)
     {
         currentTarget = null;
         return(false);
     }
     return(true);
 }
Example #9
0
 public void DeslectFleets()
 {
     foreach (FleetController fleet in selectedFleets)
     {
         fleet.ToggleLineRender(false);
     }
     selectedFleets.Clear();
     selectedOtherFleet = null;
 }
Example #10
0
 void UnselectFleet()
 {
     if (!ControlledFleet)
     {
         return;
     }
     ControlledFleet.Unselect();
     ControlledFleet = null;
 }
Example #11
0
 void SelectFleet(FleetController target)
 {
     if (ControlledFleet == target || target.GetComponentInParent <TeamManager>().team != gameManager.team)
     {
         return;
     }
     UnselectFleet();
     ControlledFleet = target;
     ControlledFleet.Select();
 }
    public override void OnInspectorGUI()
    {
        DrawDefaultInspector();

        FleetController myScript = (FleetController)target;

        if (GUILayout.Button("KILL"))
        {
            myScript.Kill();
        }
    }
Example #13
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="source"></param>
        /// <param name="e"></param>
        protected void AllCurrentCrews_ItemCommand(object source, RepeaterCommandEventArgs e)
        {
            string caller = e.CommandName;

            switch (caller)
            {
            case "SelectedCrew":
                CrewID.Text = e.CommandArgument.ToString();
                string crew = "";
                SiteMenu.Visible = true;
                Done.Visible     = true;
                JobCardStatusGridView.Visible = false;
                JobcardTitle.Visible          = false;
                UnitReoprtGV.Visible          = false;
                UnitReportHeader.Visible      = false;
                InfoUserControl.TryRun(() =>
                {
                    FleetController fleet = new FleetController();
                    crew = fleet.GetUnitDescription(int.Parse(CrewID.Text));
                });
                InfoUserControl.ShowInfo("You are updating crew " + crew + "");
                RefreshCrewMember();
                break;

            case "RemoveMember":
                InfoUserControl.TryRun(() =>
                {
                    CrewController crewManager = new CrewController();
                    crewManager.RemoveCrewMember(int.Parse(e.CommandArgument.ToString()), int.Parse(CrewID.Text));
                    RefreshCurrentCrews();
                });
                break;

            case "DeleteJobCard":
                InfoUserControl.TryRun(() =>
                {
                    CrewController crewManager = new CrewController();
                    crewManager.DeleteJobCardCrew(int.Parse(e.CommandArgument.ToString()));
                    RefreshCurrentCrews();
                });
                break;

            case "DeleteCrew":
                MessageUserControl.TryRun(() =>
                {
                    CrewController crewManager = new CrewController();
                    crewManager.DeleteCrew(int.Parse(e.CommandArgument.ToString()));
                    RefreshCurrentCrews();
                    PopulateUnitReport();
                    PopulateRouteStatus();
                });
                break;
            }
        }
Example #14
0
        void IGalaxyViewListener.SystemSelected(StarSystemController systemController)
        {
            if (this.InvokeRequired)
            {
                this.BeginInvoke(new Action <StarSystemController>(((IGalaxyViewListener)this).SystemSelected), systemController);
                return;
            }

            this.fleetController    = null;
            this.fleetPanel.Visible = false;
        }
Example #15
0
        void IGalaxyViewListener.FleetDeselected()
        {
            if (this.InvokeRequired)
            {
                this.BeginInvoke(new Action(((IGalaxyViewListener)this).FleetDeselected));
                return;
            }

            this.fleetController    = null;
            this.fleetPanel.Visible = false;
        }
Example #16
0
        public IGalaxySelection Update(PlayerController currentPlayer)
        {
            this.Fleet = currentPlayer.FleetsAll.FirstOrDefault(this.Fleet.IsPreviousStateOf);

            if (this.Fleet is null)
            {
                return(null);
            }

            this.Controller = currentPlayer.SelectFleet(this.Fleet);
            return(this);
        }
Example #17
0
 /// <summary>
 /// This Method Populates/Refreshes the list of drivers
 ///     There are two types of drivers:
 ///         1. Truck  Drivers
 ///         2. Equipment Drivers
 /// </summary>
 /// <param name="type">The type specifies the list of drivers to be returned</param>
 protected void RefreshDriverList(int type)
 {
     InfoUserControl.TryRun(() =>
     {
         int unitId = int.Parse(SelectUnitDDL.SelectedValue);
         int yardId = int.Parse(YardID.Text);
         FleetController fleetManager = new FleetController();
         List <Driver> drivers        = fleetManager.GetTruckDrivers(yardId, unitId, type);
         EmployeeGridView.DataSource  = drivers;
         EmployeeGridView.DataBind();
     });
 }
Example #18
0
        private void initCombatGui()
        {
            this.fleetController = null;

            this.combatRenderer.StartCombat(this.conflictController);
            this.nextRenderer = this.combatRenderer;

            abilityList.Visible   = true;
            fleetPanel.Visible    = false;
            returnButton.Visible  = false;
            unitInfoPanel.Visible = true;
        }
Example #19
0
        private void initBombardGui(BombardmentController bombardController)
        {
            this.bombardmentController = bombardController;

            this.fleetController = null;

            this.bombardRenderer.StartBombardment(bombardmentController);
            this.nextRenderer = this.bombardRenderer;

            abilityList.Visible   = false;
            fleetPanel.Visible    = false;
            returnButton.Visible  = true;
            unitInfoPanel.Visible = false;
        }
Example #20
0
        void IGalaxyViewListener.SystemOpened(StarSystemController systemController)
        {
            if (this.InvokeRequired)
            {
                this.BeginInvoke(new Action <StarSystemController>(((IGalaxyViewListener)this).SystemOpened), systemController);
                return;
            }

            this.fleetController    = null;
            this.fleetPanel.Visible = false;

            this.systemRenderer.SetStarSystem(systemController, this.currentPlayer);
            this.nextRenderer = systemRenderer;
        }
Example #21
0
        /// <summary>
        /// This event fires when the user select a unit from the DropDownList control.
        ///     It resets the EmployeeGridView Pager
        ///     It sets Label control for refreshing the EmployeeGridView to "Driver".
        ///     It turns On/Off all the Necessary/Unnecessary columns
        ///     It refreshses the EmployeeGridView
        /// </summary>
        /// <param name="sender">The Sender is a DropDownList control</param>
        /// <param name="e"></param>
        protected void SelectUnitDDL_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (SelectUnitDDL.SelectedIndex == 0)
            {
                InfoUserControl.ShowWarning("Please select a Unit before proceeding!");
                Done.Visible             = false;
                CreateCrew.Visible       = false;
                EmployeeGridView.Visible = false;
                Cancel.Visible           = false;
            }
            else
            {
                string category = (FleetCategory.SelectedItem.Text).Trim();
                Refresh.Text = "Driver";
                FleetController fleetManager = new FleetController();
                int             unitId       = int.Parse(SelectUnitDDL.SelectedValue);
                string          unitDesc     = SelectUnitDDL.SelectedItem.Text;

                if (fleetManager.FoundUnit(unitId, category))
                {
                    InfoUserControl.ShowWarning(unitDesc + " is already assigned to a different crew. If you want to update the Crew assigned to this unit, " +
                                                "Select the crew in the pane below");
                }
                else
                {
                    if (category == "Equipments")
                    {
                        EmployeeGridView.PageIndex          = 0;
                        EmployeeGridView.Columns[4].Visible = false;
                        EmployeeGridView.Columns[5].Visible = true;
                        EmployeeGridView.Columns[6].Visible = true;
                        EmployeeGridView.Columns[7].Visible = false;
                        EmployeeGridView.Visible            = true;
                        Cancel.Visible = true;
                        RefreshDriverList(1);
                    }
                    else if (category == "Trucks")
                    {
                        EmployeeGridView.PageIndex          = 0;
                        EmployeeGridView.Visible            = true;
                        EmployeeGridView.Columns[4].Visible = true;
                        EmployeeGridView.Columns[5].Visible = true;
                        EmployeeGridView.Columns[6].Visible = true;
                        EmployeeGridView.Columns[7].Visible = false;
                        Cancel.Visible = true;
                        RefreshDriverList(2);
                    }
                }
            }
        }
        public void PlanetAreaControllerTestsSetup()
        {
            var playerService = MocksFactory.PlayerService;
            var buildingsService = MocksFactory.BuildingsService;
            var technologiesService = MocksFactory.TechnologiesService;
            var fleetService = MocksFactory.FleetService;
            var worker = MocksFactory.BackgroundWorkerServiceFleet;
            logic = new LogicProvider();

            this.previewController = new PreviewController(playerService, logic);
            this.fleetController = new FleetController(playerService, buildingsService, fleetService, technologiesService, logic, worker);

            Mapper.CreateMap<Planet, PlanetViewModel>();
        }
Example #23
0
    void FireRightClientRpc(int fleetIndex)
    {
        if (IsHost || fleetIndex == -1)
        {
            return;
        }
        FleetController fleet = fleets[fleetIndex];

        if (!fleet)
        {
            Debug.Log("Null fleet controller (destroyed ?)");
            return;
        }
        fleet.GetComponent <FleetController>().FireRight();
    }
Example #24
0
        /// <summary>
        /// This event fires when the user select a unit category (Equipment/truck)
        ///     It resets the EmployeeGirwView to null
        ///     It turns Off all button controls
        ///     It populates the list of Units (Equipment/Truck) in the DrompDownList control
        /// </summary>
        /// <param name="sender">the sender is a RadioButtonList</param>
        /// <param name="e"></param>
        protected void FleetCategory_SelectedIndexChanged(object sender, EventArgs e)
        {
            int             yardId = int.Parse(YardID.Text);
            FleetController fleet  = new FleetController();

            string category = (FleetCategory.SelectedItem.Text).Trim();

            if (category == "Equipments")
            {
                EmployeeGridView.DataSource = null;
                EmployeeGridView.DataBind();
                EmployeeGridView.Visible = false;
                CreateCrew.Visible       = false;
                Done.Visible             = false;
                Cancel.Visible           = true;
                CrewID.Text = "";
                MessageUserControl.TryRun(() =>
                {
                    List <Equipment> equipments  = fleet.GetEquipments(yardId);
                    SelectUnitDDL.DataSource     = equipments;
                    SelectUnitDDL.DataTextField  = nameof(Equipment.Description);
                    SelectUnitDDL.DataValueField = nameof(Equipment.EquipmentID);
                    SelectUnitDDL.Visible        = true;
                    SelectUnitDDL.DataBind();
                    SelectUnitDDL.Items.Insert(0, "Select an Equipment");
                });
            }
            else if (category == "Trucks")
            {
                EmployeeGridView.DataSource = null;
                EmployeeGridView.DataBind();
                EmployeeGridView.Visible = false;
                CreateCrew.Visible       = false;
                Done.Visible             = false;
                Cancel.Visible           = true;
                CrewID.Text = "";
                MessageUserControl.TryRun(() =>
                {
                    List <Truck> units           = fleet.GetTrucks(yardId);
                    SelectUnitDDL.DataSource     = units;
                    SelectUnitDDL.DataTextField  = nameof(Truck.TruckDescription);
                    SelectUnitDDL.DataValueField = nameof(Truck.TruckID);
                    SelectUnitDDL.Visible        = true;
                    SelectUnitDDL.DataBind();
                    SelectUnitDDL.Items.Insert(0, "Select a Truck");
                });
            }
        }
Example #25
0
        protected override void frameUpdate(double deltaTime)
        {
            if (this.refreshData.Check())
            {
                if (this.SelectedFleet != null && !this.SelectedFleet.Valid)
                {
                    this.SelectedFleet = null;
                }

                if (this.currentSelection == GalaxySelectionType.Fleet)
                {
                    this.currentSelection = GalaxySelectionType.None;
                }

                this.ResetLists();
            }
        }
Example #26
0
        private void initBombardGui(BombardmentController bombardController)
        {
            this.bombardmentController = bombardController;

            this.fleetController = null;

            this.bombardRenderer.StartBombardment(bombardmentController);
            this.nextRenderer = this.bombardRenderer;

            abilityList.Visible            = false;
            constructionManagement.Visible = false;
            empyPlanetView.Visible         = false;
            fleetPanel.Visible             = false;
            endTurnButton.Visible          = false;
            returnButton.Visible           = true;
            unitInfoPanel.Visible          = false;
            menuStrip.Visible = false;
        }
Example #27
0
        private void initCombatGui(SpaceBattleController battleController)
        {
            this.conflictController = battleController;

            this.fleetController = null;

            this.combatRenderer.StartCombat(battleController);
            this.nextRenderer = this.combatRenderer;

            abilityList.Visible            = true;
            constructionManagement.Visible = false;
            empyPlanetView.Visible         = false;
            fleetPanel.Visible             = false;
            endTurnButton.Visible          = false;
            returnButton.Visible           = false;
            unitInfoPanel.Visible          = true;
            menuStrip.Visible = false;
        }
        public void InitTestSuite()
        {
            // Setup mocked dependencies
            this.dataServiceMock = new Mock <IDataService>();

            // Create object to test
            this.controller = new FleetController(this.dataServiceMock.Object);

            // Setup mocked dependencies
            this.appSettingsMock     = new Mock <IAppSettings>();
            this.dateTimeWrapperMock = new Mock <IDateTime>();
            this.fileIOServiceMock   = new Mock <IFileIOService>();
            this.HW_MapperMock       = new Mock <IHW_Mapper>();

            // Create object to test
            this.HW_DataService = new HW_DataService(
                this.appSettingsMock.Object,
                this.dateTimeWrapperMock.Object,
                this.fileIOServiceMock.Object,
                this.HW_MapperMock.Object);
        }
Example #29
0
        void IGalaxyViewListener.SystemSelected(StarSystemController systemController)
        {
            if (this.InvokeRequired)
            {
                this.BeginInvoke(new Action <StarSystemController>(((IGalaxyViewListener)this).SystemSelected), systemController);
                return;
            }

            //FIXME(later) update owner check when multiple stellarises can exist at the same star
            if (systemController.StarsAdministration() == null || systemController.StarsAdministration().Owner != this.currentPlayer.Info)
            {
                this.constructionManagement.Visible = false;
                return;
            }

            this.constructionManagement.SetView(systemController.StellarisController());
            this.constructionManagement.Visible = true;

            this.fleetController    = null;
            this.fleetPanel.Visible = false;
        }
Example #30
0
        private void selectFleet(FleetController fleetControl)
        {
            this.fleetController = fleetControl;
            this.galaxyRenderer.SelectedFleet = fleetControl;

            this.shipList.SuspendLayout();
            this.clearShipList();

            foreach (var fleet in this.fleetController.ShipGroups)
            {
                var fleetView = new ShipGroupItem();
                fleetView.SetData(fleet, this.fleetController.Fleet.Owner);
                fleetView.SelectionChanged += shipGroupItem_SelectedIndexChanged;
                fleetView.SplitRequested   += shipGroupItem_SplitRequested;
                this.shipList.Controls.Add(fleetView);
                fleetView.IsSelected = true;
            }

            this.shipList.ResumeLayout();

            this.fleetPanel.Visible = true;
        }
Example #31
0
        protected override void onMouseClick(Vector2 mousePoint, Keys modiferKeys)
        {
            if (panAbsPath > PanClickTolerance)             //TODO(v0.8) maybe make AScene differentiate between click and drag
            {
                return;
            }

            var searchRadius = Math.Max(this.screenUnitScale * ClickRadius, StarMinClickRadius);
            var searchPoint  = convert(mousePoint);

            var allObjects = this.queryScene(searchPoint, searchRadius).
                             OrderBy(x => (x.PhysicalShape.Center - convert(searchPoint)).LengthSquared).
                             ToList();
            var starsFound = allObjects.Where(x => x.Data is StarInfo).Select(x => x.Data as StarInfo).ToList();
            var fleetFound = allObjects.Where(x => x.Data is FleetInfo).Select(x => x.Data as FleetInfo).ToList();

            var foundAny      = starsFound.Any() || fleetFound.Any();
            var isStarClosest =
                starsFound.Any() &&
                (
                    !fleetFound.Any() ||
                    (starsFound[0].Position - searchPoint).Length <= (fleetFound[0].Position - searchPoint).Length
                );

            if (this.SelectedFleet != null)
            {
                if (foundAny && isStarClosest)
                {
                    var destination = this.SelectedFleet.SimulationWaypoints().Any() ? this.SelectedFleet.SimulationWaypoints().Last() : starsFound[0];
                    this.SelectedFleet = modiferKeys.HasFlag(Keys.Control) ? this.SelectedFleet.SendDirectly(destination) : this.SelectedFleet.Send(destination);
                    this.lastSelectedIdleFleets[this.currentPlayer.PlayerIndex] = this.SelectedFleet.Fleet;
                    this.galaxyViewListener.FleetClicked(new FleetInfo[] { this.SelectedFleet.Fleet });
                    this.setupFleetMarkers();
                    this.setupFleetMovement();
                    this.setupSelectionMarkers();
                    this.setupFuelInfo();
                    return;
                }
                else
                {
                    this.galaxyViewListener.FleetDeselected();
                    this.SelectedFleet = null;
                    this.setupMovementEta();
                    this.setupMovementSimulation();
                    this.setupSelectionMarkers();
                }
            }


            if (!foundAny)
            {
                return;
            }

            if (isStarClosest)
            {
                this.currentSelection = GalaxySelectionType.Star;
                this.lastSelectedStars[this.currentPlayer.PlayerIndex] = starsFound[0].Position;
                this.updateStarInfo(this.lastSelectedStar);
                this.setupSelectionMarkers();
            }
            else
            {
                this.currentSelection = GalaxySelectionType.Fleet;
                this.lastSelectedIdleFleets[this.currentPlayer.PlayerIndex] = fleetFound[0];                 //TODO(v0.8) marks wrong fleet when there are multiple players
                this.galaxyViewListener.FleetClicked(fleetFound);
                this.setupSelectionMarkers();
            }
        }