Пример #1
0
        protected override void PerformLinkageOperations()
        {
            base.PerformLinkageOperations();
            grid           = LinkAgent(FindAgent(x => { return(x.player == player); }, typeof(Agents.Grid)), true) as Agents.Grid;
            grid.Delinker += () => { grid = null; };

            grid.ShowInformation(false, (player == Battle.main.attacker ? Battle.main.defender : Battle.main.attacker).aiEnabled, true, true);
        }
Пример #2
0
        protected override void PerformLinkageOperations()
        {
            base.PerformLinkageOperations();
            grid           = LinkAgent(FindAgent(x => { return(x.player == player); }, typeof(Agents.Grid)), true) as Agents.Grid;
            grid.Delinker += () => { grid = null; };

            grid.ShowInformation(true, true, true, true);
        }
Пример #3
0
        protected override void PerformLinkageOperations()
        {
            base.PerformLinkageOperations();
            LinkAgent(FindAgent(x => { return(x.player != player); }, typeof(Flag)), true);
            grid           = (Agents.Grid)LinkAgent(FindAgent(x => { return(x.player == player); }, typeof(Agents.Grid)), true);
            grid.Delinker += () => { grid = null; };

            grid.ShowInformation(false, false, true, true);

            firebutton           = (Firebutton)LinkAgent(FindAgent(x => { return(true); }, typeof(Firebutton)), true);
            firebutton.Delinker += () => { firebutton = null; };

            firebutton.hookedPosition = player.transform.position + Vector3.left * (player.board.tiles.GetLength(0) / 1.5f) + Vector3.up * MiscellaneousVariables.it.boardUIRenderHeight + Vector3.back * player.board.tiles.GetLength(1) / 3.0f;

            Delinker += () => { Token.heldToken = null; };

            float   defaultHeight      = cameraWaypoint.transform.position.y - MiscellaneousVariables.it.boardUIRenderHeight;
            Vector2 defaultSidebarSize = new Vector2(0, defaultHeight * Mathf.Tan(Camera.main.fieldOfView / 2.0f * Mathf.Deg2Rad) * 2.0f);

            defaultSidebarSize.x = (defaultSidebarSize.y * Camera.main.aspect - player.board.tiles.GetLength(0)) / 2.0f;

            SetupAbilityTokenStacking(defaultSidebarSize, defaultHeight);

            //Reconnect any tokens to represent already deployed effects or events.
            int eventTokenCount = 0;

            BattleUIAgent[] tokensToConnect = FindAgents(x =>
            {
                Token token = x as Token;

                if (token.ConnectWithAnyCompatibleEffect())
                {
                    if (token is EventToken)
                    {
                        eventTokenCount++;
                    }
                    return(true);
                }

                return(false);
            }, typeof(Token), int.MaxValue);

            if (eventTokenCount > 0)
            {
                SetupEventTokenStacking(defaultSidebarSize, defaultHeight, eventTokenCount);
            }

            LinkAgents(tokensToConnect, true);

            UpdateAbilityTokens();
        }
Пример #4
0
        protected override void PerformLinkageOperations()
        {
            player = Battle.main.attacker;
            base.PerformLinkageOperations();

            grid           = (Agents.Grid)LinkAgent(FindAgent(x => { return(x.player == player); }, typeof(Agents.Grid)), true);
            grid.Delinker += () => { grid = null; };

            shipbox           = (Shipbox)LinkAgent(FindAgent(x => { return(true); }, typeof(Shipbox)), true);
            shipbox.Delinker += () => { shipbox = null; };

            shipbox.hookedPosition = player.transform.position + Vector3.left * player.board.tiles.GetLength(0) + Vector3.up * MiscellaneousVariables.it.boardUIRenderHeight;

            Delinker += () =>
            {
                for (int i = 0; i < player.board.ships.Length; i++)
                {
                    player.board.ships[i].Invoke("Hide", 3.0f);
                }
            };

            player.board.SpawnShips();
            shipbox.Populate(player.board.placementInfo.allShips);
        }
Пример #5
0
 protected override void PerformLinkageOperations()
 {
     base.PerformLinkageOperations();
     grid           = (Agents.Grid)LinkAgent(FindAgent(x => { return(x.player == Battle.main.defender); }, typeof(Agents.Grid)), false);
     grid.Delinker += () => { grid = null; };
 }