From fa98822a569c1efa2bebc705073c3921b9ae4217 Mon Sep 17 00:00:00 2001 From: David Luevano Alvarado Date: Sat, 4 Jun 2022 03:46:31 -0600 Subject: added progress bar as well as tongue to the snake --- assets/snake/tongue.aseprite | Bin 0 -> 600 bytes assets/snake/tongue.png | Bin 0 -> 99 bytes assets/ui/hud/grow_progress/over.aseprite | Bin 447 -> 465 bytes assets/ui/hud/grow_progress/over.png | Bin 135 -> 111 bytes assets/ui/hud/grow_progress/progress.aseprite | Bin 450 -> 462 bytes assets/ui/hud/grow_progress/progress.png | Bin 120 -> 113 bytes assets/ui/hud/grow_progress/under.aseprite | Bin 437 -> 457 bytes assets/ui/hud/grow_progress/under.png | Bin 120 -> 103 bytes src/entities/actors/snake/scenes/Head.tscn | 31 +++++++++++++++++- src/entities/actors/snake/scripts/head.gd | 17 ++++++++++ src/entities/actors/snake/sprites/tongue.png | Bin 0 -> 99 bytes .../actors/snake/sprites/tongue.png.import | 35 +++++++++++++++++++++ src/ui/UI.tscn | 6 ++-- src/ui/hud/progress_bars/sprites/over.png | Bin 135 -> 111 bytes src/ui/hud/progress_bars/sprites/progress.png | Bin 120 -> 113 bytes src/ui/hud/progress_bars/sprites/under.png | Bin 120 -> 103 bytes 16 files changed, 85 insertions(+), 4 deletions(-) create mode 100644 assets/snake/tongue.aseprite create mode 100644 assets/snake/tongue.png create mode 100644 src/entities/actors/snake/sprites/tongue.png create mode 100644 src/entities/actors/snake/sprites/tongue.png.import diff --git a/assets/snake/tongue.aseprite b/assets/snake/tongue.aseprite new file mode 100644 index 0000000..0f53ed6 Binary files /dev/null and b/assets/snake/tongue.aseprite differ diff --git a/assets/snake/tongue.png b/assets/snake/tongue.png new file mode 100644 index 0000000..be74c66 Binary files /dev/null and b/assets/snake/tongue.png differ diff --git a/assets/ui/hud/grow_progress/over.aseprite b/assets/ui/hud/grow_progress/over.aseprite index cb1f08b..d48528b 100644 Binary files a/assets/ui/hud/grow_progress/over.aseprite and b/assets/ui/hud/grow_progress/over.aseprite differ diff --git a/assets/ui/hud/grow_progress/over.png b/assets/ui/hud/grow_progress/over.png index 82714cf..c5e102d 100644 Binary files a/assets/ui/hud/grow_progress/over.png and b/assets/ui/hud/grow_progress/over.png differ diff --git a/assets/ui/hud/grow_progress/progress.aseprite b/assets/ui/hud/grow_progress/progress.aseprite index 16a5fc2..a7d963a 100644 Binary files a/assets/ui/hud/grow_progress/progress.aseprite and b/assets/ui/hud/grow_progress/progress.aseprite differ diff --git a/assets/ui/hud/grow_progress/progress.png b/assets/ui/hud/grow_progress/progress.png index 0d9ba96..1ddfd77 100644 Binary files a/assets/ui/hud/grow_progress/progress.png and b/assets/ui/hud/grow_progress/progress.png differ diff --git a/assets/ui/hud/grow_progress/under.aseprite b/assets/ui/hud/grow_progress/under.aseprite index 2f78684..5763fd4 100644 Binary files a/assets/ui/hud/grow_progress/under.aseprite and b/assets/ui/hud/grow_progress/under.aseprite differ diff --git a/assets/ui/hud/grow_progress/under.png b/assets/ui/hud/grow_progress/under.png index 8c8b269..f31d502 100644 Binary files a/assets/ui/hud/grow_progress/under.png and b/assets/ui/hud/grow_progress/under.png differ diff --git a/src/entities/actors/snake/scenes/Head.tscn b/src/entities/actors/snake/scenes/Head.tscn index 336265b..a08197b 100644 --- a/src/entities/actors/snake/scenes/Head.tscn +++ b/src/entities/actors/snake/scenes/Head.tscn @@ -1,7 +1,32 @@ -[gd_scene load_steps=4 format=2] +[gd_scene load_steps=10 format=2] [ext_resource path="res://entities/actors/snake/sprites/head.png" type="Texture" id=1] [ext_resource path="res://entities/actors/snake/scripts/head.gd" type="Script" id=2] +[ext_resource path="res://entities/actors/snake/sprites/tongue.png" type="Texture" id=3] + +[sub_resource type="AtlasTexture" id=2] +atlas = ExtResource( 3 ) +region = Rect2( 0, 0, 4, 4 ) + +[sub_resource type="AtlasTexture" id=3] +atlas = ExtResource( 3 ) +region = Rect2( 4, 0, 4, 4 ) + +[sub_resource type="AtlasTexture" id=4] +atlas = ExtResource( 3 ) +region = Rect2( 8, 0, 4, 4 ) + +[sub_resource type="AtlasTexture" id=5] +atlas = ExtResource( 3 ) +region = Rect2( 12, 0, 4, 4 ) + +[sub_resource type="SpriteFrames" id=6] +animations = [ { +"frames": [ SubResource( 2 ), SubResource( 3 ), SubResource( 4 ), SubResource( 5 ) ], +"loop": false, +"name": "default", +"speed": 15.0 +} ] [sub_resource type="CircleShape2D" id=1] radius = 2.0 @@ -10,6 +35,10 @@ radius = 2.0 collision_mask = 262 script = ExtResource( 2 ) +[node name="Tongue" type="AnimatedSprite" parent="."] +position = Vector2( 0, -5 ) +frames = SubResource( 6 ) + [node name="Sprite" type="Sprite" parent="."] texture = ExtResource( 1 ) diff --git a/src/entities/actors/snake/scripts/head.gd b/src/entities/actors/snake/scripts/head.gd index 117f461..1e17b18 100644 --- a/src/entities/actors/snake/scripts/head.gd +++ b/src/entities/actors/snake/scripts/head.gd @@ -5,12 +5,19 @@ enum { RIGHT=1 } +onready var tongue_sprite: AnimatedSprite = $Tongue + var _initial_speed: float = Global.SNAKE_SPEED var velocity: Vector2 = Vector2.ZERO var _direction: Vector2 = Vector2.UP var _time_elapsed: float = 0.0 +func _ready() -> void: + Event.connect("food_eaten", self, "_on_food_eaten") + tongue_sprite.visible = false + + func _physics_process(delta: float) -> void: if Input.is_action_pressed("move_left"): _rotate_to(LEFT) @@ -36,3 +43,13 @@ func _handle_time_elapsed(delta: float) -> void: Event.emit_signal("snake_path_new_point", global_position) _time_elapsed = 0.0 _time_elapsed += delta + + +func _on_food_eaten(properties: Dictionary) -> void: + print("tongue food eaten") + if not tongue_sprite.visible: + tongue_sprite.visible = true + tongue_sprite.play() + yield(tongue_sprite, "animation_finished") + tongue_sprite.stop() + tongue_sprite.frame = 0 diff --git a/src/entities/actors/snake/sprites/tongue.png b/src/entities/actors/snake/sprites/tongue.png new file mode 100644 index 0000000..be74c66 Binary files /dev/null and b/src/entities/actors/snake/sprites/tongue.png differ diff --git a/src/entities/actors/snake/sprites/tongue.png.import b/src/entities/actors/snake/sprites/tongue.png.import new file mode 100644 index 0000000..6899fff --- /dev/null +++ b/src/entities/actors/snake/sprites/tongue.png.import @@ -0,0 +1,35 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/tongue.png-0200be53e2fea7c532d2e177715af415.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://entities/actors/snake/sprites/tongue.png" +dest_files=[ "res://.import/tongue.png-0200be53e2fea7c532d2e177715af415.stex" ] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_mode=0 +compress/bptc_ldr=0 +compress/normal_map=0 +flags/repeat=0 +flags/filter=false +flags/mipmaps=false +flags/anisotropic=false +flags/srgb=2 +process/fix_alpha_border=false +process/premult_alpha=false +process/HDR_as_SRGB=false +process/invert_color=false +process/normal_map_invert_y=false +stream=false +size_limit=0 +detect_3d=false +svg/scale=1.0 diff --git a/src/ui/UI.tscn b/src/ui/UI.tscn index 14701f0..980faf4 100644 --- a/src/ui/UI.tscn +++ b/src/ui/UI.tscn @@ -28,11 +28,11 @@ margin_bottom = 8.0 [node name="HBoxProgressBars" type="HBoxContainer" parent="Root/StatsHUD/VBox"] margin_top = 12.0 margin_right = 120.0 -margin_bottom = 20.0 +margin_bottom = 16.0 [node name="GrowthProgress" parent="Root/StatsHUD/VBox/HBoxProgressBars" instance=ExtResource( 4 )] -margin_right = 40.0 -margin_bottom = 8.0 +margin_right = 20.0 +margin_bottom = 4.0 [node name="MarginContainer" type="MarginContainer" parent="Root"] anchor_top = 1.0 diff --git a/src/ui/hud/progress_bars/sprites/over.png b/src/ui/hud/progress_bars/sprites/over.png index 82714cf..c5e102d 100644 Binary files a/src/ui/hud/progress_bars/sprites/over.png and b/src/ui/hud/progress_bars/sprites/over.png differ diff --git a/src/ui/hud/progress_bars/sprites/progress.png b/src/ui/hud/progress_bars/sprites/progress.png index 0d9ba96..1ddfd77 100644 Binary files a/src/ui/hud/progress_bars/sprites/progress.png and b/src/ui/hud/progress_bars/sprites/progress.png differ diff --git a/src/ui/hud/progress_bars/sprites/under.png b/src/ui/hud/progress_bars/sprites/under.png index 8c8b269..f31d502 100644 Binary files a/src/ui/hud/progress_bars/sprites/under.png and b/src/ui/hud/progress_bars/sprites/under.png differ -- cgit v1.2.3