diff --git a/Scripts/game_over_menu.gd b/Scripts/game_over_menu.gd index 9e4a61b..1853a12 100644 --- a/Scripts/game_over_menu.gd +++ b/Scripts/game_over_menu.gd @@ -11,6 +11,10 @@ func update_score() -> void: func restart(): get_tree().change_scene_to_packed(load("res://Scenes/main.tscn")) + GridManager.current_allowed_spawns.clear() + GameManager.score = 0 func back(): get_tree().change_scene_to_packed(main_menu) + GridManager.current_allowed_spawns.clear() + GameManager.score = 0 diff --git a/Scripts/snake_part.gd b/Scripts/snake_part.gd index 77f919f..80d1e46 100644 --- a/Scripts/snake_part.gd +++ b/Scripts/snake_part.gd @@ -42,6 +42,8 @@ var sprite : Sprite2D = $Sprite2D var image_head : CompressedTexture2D = preload("res://Sprites/snake_head.png") var image_head_dead : CompressedTexture2D = preload("res://Sprites/snake_head_dead.png") var image_head_ouroboros : CompressedTexture2D = preload("res://Sprites/snake_head_ouroboros.png") +var image_head_ouroboros_left : CompressedTexture2D = preload("res://Sprites/snake_head_ouroboros_left.png") +var image_head_ouroboros_right : CompressedTexture2D = preload("res://Sprites/snake_head_ouroboros_right.png") var image_left : CompressedTexture2D = preload("res://Sprites/snake_left.png") var image_right : CompressedTexture2D = preload("res://Sprites/snake_right.png") var image_straight : CompressedTexture2D = preload("res://Sprites/snake_straight.png") @@ -203,8 +205,15 @@ func update_sprite() -> void: sprite.texture = image_head States.DEAD: sprite.texture = image_head_dead + return _: - sprite.texture = image_head_ouroboros + var tail_rel_direction : float = current_direction.angle_to(old_direction) + if abs(tail_rel_direction) < 0.1: + sprite.texture = image_head_ouroboros + elif tail_rel_direction > 0: + sprite.texture = image_head_ouroboros_left + elif tail_rel_direction < 0: + sprite.texture = image_head_ouroboros_right PartTypes.TAIL: if state == States.OUROBOROS or state == States.OLD_OUROBOROS: var tail_rel_direction : float = current_direction.angle_to(position - commanding_head.position) diff --git a/Sprites/snake_head_ouroboros_left.kra b/Sprites/snake_head_ouroboros_left.kra new file mode 100644 index 0000000..71ae62d Binary files /dev/null and b/Sprites/snake_head_ouroboros_left.kra differ diff --git a/Sprites/snake_head_ouroboros_left.kra~ b/Sprites/snake_head_ouroboros_left.kra~ new file mode 100644 index 0000000..24dc713 Binary files /dev/null and b/Sprites/snake_head_ouroboros_left.kra~ differ diff --git a/Sprites/snake_head_ouroboros_left.png b/Sprites/snake_head_ouroboros_left.png new file mode 100644 index 0000000..c83dd97 Binary files /dev/null and b/Sprites/snake_head_ouroboros_left.png differ diff --git a/Sprites/snake_head_ouroboros_left.png.import b/Sprites/snake_head_ouroboros_left.png.import new file mode 100644 index 0000000..b92a813 --- /dev/null +++ b/Sprites/snake_head_ouroboros_left.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dxw7jfyp8e1qx" +path="res://.godot/imported/snake_head_ouroboros_left.png-9bd390d425719c3e97efdb36d86a890b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/snake_head_ouroboros_left.png" +dest_files=["res://.godot/imported/snake_head_ouroboros_left.png-9bd390d425719c3e97efdb36d86a890b.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/Sprites/snake_head_ouroboros_left.png~ b/Sprites/snake_head_ouroboros_left.png~ new file mode 100644 index 0000000..84d4059 Binary files /dev/null and b/Sprites/snake_head_ouroboros_left.png~ differ diff --git a/Sprites/snake_head_ouroboros_right.kra b/Sprites/snake_head_ouroboros_right.kra new file mode 100644 index 0000000..bc84d57 Binary files /dev/null and b/Sprites/snake_head_ouroboros_right.kra differ diff --git a/Sprites/snake_head_ouroboros_right.kra~ b/Sprites/snake_head_ouroboros_right.kra~ new file mode 100644 index 0000000..46c9f0f Binary files /dev/null and b/Sprites/snake_head_ouroboros_right.kra~ differ diff --git a/Sprites/snake_head_ouroboros_right.png b/Sprites/snake_head_ouroboros_right.png new file mode 100644 index 0000000..e255417 Binary files /dev/null and b/Sprites/snake_head_ouroboros_right.png differ diff --git a/Sprites/snake_head_ouroboros_right.png.import b/Sprites/snake_head_ouroboros_right.png.import new file mode 100644 index 0000000..ed59d8f --- /dev/null +++ b/Sprites/snake_head_ouroboros_right.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dmi37gjx77kfr" +path="res://.godot/imported/snake_head_ouroboros_right.png-e0525f58136feb93b8340d350f716a12.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://Sprites/snake_head_ouroboros_right.png" +dest_files=["res://.godot/imported/snake_head_ouroboros_right.png-e0525f58136feb93b8340d350f716a12.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1