From d902a35bcdc113209769845cc83a67ba4b9b0e1c Mon Sep 17 00:00:00 2001 From: Chris Cromer Date: Mon, 21 Nov 2022 01:49:31 -0300 Subject: [PATCH] implement blue turtle logic --- scenes/enemies/turtle/blue/BlueTurtle.cs | 19 +++++++++++++++++++ scenes/enemies/turtle/blue/BlueTurtle.tscn | 10 +++++++++- 2 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 scenes/enemies/turtle/blue/BlueTurtle.cs diff --git a/scenes/enemies/turtle/blue/BlueTurtle.cs b/scenes/enemies/turtle/blue/BlueTurtle.cs new file mode 100644 index 0000000..ae4b3f5 --- /dev/null +++ b/scenes/enemies/turtle/blue/BlueTurtle.cs @@ -0,0 +1,19 @@ +using Godot; +using System; + +public class BlueTurtle : EnemyWalking +{ + private AnimatedSprite _sprite; + + public override void _Ready() + { + base._Ready(); + _sprite = GetNode("AnimatedSprite"); + _sprite.Play("walk"); + } + + public void OnVisibilityNotifier2DScreenExited() + { + Reset(); + } +} diff --git a/scenes/enemies/turtle/blue/BlueTurtle.tscn b/scenes/enemies/turtle/blue/BlueTurtle.tscn index 11d2f3a..2e94ed8 100644 --- a/scenes/enemies/turtle/blue/BlueTurtle.tscn +++ b/scenes/enemies/turtle/blue/BlueTurtle.tscn @@ -1,7 +1,8 @@ -[gd_scene load_steps=10 format=2] +[gd_scene load_steps=11 format=2] [ext_resource path="res://assets/turtle/blue_walking.png" type="Texture" id=1] [ext_resource path="res://assets/turtle/blue_shell.png" type="Texture" id=2] +[ext_resource path="res://scenes/enemies/turtle/blue/BlueTurtle.cs" type="Script" id=3] [sub_resource type="AtlasTexture" id=6] atlas = ExtResource( 2 ) @@ -40,6 +41,7 @@ extents = Vector2( 5.5, 6 ) [node name="BlueTurtle" type="KinematicBody2D"] collision_layer = 4 +script = ExtResource( 3 ) [node name="AnimatedSprite" type="AnimatedSprite" parent="."] frames = SubResource( 4 ) @@ -55,3 +57,9 @@ visible = false position = Vector2( -0.5, 2 ) shape = SubResource( 7 ) disabled = true + +[node name="VisibilityEnabler2D" type="VisibilityEnabler2D" parent="."] +process_parent = true +physics_process_parent = true + +[connection signal="screen_exited" from="VisibilityEnabler2D" to="." method="OnVisibilityNotifier2DScreenExited"]