RESULTS SCREEN

This commit is contained in:
pennyrigate 2023-10-08 19:25:57 -04:00
parent 435855cd5b
commit 81bcfdc34c
15 changed files with 343 additions and 48 deletions

BIN
audio/sounds/fail_shard.ogg Normal file

Binary file not shown.

View file

@ -0,0 +1,15 @@
[remap]
importer="ogg_vorbis"
type="AudioStreamOGGVorbis"
path="res://.import/fail_shard.ogg-f4a17a606ec4c8e07282fd39330025e8.oggstr"
[deps]
source_file="res://audio/sounds/fail_shard.ogg"
dest_files=[ "res://.import/fail_shard.ogg-f4a17a606ec4c8e07282fd39330025e8.oggstr" ]
[params]
loop=false
loop_offset=0

Binary file not shown.

View file

@ -0,0 +1,15 @@
[remap]
importer="ogg_vorbis"
type="AudioStreamOGGVorbis"
path="res://.import/shard_results.ogg-e4052319e009d469e906bde9026be412.oggstr"
[deps]
source_file="res://audio/sounds/shard_results.ogg"
dest_files=[ "res://.import/shard_results.ogg-e4052319e009d469e906bde9026be412.oggstr" ]
[params]
loop=false
loop_offset=0

View file

@ -36,6 +36,8 @@ const a_spaghetti = preload("res://audio/sounds/spaghetti.ogg")
const a_good_job = preload("res://audio/sounds/good_job.ogg")
const a_2600_charge = preload("res://audio/sounds/2600_charge.ogg")
const a_victory = preload("res://audio/sounds/victory.ogg")
const a_shard_results = preload("res://audio/sounds/shard_results.ogg")
const a_fail_shard = preload("res://audio/sounds/fail_shard.ogg")
#Plays a sound
func play_sound(snd,player):

Binary file not shown.

After

Width:  |  Height:  |  Size: 403 B

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/final_score.png-fb476d39fc42e0aa87fe7b2a0ad829cc.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://graphics/hud/final_score.png"
dest_files=[ "res://.import/final_score.png-fb476d39fc42e0aa87fe7b2a0ad829cc.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=true
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=true
svg/scale=1.0

Binary file not shown.

After

Width:  |  Height:  |  Size: 191 B

View file

@ -0,0 +1,35 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/missed_shard.png-26175a30421cb7606ba8b71e96c137b9.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://graphics/hud/missed_shard.png"
dest_files=[ "res://.import/missed_shard.png-26175a30421cb7606ba8b71e96c137b9.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=true
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=true
svg/scale=1.0

View file

@ -1,30 +1,28 @@
extends Node
onready var shards: Node2D = $Shards
onready var shards: Node2D = $ShardsAndBonuses/Shards
onready var score = $Score
onready var time = $Time
onready var final_score: Label = $FinalScore
onready var animation_player = $AnimationPlayer
#Score bonuses
onready var collection_bonus_score = $ShardsAndBonuses/Bonuses/CollectionBonus/CollectionBonusScore
onready var time_bonus_score = $ShardsAndBonuses/Bonuses/TimeBonus/TimeBonusScore
onready var life_bonus_score = $ShardsAndBonuses/Bonuses/LifeBonus/LifeBonusScore
onready var arrow_bonus_score = $ShardsAndBonuses/Bonuses/ArrowBonus/ArrowBonusScore
onready var perfect_bonus_score = $ShardsAndBonuses/Bonuses/PerfectBonus/PerfectBonusScore
const Text3D = preload("res://objects/hud/3d_text.tscn")
func _ready() -> void:
# tween for sequencing
var tween = create_tween()
Fade.fade_in(0.4)
# fill in shard names
var level: LevelEntry = LevelData.levels[Game.current_level]
for i in 5:
var shard = shards.get_child(i)
shard.get_node("Title").text = level.shard_titles[i]
# shard collect animations
tween.tween_interval(0.5)
if Game.shards_collected[i]:
tween.tween_callback(shard, "collect")
score.text = Game.score
score.text = "%05d" % Game.score
time.text = str("TIME: ") + Game.timeify(Game.time)
#Determine score bonuses
collection_bonus_score.text = str("+") + str(Game.collection_bonus)
time_bonus_score.text = str("+") + str(Game.time_bonus)
@ -34,5 +32,18 @@ func _ready() -> void:
func _physics_process(delta: float) -> void:
if Input.is_action_just_released("ui_accept"):
Game.clear_collectibles()
SceneManager.change_scene(preload("res://menus/level_select_scholar.tscn").instance())
animation_player.set_speed_scale(4)
func final_score():
animation_player.set_speed_scale(2)
var text_3d = Text3D.instance()
text_3d.anim = "final score"
self.add_child(text_3d)
func _on_AnimationPlayer_animation_finished(anim_name):
Game.clear_collectibles()
Fade.fade_out(0.4)
yield(Fade, "fade_finished")
SceneManager.change_scene(preload("res://menus/level_select_scholar.tscn").instance())

View file

@ -6,7 +6,8 @@
[ext_resource path="res://graphics/hud/results.png" type="Texture" id=4]
[ext_resource path="res://graphics/hud/perfect_bonus.png" type="Texture" id=5]
[ext_resource path="res://graphics/player/arrow.png" type="Texture" id=6]
[ext_resource path="res://ui/PressStart2P-Regular.ttf" type="DynamicFontData" id=7]
[ext_resource path="res://ui/arrow_figure_8.tres" type="Material" id=7]
[ext_resource path="res://graphics/hud/final_score.png" type="Texture" id=8]
[ext_resource path="res://ui/2ndpuberty_outline.tres" type="Material" id=9]
[ext_resource path="res://ui/theme.tres" type="Theme" id=10]
[ext_resource path="res://menus/results.gd" type="Script" id=13]
@ -32,10 +33,6 @@ shader = ExtResource( 3 )
shader_param/border_color = Color( 0, 0, 0, 1 )
shader_param/border_corners = false
[sub_resource type="DynamicFont" id=9]
outline_color = Color( 0.254902, 0.027451, 0.027451, 1 )
font_data = ExtResource( 7 )
[sub_resource type="ShaderMaterial" id=6]
shader = ExtResource( 1 )
shader_param/speed = Vector2( 4, 8 )
@ -125,7 +122,7 @@ tracks/5/keys = {
[sub_resource type="Animation" id=4]
resource_name = "results"
length = 50.0
length = 24.0
step = 1.0
tracks/0/type = "method"
tracks/0/path = NodePath("ShardsAndBonuses/Shards/ResultsIcon")
@ -134,7 +131,7 @@ tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 3 ),
"times": PoolRealArray( 1 ),
"transitions": PoolRealArray( 1 ),
"values": [ {
"args": [ ],
@ -148,7 +145,7 @@ tracks/1/loop_wrap = true
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/keys = {
"times": PoolRealArray( 4 ),
"times": PoolRealArray( 2 ),
"transitions": PoolRealArray( 1 ),
"values": [ {
"args": [ ],
@ -162,7 +159,7 @@ tracks/2/loop_wrap = true
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/keys = {
"times": PoolRealArray( 5 ),
"times": PoolRealArray( 3 ),
"transitions": PoolRealArray( 1 ),
"values": [ {
"args": [ ],
@ -176,7 +173,7 @@ tracks/3/loop_wrap = true
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/keys = {
"times": PoolRealArray( 6 ),
"times": PoolRealArray( 4 ),
"transitions": PoolRealArray( 1 ),
"values": [ {
"args": [ ],
@ -190,7 +187,7 @@ tracks/4/loop_wrap = true
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/keys = {
"times": PoolRealArray( 7 ),
"times": PoolRealArray( 5 ),
"transitions": PoolRealArray( 1 ),
"values": [ {
"args": [ ],
@ -204,7 +201,7 @@ tracks/5/loop_wrap = true
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/keys = {
"times": PoolRealArray( 9, 10, 17, 18 ),
"times": PoolRealArray( 7, 8, 15, 16 ),
"transitions": PoolRealArray( 1, 1, 1, 1 ),
"update": 0,
"values": [ Vector2( 0, 0 ), Vector2( -256, 0 ), Vector2( -256, 0 ), Vector2( -512, 0 ) ]
@ -216,7 +213,7 @@ tracks/6/loop_wrap = true
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/keys = {
"times": PoolRealArray( 0, 11 ),
"times": PoolRealArray( -2, 9 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 1,
"values": [ false, true ]
@ -228,7 +225,7 @@ tracks/7/loop_wrap = true
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/keys = {
"times": PoolRealArray( 0, 12 ),
"times": PoolRealArray( -2, 10 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 1,
"values": [ false, true ]
@ -240,7 +237,7 @@ tracks/8/loop_wrap = true
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/keys = {
"times": PoolRealArray( 0, 13 ),
"times": PoolRealArray( -2, 11 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 1,
"values": [ false, true ]
@ -252,7 +249,7 @@ tracks/9/loop_wrap = true
tracks/9/imported = false
tracks/9/enabled = true
tracks/9/keys = {
"times": PoolRealArray( 0, 14 ),
"times": PoolRealArray( -2, 12 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 1,
"values": [ false, true ]
@ -264,7 +261,7 @@ tracks/10/loop_wrap = true
tracks/10/imported = false
tracks/10/enabled = true
tracks/10/keys = {
"times": PoolRealArray( 0, 15 ),
"times": PoolRealArray( -2, 13 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 1,
"values": [ false, true ]
@ -276,7 +273,7 @@ tracks/11/loop_wrap = true
tracks/11/imported = false
tracks/11/enabled = true
tracks/11/keys = {
"times": PoolRealArray( 11 ),
"times": PoolRealArray( 9 ),
"transitions": PoolRealArray( 1 ),
"values": [ {
"args": [ ],
@ -290,7 +287,7 @@ tracks/12/loop_wrap = true
tracks/12/imported = false
tracks/12/enabled = true
tracks/12/keys = {
"times": PoolRealArray( 12 ),
"times": PoolRealArray( 10 ),
"transitions": PoolRealArray( 1 ),
"values": [ {
"args": [ ],
@ -304,13 +301,27 @@ tracks/13/loop_wrap = true
tracks/13/imported = false
tracks/13/enabled = true
tracks/13/keys = {
"times": PoolRealArray( 13 ),
"times": PoolRealArray( 11 ),
"transitions": PoolRealArray( 1 ),
"values": [ {
"args": [ ],
"method": "collect"
} ]
}
tracks/14/type = "method"
tracks/14/path = NodePath(".")
tracks/14/interp = 1
tracks/14/loop_wrap = true
tracks/14/imported = false
tracks/14/enabled = true
tracks/14/keys = {
"times": PoolRealArray( 17 ),
"transitions": PoolRealArray( 1 ),
"values": [ {
"args": [ ],
"method": "final_score"
} ]
}
[node name="Results" type="Node"]
script = ExtResource( 13 )
@ -514,6 +525,11 @@ margin_bottom = 23.0
theme = ExtResource( 10 )
text = "+500"
[node name="FinalScore" type="Sprite" parent="ShardsAndBonuses"]
material = ExtResource( 7 )
position = Vector2( 640, 40 )
texture = ExtResource( 8 )
[node name="Score" type="Label" parent="."]
material = ExtResource( 9 )
margin_top = 8.0
@ -523,13 +539,13 @@ theme = ExtResource( 10 )
text = "Score: 0000000"
align = 1
[node name="FinalScore" type="Label" parent="."]
margin_top = 120.0
[node name="Time" type="Label" parent="."]
material = ExtResource( 9 )
margin_top = 178.0
margin_right = 256.0
margin_bottom = 136.0
margin_bottom = 192.0
theme = ExtResource( 10 )
custom_fonts/font = SubResource( 9 )
text = "1234567890"
text = "Time: "
align = 1
[node name="Results" type="Sprite" parent="."]
@ -538,7 +554,10 @@ position = Vector2( 232, 80 )
texture = ExtResource( 4 )
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
autoplay = "New Anim"
autoplay = "results"
playback_speed = 2.0
"anims/New Anim" = SubResource( 3 )
anims/RESET = SubResource( 10 )
anims/results = SubResource( 4 )
[connection signal="animation_finished" from="AnimationPlayer" to="." method="_on_AnimationPlayer_animation_finished"]

View file

@ -7,3 +7,7 @@ export var number = 0
func collect() -> void:
if Game.shards_collected[number] == true:
anims.play("collect")
Audio.play_sound(Audio.a_shard_results,Audio.ac_collectible)
else:
anims.play("fail")
Audio.play_sound(Audio.a_fail_shard,Audio.ac_collectible)

View file

@ -1,8 +1,9 @@
[gd_scene load_steps=10 format=2]
[gd_scene load_steps=12 format=2]
[ext_resource path="res://shaders/1px_border.gdshader" type="Shader" id=1]
[ext_resource path="res://graphics/collectibles/shard.png" type="Texture" id=2]
[ext_resource path="res://menus/results_icon.gd" type="Script" id=3]
[ext_resource path="res://graphics/hud/missed_shard.png" type="Texture" id=4]
[sub_resource type="ShaderMaterial" id=4]
shader = ExtResource( 1 )
@ -40,6 +41,30 @@ tracks/1/keys = {
"update": 1,
"values": [ false ]
}
tracks/2/type = "value"
tracks/2/path = NodePath("FailX:scale")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ Vector2( 0, 0 ) ]
}
tracks/3/type = "value"
tracks/3/path = NodePath("FailX:rotation_degrees")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ 0.0 ]
}
[sub_resource type="Animation" id=3]
resource_name = "collect"
@ -68,6 +93,41 @@ tracks/1/keys = {
"values": [ true ]
}
[sub_resource type="Animation" id=9]
resource_name = "fail"
tracks/0/type = "value"
tracks/0/path = NodePath("FailX:rotation_degrees")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.5 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ 0.0, 360.0 ]
}
tracks/1/type = "bezier"
tracks/1/path = NodePath("FailX:scale:x")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/keys = {
"points": PoolRealArray( 1e-05, -0.25, 0, 0.25, 0, 1, 0, -0.504449, 0.25, 0 ),
"times": PoolRealArray( 0, 0.5 )
}
tracks/2/type = "bezier"
tracks/2/path = NodePath("FailX:scale:y")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/keys = {
"points": PoolRealArray( 1e-05, -0.25, 0, 0.25, 0, 1, 0, -0.504449, 0.25, 0 ),
"times": PoolRealArray( 0, 0.5 )
}
[sub_resource type="Gradient" id=7]
interpolation_mode = 2
offsets = PoolRealArray( 0, 0.734694, 1 )
@ -92,6 +152,7 @@ texture = ExtResource( 2 )
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
anims/RESET = SubResource( 6 )
anims/collect = SubResource( 3 )
anims/fail = SubResource( 9 )
[node name="CollectedParticles" type="CPUParticles2D" parent="."]
pause_mode = 2
@ -118,3 +179,8 @@ material = SubResource( 8 )
scale = Vector2( 1e-05, 1e-05 )
texture = ExtResource( 2 )
offset = Vector2( 1, 1 )
[node name="FailX" type="Sprite" parent="."]
position = Vector2( 1, 1 )
scale = Vector2( 1e-05, 1e-05 )
texture = ExtResource( 4 )

View file

@ -27,6 +27,8 @@ func _set_material(value: Material) -> void:
yield(self, "ready")
text_mesh.mesh.material = text_material
func final_score():
_set_text("%05d" % Game.final_score)
func play_confirm_sound():
pass # Replace with function body.

View file

@ -1,20 +1,22 @@
[gd_scene load_steps=21 format=2]
[gd_scene load_steps=23 format=2]
[ext_resource path="res://ui/PressStart2P-Regular.ttf" type="DynamicFontData" id=1]
[ext_resource path="res://objects/hud/3d_text.gd" type="Script" id=2]
[ext_resource path="res://ui/Kozuka Mincho Std H.otf" type="DynamicFontData" id=3]
[ext_resource path="res://ui/Boba Date.otf" type="DynamicFontData" id=4]
[ext_resource path="res://ui/HooskaiChamferedSquare.ttf" type="DynamicFontData" id=5]
[sub_resource type="SpatialMaterial" id=9]
albedo_color = Color( 0.901961, 0.133333, 0.133333, 1 )
[sub_resource type="SpatialMaterial" id=11]
albedo_color = Color( 0.309804, 0.690196, 0.380392, 1 )
metallic = 0.35
metallic_specular = 0.11
[sub_resource type="DynamicFont" id=19]
font_data = ExtResource( 1 )
[sub_resource type="TextMesh" id=2]
resource_local_to_scene = true
material = SubResource( 9 )
material = SubResource( 11 )
text = "TEXT"
font = SubResource( 19 )
pixel_size = 0.05
@ -183,6 +185,99 @@ tracks/4/keys = {
"values": [ ExtResource( 4 ) ]
}
[sub_resource type="Animation" id=20]
resource_name = "final score"
tracks/0/type = "value"
tracks/0/path = NodePath("TextMesh:rotation_degrees")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/keys = {
"times": PoolRealArray( 0, 0.5, 1 ),
"transitions": PoolRealArray( 1, 1, 1 ),
"update": 0,
"values": [ Vector3( 0, 0, 0 ), Vector3( 180, 0, 216 ), Vector3( 360, 0, 360 ) ]
}
tracks/1/type = "value"
tracks/1/path = NodePath("TextMesh:scale")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 0,
"values": [ Vector3( 1, 1, 1 ) ]
}
tracks/2/type = "value"
tracks/2/path = NodePath("..:text_material")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ SubResource( 11 ) ]
}
tracks/3/type = "value"
tracks/3/path = NodePath("..:text")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ "00000" ]
}
tracks/4/type = "value"
tracks/4/path = NodePath("TextMesh:mesh:font:font_data")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"update": 1,
"values": [ ExtResource( 5 ) ]
}
tracks/5/type = "value"
tracks/5/path = NodePath("TextMesh:translation")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/keys = {
"times": PoolRealArray( 0, 1 ),
"transitions": PoolRealArray( 1, 1 ),
"update": 0,
"values": [ Vector3( -8, 1.8, 0 ), Vector3( 0, 0, 0 ) ]
}
tracks/6/type = "method"
tracks/6/path = NodePath("..")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/keys = {
"times": PoolRealArray( 0 ),
"transitions": PoolRealArray( 1 ),
"values": [ {
"args": [ ],
"method": "final_score"
} ]
}
[sub_resource type="SpatialMaterial" id=9]
albedo_color = Color( 0.901961, 0.133333, 0.133333, 1 )
metallic = 0.35
[sub_resource type="Animation" id=18]
resource_name = "fucker"
length = 2.0
@ -337,11 +432,6 @@ tracks/5/keys = {
"values": [ ExtResource( 1 ) ]
}
[sub_resource type="SpatialMaterial" id=11]
albedo_color = Color( 0.309804, 0.690196, 0.380392, 1 )
metallic = 0.35
metallic_specular = 0.11
[sub_resource type="Animation" id=7]
resource_name = "level complete"
tracks/0/type = "value"
@ -568,7 +658,7 @@ anchor_right = 1.0
anchor_bottom = 1.0
script = ExtResource( 2 )
text = "TEXT"
text_material = SubResource( 9 )
text_material = SubResource( 11 )
[node name="Viewport" type="Viewport" parent="."]
size = Vector2( 256, 192 )
@ -596,6 +686,7 @@ unique_name_in_owner = true
anims/RESET = SubResource( 5 )
"anims/Zoom Entrance" = SubResource( 6 )
"anims/bug world" = SubResource( 17 )
"anims/final score" = SubResource( 20 )
anims/fucker = SubResource( 18 )
"anims/game over" = SubResource( 10 )
"anims/level complete" = SubResource( 7 )