Ejemplo n.º 1
0
 public override void _Ready()
 {
     base._Ready();
     pathfindingTileMap = NodeGetter.GetFirstNodeInGroup <PathfindingTileMap>(GetTree(), GameConstants.PathfindingTileMapGroup, true);
     tileMapManipulator = pathfindingTileMap.tileMapManipulator;
     player             = NodeGetter.GetFirstNodeInGroup <Player>(GetTree(), GameConstants.PlayerGroup, true);
 }
Ejemplo n.º 2
0
 public override void _Ready()
 {
     base._Ready();
     removeTreeChecker  = GetNode <RemoveTreeChecker>(removeTreeCheckerNodePath);
     playerStateMachine = GetNode <PlayerStateMachine>(playerStateMachineNodePath);
     gameState          = NodeGetter.GetFirstNodeInGroup <GameState>(GetTree(), GameConstants.GameStateGroup, true);
 }
Ejemplo n.º 3
0
        public override void _Ready()
        {
            base._Ready();
            titleLabel     = GetNode <Label>(titleLabelNodePath);
            messageLabel   = GetNode <Label>(messageLabelNodePath);
            continueButton = GetNode <Button>(continueButtonNodePath);
            continueButton.Connect("pressed", this, nameof(OnContinueButtonPressed));

            soundEngineNode = NodeGetter.GetFirstNodeInGroup <SoundEngineNode>(GetTree(), GameConstants.SoundEngineGroup, true);
            if (pointsLimitTitleText.EndsWith("won"))
            {
                soundEngineNode.PlaySfx(winningSound, this);
            }
            else
            {
                soundEngineNode.PlaySfx(loosingSound, this);
            }

            var gameState = NodeGetter.GetFirstNodeInGroup <GameState>(GetTree(), GameConstants.GameStateGroup, true);

            if (gameState.isPointLimitEnabled)
            {
                titleLabel.SetText(Tr(pointsLimitTitleText));
                messageLabel.SetText(Tr(pointsLimitMessageText));
            }
            else
            {
                titleLabel.SetText(Tr(worldLimitTitleText));
                messageLabel.SetText(Tr(worldLimitMessageText));
            }
        }
        private void SetInitialPosition()
        {
            var windowWidth          = (int)ProjectSettings.GetSetting("display/window/size/width");
            var windowHeight         = (int)ProjectSettings.GetSetting("display/window/size/height");
            var playerGlobalPosition = NodeGetter.GetFirstNodeInGroup <Player>(GetTree(), GameConstants.PlayerGroup, true).GetGlobalPosition();

            camera.SetGlobalPosition(playerGlobalPosition - new Vector2(windowWidth, windowHeight));
        }
Ejemplo n.º 5
0
    public override void _Ready()
    {
        actionRadiusCollider = GetNode <Area2D>(actionRadiusColliderNodePath);
        actionRadiusCollider.Connect("area_entered", this, nameof(OnAreaEntered));
        actionRadiusCollider.Connect("area_exited", this, nameof(OnAreaExited));

        pathfindingTileMap = NodeGetter.GetFirstNodeInGroup <PathfindingTileMap>(GetTree(), GameConstants.PathfindingTileMapGroup, true);
    }
Ejemplo n.º 6
0
        public override void _Ready()
        {
            base._Ready();
            entityMovement = GetNode <EntityMovement>(entityMovementNodePath);
            gameState      = NodeGetter.GetFirstNodeInGroup <GameState>(GetTree(), GameConstants.GameStateGroup, true);

            pathfindingTileMap = NodeGetter.GetFirstNodeInGroup <PathfindingTileMap>(GetTree(), GameConstants.PathfindingTileMapGroup, true);
            soundEngineNode    = NodeGetter.GetFirstNodeInGroup <SoundEngineNode>(GetTree(), GameConstants.SoundEngineGroup, true);
        }
Ejemplo n.º 7
0
 public override void _Ready()
 {
     pathfindingTileMap      = NodeGetter.GetFirstNodeInGroup <PathfindingTileMap>(GetTree(), GameConstants.PathfindingTileMapGroup, true);
     treeActionRadiusTexture = GetNode <Sprite>(textureNodePath);
     Connect("area_entered", this, nameof(OnEntered));
     Connect("area_exited", this, nameof(OnExited));
     Connect("body_entered", this, nameof(OnEntered));
     Connect("body_exited", this, nameof(OnExited));
 }
        public Vector2 GetTileMapPosition()
        {
            if (pathfindingTileMap == null)
            {
                pathfindingTileMap = NodeGetter.GetFirstNodeInGroup <PathfindingTileMap>(GetTree(), GameConstants.PathfindingTileMapGroup, true);
            }

            return(pathfindingTileMap.WorldToMap(GetGlobalPosition()));
        }
Ejemplo n.º 9
0
        public override void _Ready()
        {
            base._Ready();
            killTreeInteractionObject = GetNode <InteractionOption>(killTreeInteractionObjectNodePath);
            healTreeInteractionObject = GetNode <InteractionOption>(healTreeInteractionObjectNodePath);
            killTreeInteractionObject.Connect("gui_input", this, nameof(KillTreeSelected));
            healTreeInteractionObject.Connect("gui_input", this, nameof(HealTreeSelected));

            player = NodeGetter.GetFirstNodeInGroup <Player>(GetTree(), GameConstants.PlayerGroup, true);
        }
Ejemplo n.º 10
0
        public override void _Ready()
        {
            base._Ready();
            GetNode <Eventing>(Eventing.EventingNodePath).EmitSignal(nameof(Eventing.LevelSetupFinished));
            gameUi             = GetNode <Control>(gameUiNodePath);
            pauseMenuContainer = GetNode <Control>(pauseMenuContainerNodePath);

            soundEngineNode = NodeGetter.GetFirstNodeInGroup <SoundEngineNode>(GetTree(), GameConstants.SoundEngineGroup, true);
            soundEngineNode.PlayMusic("rainforest-01");
        }
Ejemplo n.º 11
0
        public override void _Ready()
        {
            base._Ready();
            timer = new Timer {
                OneShot = true
            };

            AddChild(timer);
            soundEngineNode = NodeGetter.GetFirstNodeInGroup <SoundEngineNode>(GetTree(), GameConstants.SoundEngineGroup, true);
        }
Ejemplo n.º 12
0
 public override void _Ready()
 {
     base._Ready();
     gameState = NodeGetter.GetFirstNodeInGroup <GameState>(GetTree(), GameConstants.GameStateGroup, true);
     internalMaxMovementSpeed = speedInTileMaps * GameConstants.GameUnitSize;
     Texture       = targetToFollow is Player ? playerTexture : demonTexture;
     positionTween = new Tween();
     AddChild(positionTween);
     SetGlobalPosition(GetParent <Node2D>().GetGlobalPosition());
 }
        public override void _Ready()
        {
            base._Ready();
            gameState = NodeGetter.GetFirstNodeInGroup <GameState>(GetTree(), GameConstants.GameStateGroup, true);
            if (gameState.hasTileMapSetupBegun)
            {
                return;
            }

            SetupTileMap(gameState);
        }
Ejemplo n.º 14
0
        public override void _Ready()
        {
            base._Ready();
            playerPointsLabel = GetNode <Label>(playerPointsLabelNodePath);
            demonPointsLabel  = GetNode <Label>(demonPointsLabelNodePath);
            progress          = GetNode <ProgressBar>(progressNodePath);
            progressTween     = GetNode <Tween>(progressTweenNodePath);
            gameState         = NodeGetter.GetFirstNodeInGroup <GameState>(GetTree(), GameConstants.GameStateGroup, true);

            GetNode <Eventing>(Eventing.EventingNodePath).Connect(nameof(Eventing.PointsChanged), this, nameof(OnPointsChanged));
        }
Ejemplo n.º 15
0
        public override void _Ready()
        {
            base._Ready();
            gameState = NodeGetter.GetFirstNodeInGroup <GameState>(GetTree(), GameConstants.GameStateGroup, true);
            player    = NodeGetter.GetFirstNodeInGroup <Player>(GetTree(), GameConstants.PlayerGroup, true);

            pointTimer       = GetNode <Timer>(pointTimerNodePath);
            treeState        = GetNode <TreeState>(treeStateNodePath);
            addEnergyTimer   = GetNode <Timer>(addEnergyTimerNodePath);
            treeActionRadius = GetNode <TreeActionRadius>(treeActionRadiusNodePath);
            pointTimer.Connect("timeout", this, nameof(OnPointTimerTimeout));
            addEnergyTimer.Connect("timeout", this, nameof(OnEnergyTimerTimeout));
        }
        public override void Enter(IStateMachineMessage message = null) {
            if (!(message is MoveToPositionMessage)) {
                throw new Exception("State message is not of Type \"MoveToPositionMessage\"");
            }

            soundPlayer = soundEngineNode.PlaySfxLoop2D(deamonWalkSound, NodeGetter.GetFirstNodeInGroup<Demon>(GetTree(), GameConstants.DemonGroup, true));

            GetNode<Eventing>(Eventing.EventingNodePath).Connect(nameof(Eventing.DemonTargetReached), this, nameof(TargetReached));
            GetNode<Eventing>(Eventing.EventingNodePath).Connect(nameof(Eventing.TargetCannotBeReached), this, nameof(TargetCannotBeReached));
            GetNode<Eventing>(Eventing.EventingNodePath).Connect(nameof(Eventing.InvalidateDemonPath), this, nameof(OnPathInvalidated));
            targetPosition = ((MoveToPositionMessage) message).GetTargetPosition();
            OnPathInvalidated();
        }
Ejemplo n.º 17
0
        public override void _Ready()
        {
            base._Ready();
            startWithPointLimitGameButton = GetNode <Button>(startGameWithPointLimitButtonNodePath);
            startWithPointLimitGameButton.Connect("pressed", this, nameof(OnStartWithPointLimitPressed));
            startGameButton = GetNode <Button>(startGameButtonNodePath);
            startGameButton.Connect("pressed", this, nameof(StartGame));
            quitGameButton = GetNode <Button>(quitGameButtonNodePath);
            quitGameButton.Connect("pressed", this, nameof(OnQuitPressed));

            soundEngineNode = NodeGetter.GetFirstNodeInGroup <SoundEngineNode>(GetTree(), GameConstants.SoundEngineGroup, true);
            soundEngineNode.PlayMusic("intro_03");
        }
Ejemplo n.º 18
0
        public override void _Ready()
        {
            base._Ready();
            playerEnergyProgress = GetNode <ProgressBar>(playerEnergyProgressNodePath);
            demonEnergyProgress  = GetNode <ProgressBar>(demonEnergyProgressNodePath);
            playerEnergyTween    = GetNode <Tween>(playerEnergyTweenNodePath);
            demonEnergyTween     = GetNode <Tween>(demonEnergyTweenNodePath);
            gameState            = NodeGetter.GetFirstNodeInGroup <GameState>(GetTree(), GameConstants.GameStateGroup, true);

            playerEnergyProgress.SetValue(gameState.GetPlayerEnergy());
            demonEnergyProgress.SetValue(gameState.GetDemonEnergy());

            GetNode <Eventing>(Eventing.EventingNodePath).Connect(nameof(Eventing.PlayerEnergyChanged), this, nameof(OnPlayerEnergyChanged));
            GetNode <Eventing>(Eventing.EventingNodePath).Connect(nameof(Eventing.DemonEnergyChanged), this, nameof(OnDemonEnergyChanged));
        }
Ejemplo n.º 19
0
        public override void _Ready()
        {
            base._Ready();
            levelContainer = GetNode <Node2D>(levelContainerNodePath);
            menuContainer  = GetNode <Control>(menuContainerNodePath);
            GetNode <Eventing>(Eventing.EventingNodePath).Connect(nameof(Eventing.IntroFinished), this, nameof(OnIntroFinished));
            GetNode <Eventing>(Eventing.EventingNodePath).Connect(nameof(Eventing.StartGamePressed), this, nameof(OnStartGamePressed));
            GetNode <Eventing>(Eventing.EventingNodePath).Connect(nameof(Eventing.GameWon), this, nameof(OnGameWon));
            GetNode <Eventing>(Eventing.EventingNodePath).Connect(nameof(Eventing.GameOver), this, nameof(OnGameOver));
            GetNode <Eventing>(Eventing.EventingNodePath).Connect(nameof(Eventing.ContinuePressed), this, nameof(OnContinuePressed));
            GetNode <Eventing>(Eventing.EventingNodePath).Connect(nameof(Eventing.FinishCurrentGame), this, nameof(OnFinishCurrentGamePressed));
            gameState = NodeGetter.GetFirstNodeInGroup <GameState>(GetTree(), GameConstants.GameStateGroup, true);

            menuContainer.AddChild(introPackedScene.Instance());
            SetupMainLevel(gameState);
        }
Ejemplo n.º 20
0
        public override void _Ready()
        {
            base._Ready();
            hoverIndicator   = GetNode <HoverIndicator>(hoverIndicatorNodePath);
            treeActionRadius = GetNode <TreeActionRadius>(actionRadiusNodePath);
            stateMachine     = GetNode <TreeStateMachine>(stateMachineNodePath);
            treeState        = GetNode <TreeState>(treeStateNodePath);
            interactionPopup = interactionPopupPackedScene.Instance() as InteractionPopup;

            uiContainer = NodeGetter.GetFirstNodeInGroup <Control>(GetTree(), GameConstants.UiContainerGroup, true);

            soundEngineNode = NodeGetter.GetFirstNodeInGroup <SoundEngineNode>(GetTree(), GameConstants.SoundEngineGroup, true);

            uiContainer?.AddChild(interactionPopup);
            interactionPopup.Init(this);
            Connect("tree_exiting", this, nameof(OnTreeExiting));
        }
Ejemplo n.º 21
0
        public override async void _Ready()
        {
            base._Ready();
            idleBehaviour             = GetNode <DemonIdleBehaviour>(idleBehaviourNodePath);
            wanderOutsideBehaviour    = GetNode <DemonWanderOutsideBehaviour>(wanderOutsideBehaviourNodePath);
            wanderInsideBehaviour     = GetNode <DemonWanderInsideBehaviour>(wanderInsideBehaviourNodePath);
            wanderRandomBehaviour     = GetNode <DemonWanderRandomPositionBehaviour>(wanderRandomBehaviourNodePath);
            infestRandomTreeBehaviour = GetNode <DemonInfestRandomTreeBehaviour>(infestRandomTreeBehaviourNodePath);
            infestTreeThatPlayerCantReachBehaviour      = GetNode <DemonInfestTreeThatPlayerCantReachBehaviour>(infestTreeThatPlayerCantReachBehaviourNodePath);
            infestTreeWithBestDistanceToHealthBehaviour = GetNode <DemonInfestTreeWithBestDistanceToHealthRationBehaviour>(infestTreeWithBestDistanceToHealthBehaviourNodePath);
            movePositionFinder = GetNode <MovePositionFinder>(movePositionFinderNodePath);
            gameState          = NodeGetter.GetFirstNodeInGroup <GameState>(GetTree(), GameConstants.GameStateGroup, true);

            await ToSignal(GetNode <Eventing>(Eventing.EventingNodePath), nameof(Eventing.LevelSetupFinished));

            SetupBehaviourTree();
        }
Ejemplo n.º 22
0
        internal static INodeGetter NodeGetter()
        {
            var cacheKey = CacheKey.Build <Resolver, NodeGetter>("NodeGetterInstance");

            var nodeGetter = Cache.Instance.Get <INodeGetter>(cacheKey, () =>
            {
                var umbracoHelper = new UmbracoHelper(UmbracoContext.Current);
                var umbAdaptor    = new UmbracoHelperAdaptor(umbracoHelper);
                var getter        = new NodeGetter(umbAdaptor);

                if (ConfigurationManager.AppSettings[AppSettingKey] == true.ToString().ToLower())
                {
                    return(new NodeGetterCachedProxy(getter));
                }

                return(getter);
            });

            return(nodeGetter);
        }
Ejemplo n.º 23
0
 public override void _Ready()
 {
     base._Ready();
     gameState         = NodeGetter.GetFirstNodeInGroup <GameState>(GetTree(), GameConstants.GameStateGroup, true);
     tmpTweetContainer = GetNode <Control>(tmpTweetContainerNodePath);
     playerEnergy      = GetNode <ProgressBar>(playerEnergyNodePath);
     demonEnergy       = GetNode <ProgressBar>(demonEnergyNodePath);
     tweetUpdater      = GetNode <TweetUpdater>(tweetUpdaterNodePath);
     tweetTimer        = new Timer {
         OneShot = true
     };
     tutorialTweetTimer = new Timer {
         OneShot = true
     };
     AddChild(tweetTimer);
     AddChild(tutorialTweetTimer);
     AddChild(buffAnimationTween);
     tweetUpdater.GetTweets(UpdateTweets);
     tutorialTweets.AddRange(tweetUpdater.GetTutorialTweets().statuses);
     soundEngineNode = NodeGetter.GetFirstNodeInGroup <SoundEngineNode>(GetTree(), GameConstants.SoundEngineGroup, true);
 }
Ejemplo n.º 24
0
 private void OnStartWithPointLimitPressed()
 {
     NodeGetter.GetFirstNodeInGroup <GameState>(GetTree(), GameConstants.GameStateGroup, true).isPointLimitEnabled = true;
     StartGame();
 }
Ejemplo n.º 25
0
        public override void Enter(IStateMachineMessage message = null)
        {
            //TODO: show death animation
            //TODO: after animation finish:
            var isPlayerInActionRadius = GetOwner <TreeTileMapObject>().EntityInActionRadius(NodeGetter.GetFirstNodeInGroup <Player>(GetTree(), GameConstants.PlayerGroup, true));

            pathfindingTileMap.tileMapManipulator.DeleteTree(GetGlobalPosition());
            if (isPlayerInActionRadius)
            {
                pathfindingTileMap.tileMapManipulator.CheckLoosingCondition();
            }
        }
 public override void _Ready()
 {
     base._Ready();
     entityMovement  = GetNode <EntityMovement>(entityMovementNodePath);
     soundEngineNode = NodeGetter.GetFirstNodeInGroup <SoundEngineNode>(GetTree(), GameConstants.SoundEngineGroup, true);
 }
Ejemplo n.º 27
0
 public override void _Ready()
 {
     entityMovement     = GetNode <EntityMovement>(entityMovementNodePath);
     pathfindingTileMap = NodeGetter.GetFirstNodeInGroup <PathfindingTileMap>(GetTree(), GameConstants.PathfindingTileMapGroup, true);
 }
Ejemplo n.º 28
0
 public override void _Ready()
 {
     base._Ready();
     pathfindingTileMap = NodeGetter.GetFirstNodeInGroup <PathfindingTileMap>(GetTree(), GameConstants.PathfindingTileMapGroup, true);
 }