コード例 #1
0
ファイル: World.cs プロジェクト: Tr1ll10ns/frc2020-game-jam
    public override void _Ready()
    {
        // load in some nodes
        asteroidManager   = GetNode <AsteroidManager>("AsteroidManager");
        endGameDelayTimer = GetNode <Timer>("EndGameDelayTimer");
        canvasLayer       = GetNode <CanvasLayer>("CanvasLayer");
        map         = GetNode <Map>("Map");
        gui         = canvasLayer.GetNode <GUI>("GUI");
        techTree    = canvasLayer.GetNode <Control>("TechTree");
        leaderBoard = canvasLayer.GetNode <Control>("Leaderboard");
        quitPopup   = canvasLayer.GetNode <ConfirmationDialog>("QuitPopup");

        Signals.FinalWaveCompleteEvent  += OnFinalWaveComplete;
        Signals.TerritoryDestroyedEvent += OnTerritoryDestroyed;

        gui.TechTreeButtonPressedEvent    += OnTechTreeButtonPressed;
        gui.LeaderBoardButtonPressedEvent += OnLeaderBoardButtonPressed;

        quitPopup.Connect("confirmed", this, nameof(OnQuitPopupConfirmed));

        // setup our list of territories per owner
        map.Territories.ForEach(t => numTerritoriesPerPlayer[t.TerritoryOwner - 1]++);
        asteroidManager.Territories = map.Territories;

        AddPlayersToWorld();

        // after the world is setup, tell the server to start the timer and begin the game
        Server.Instance.PostBeginGame();
    }
コード例 #2
0
    // Called when the node enters the scene tree for the first time.
    public override void _Ready()
    {
        CanvasLayer canvas = this.GetNode <CanvasLayer>("CanvasLayer");

        this.popupPause    = canvas.GetNode <Popup>("PauseScreen");
        this.popupWin      = canvas.GetNode <Popup>("WinScreen");
        this.popupMainMenu = canvas.GetNode <Popup>("MainMenuScreen");

        // this.popupPause.PopupCentered();
        // this.popupWin.PopupCentered();

        this.popupMainMenu.PopupCentered();


        //GD.Print(GetViewport().Size);
    }
コード例 #3
0
        public override void _Ready()
        {
            base._Ready();

            _canvas = GetNode <CanvasLayer>("./CanvasLayer");
            if (!IsInstanceValid(_canvas) || _canvas == null)
            {
                _canvas = new CanvasLayer()
                {
                    Name = "CanvasLayer"
                };
                AddChild(_canvas);
            }

            _glyph = _canvas.GetNode <Sprite>("./Glyph");
            if (!IsInstanceValid(_glyph) || _glyph == null)
            {
                _glyph = new Sprite()
                {
                    Name = "Glyph"
                };
                AddChild(_glyph);
            }

            if (IsInstanceValid(Cursor))
            {
                Input.SetCustomMouseCursor(Cursor);
            }
        }
コード例 #4
0
    public override void _Ready()
    {
        manager    = (GameManager)GetNode("GameManager");
        canvas     = (CanvasLayer)GetNode("CanvasLayer");
        menuBox    = (VBoxContainer)canvas.GetNode("VBoxContainer");
        levelsGrid = (GridContainer)canvas.GetNode("GridContainer");
        playButton = (Button)menuBox.GetNode("ButtonPlayer");

        if (manager.currentlevel != 0)
        {
            playButton.Text = "Continue";
        }

        manager.updateData();
        levelSelector = (LevelSelector)levelsGrid;
        levelSelector.EnableUpTo(manager.maxLevel);
    }
コード例 #5
0
    void ChangeWeapon(Weapon target)
    {
        if (weapon != null)
        {
            weapon.QueueFree();
        }

        weapon = target;
        canvas.GetNode("Control").AddChild(weapon);
        canvas.Offset = new Vector2(0f, 576f);
    }
コード例 #6
0
    public void SetHUDVisibility(bool visible)
    {
        var control = _hud.GetNode <Control>("Control");

        control.Visible = visible;
    }