Example #1
0
 private void _on_Gate_entered(PhysicsBody2D body)
 {
     if (body.IsInGroup("Player"))
     {
         //have to change this to be more reusable
         GetTree().ChangeScene("res://Scenes/LevelKaksi.tscn");
     }
     else if (body.IsInGroup("LevelTwoPlayer"))
     {
         GetTree().ChangeScene("res://Scenes/LevelKolme.tscn");
     }
 }
Example #2
0
 protected void OnBodyEnter(PhysicsBody2D body)
 {
     if (body.IsInGroup("floor"))
     {
         node.LookAt(body.Position);
     }
 }
Example #3
0
 private void OnBodyEnter(PhysicsBody2D body)
 {
     if (body.IsInGroup("floor"))
     {
         activeFloor = body;
     }
 }
Example #4
0
 public void OnArea2DEntered(PhysicsBody2D body2D)
 {
     if (body2D.IsInGroup("Enemy"))
     {
         body2D.EmitSignal("TakeDamage", 2);
     }
 }
    // ================================================================

    void PlayerEntered(PhysicsBody2D body)
    {
        if (body.IsInGroup("Player"))
        {
            Player.StepSound = sound;
        }
    }
Example #6
0
 private void _on_key_body_entered(PhysicsBody2D body)
 {
     if (body.IsInGroup("Player"))
     {
         QueueFree();
     }
 }
Example #7
0
 public void _on_Star_body_entered(PhysicsBody2D body)
 {
     if (body.IsInGroup("Player"))
     {
         this.QueueFree();
     }
 }
Example #8
0
 private void BodyEntered(PhysicsBody2D body)
 {
     if (!running && body.IsInGroup("Player"))
     {
         StartEvent();
         running = true;
     }
 }
Example #9
0
 // Only used on black holes
 public void _on_EventHotizon_body_entered(PhysicsBody2D body)
 {
     if (body.IsInGroup("Player"))
     {
         body.Position        = (body as Player).checkpoint;
         (body as Player).vel = Vector2.Zero;
     }
 }
Example #10
0
 void _on_Body_entered(PhysicsBody2D body)
 {
     if (body.IsInGroup("Enemy"))
     {
         GetParent().GetNode <CameraFollow>("Main Cam").playerDied = true;
         GetParent <Gameplay>().PlayerDied();
         QueueFree();
     }
 }
Example #11
0
 public void _on_Flag_body_entered(PhysicsBody2D body)
 {
     if (body.IsInGroup("Player"))
     {
         GD.Print(body);
         GetNode <Node2D>("Flag").Show();
         (body as Player).checkpoint = GlobalPosition;
     }
 }
Example #12
0
 private void BodyEntered(PhysicsBody2D body)
 {
     if (!autoStart && !running && body.IsInGroup("Player") && Player.State == Player.ST.MOVE)
     {
         StartEvent(0);
         running      = true;
         eventStarted = true;
     }
 }
Example #13
0
 public void _OnLauncherBodyEntered(PhysicsBody2D body)
 {
     if (body.IsInGroup("Player") && quant == 0)
     {
         GD.Print(body);
         Player player = body as Player;
         player.launched = true;
         player.vel      = Mathf.Polar2Cartesian(1, GetGlobalRotation()) * force;
     }
 }
Example #14
0
    private void _on_Player_body_entered(PhysicsBody2D body)
    {
        if (body.IsInGroup("pickup"))
        {
            if (body.Name.Contains("Key1"))
            {
                hasPickupYksi = true;
                var key = GetParent <LevelKaksi>().GetNode("Key1");
                GetParent <LevelKaksi>().RemoveChild(key);
            }
            else if (body.Name.Contains("Key2"))
            {
                hasPickupKaksi = true;
                var key = GetParent <LevelKaksi>().GetNode("Key2");
                GetParent <LevelKaksi>().RemoveChild(key);
            }
            else if (body.Name.Contains("KingKey"))
            {
                hasPickupKolme = true;
                var key = GetParent <LevelKaksi>().GetNode("KingKey");
                GetParent <LevelKaksi>().RemoveChild(key);
            }
        }
        else if (body.IsInGroup("spikes"))
        {
            //a death animation - something like celeste

            //animplayer.connect("finished", get_node("/root/globals"), "setScene", ["res://Scenes/levelselect.scn"])
            //animplayer.play("AnimationPlayer")


            animation.Play("death");
            //death scene transition
            GetTree().ChangeScene("res://Scenes/LevelKaksi.tscn");
        }
        else if (body.IsInGroup("Enemy"))
        {
            GD.Print("hit an enemy");
            GetTree().ChangeScene("res://Scenes/LevelKaksi.tscn");
        }
    }
Example #15
0
        public void OnArea2DEntered(PhysicsBody2D body2D)
        {
            if (body2D.IsInGroup("Enemy"))
            {
                body2D.QueueFree();
                Health -= 1;
            }

            if (Health <= 0)
            {
                QueueFree();
            }
        }
Example #16
0
    // ================================================================

    private void BodyEntered(PhysicsBody2D body)
    {
        if (!Player.Teleporting && body.IsInGroup("Player"))
        {
            Player.Teleporting = true;
            Player.State       = Player.ST.NO_INPUT;

            if (walk)
            {
                Player.Walking           = true;
                Player.MotionOverride    = true;
                Player.WalkSpeedOverride = 130f;

                switch (targetDirection)
                {
                case Direction.Up:
                    Player.Face = Player.SpriteDirection.UP;
                    Player.MotionOverrideVec = new Vector2(0, -1);
                    break;

                case Direction.Down:
                    Player.Face = Player.SpriteDirection.DOWN;
                    Player.MotionOverrideVec = new Vector2(0, 1);
                    break;

                case Direction.Left:
                    Player.Face = Player.SpriteDirection.LEFT;
                    Player.MotionOverrideVec = new Vector2(-1, 0);
                    break;

                case Direction.Right:
                    Player.Face = Player.SpriteDirection.RIGHT;
                    Player.MotionOverrideVec = new Vector2(1, 0);
                    break;

                default:
                    Player.Face = Player.SpriteDirection.UP;
                    Player.MotionOverrideVec = new Vector2(0, -1);
                    break;
                }
                TimerFadeOut.Start();
            }
            else
            {
                Player.Walking = false;
                StartFadeOut();
            }
        }
    }
Example #17
0
    public void _OnColectables(PhysicsBody2D body)
    {
        if (body.IsInGroup("Player") && quant > 0)
        {
            quant--;
        }

        if (quant > 0)
        {
            GetNode <Sprite>("Sprite").Hide();
        }
        else
        {
            GetNode <Sprite>("Sprite").Show();
        }
    }
Example #18
0
    void OnTowerEntered(PhysicsBody2D body)
    {
        if (!body.IsInGroup("Enemy"))
        {
            return;
        }

        stats.TakeHealth(1);

        body.QueueFree();

        if (stats.Health <= 0)
        {
            gameOverMenuScoreLabel.Text = gameLocalScoreLabel.Text;

            GetNode <Game>("/root/Core/Game").Visible = false;
            GetNode <Game>("/root/Core/Game").SetProcess(false);

            GetNode <Control>("/root/Core/GameOverMenu").Visible = true;

            QueueFree();
        }
    }