Zoom, nouvelles mutations et cie

* ajout d'une aide de jeu directement dans l'interface
* ajout de 8 nouvelles mutations (Productif, pressé, pur, vivace, généreux, robuste, protecteur et prolifique)
* changements d'icône pour plus de clarté
* changement de l'animation de recharge pour montrer le temps qui passe
* ajout des mutations rare et de la possibilité d'avoir des mutation niveau 2 dès le départ
* ajout d'un zoom
* correction de bugs (déplacement au dialogue, problème de score au load d'une région)
This commit is contained in:
2026-03-20 17:16:56 +01:00
parent 76707171fa
commit 4b16d52740
52 changed files with 1217 additions and 272 deletions

View File

@@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="70mm"
height="70mm"
viewBox="0 0 70 70.000001"
version="1.1"
id="svg1"
xml:space="preserve"
sodipodi:docname="day_night_sprite.svg"
inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
id="namedview1"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
inkscape:deskcolor="#505050"
inkscape:document-units="mm"
inkscape:zoom="1.837864"
inkscape:cx="14.418913"
inkscape:cy="194.24724"
inkscape:window-width="1920"
inkscape:window-height="1009"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="layer1" /><defs
id="defs1" /><g
id="layer1"
transform="translate(-75.631351,-123.22046)"><g
style="fill:#ffffff"
id="g1"
transform="matrix(-0.26458333,0,0,-0.26458333,113.80635,190.18012)"><path
stroke="none"
d="M 0,0 H 24 V 24 H 0 Z"
fill="none"
id="path1" /><path
d="M 12,1.992 A 10,10 0 1 0 21.236,15.83 C 21.577,15.01 20.76,14.186 19.938,14.52 A 6.5,6.5 0 0 1 13.074,3.733 l 0.077,-0.08 C 13.702,3.023 13.264,2 12.393,2 H 12.127 L 12.059,1.994 11.999,1.992 Z"
id="path2" /></g><g
style="fill:#ffffff"
id="g2"
transform="matrix(0.26458333,0,0,0.26458333,107.45635,126.26081)"><path
stroke="none"
d="M 0,0 H 24 V 24 H 0 Z"
fill="none"
id="path1-2" /><path
d="m 12,19 a 1,1 0 0 1 0.993,0.883 L 13,20 v 1 a 1,1 0 0 1 -1.993,0.117 L 11,21 v -1 a 1,1 0 0 1 1,-1 z"
id="path2-6" /><path
d="m 18.313,16.91 0.094,0.083 0.7,0.7 a 1,1 0 0 1 -1.32,1.497 l -0.094,-0.083 -0.7,-0.7 a 1,1 0 0 1 1.218,-1.567 z"
id="path3" /><path
d="m 7.007,16.993 a 1,1 0 0 1 0.083,1.32 l -0.083,0.094 -0.7,0.7 A 1,1 0 0 1 4.81,17.787 l 0.083,-0.094 0.7,-0.7 a 1,1 0 0 1 1.414,0 z"
id="path4" /><path
d="m 4,11 a 1,1 0 0 1 0.117,1.993 L 4,13 H 3 A 1,1 0 0 1 2.883,11.007 L 3,11 Z"
id="path5" /><path
d="m 21,11 a 1,1 0 0 1 0.117,1.993 L 21,13 H 20 A 1,1 0 0 1 19.883,11.007 L 20,11 Z"
id="path6" /><path
d="m 6.213,4.81 0.094,0.083 0.7,0.7 A 1,1 0 0 1 5.687,7.09 L 5.593,7.007 4.893,6.307 A 1,1 0 0 1 6.11,4.74 l 0.102,0.07 z"
id="path7" /><path
d="m 19.107,4.893 a 1,1 0 0 1 0.083,1.32 l -0.083,0.094 -0.7,0.7 A 1,1 0 0 1 16.91,5.687 l 0.083,-0.094 0.7,-0.7 a 1,1 0 0 1 1.414,0 z"
id="path8" /><path
d="m 12,2 a 1,1 0 0 1 0.993,0.883 L 13,3 V 4 A 1,1 0 0 1 11.007,4.117 L 11,4 V 3 a 1,1 0 0 1 1,-1 z"
id="path9" /><path
d="M 12,7 A 5,5 0 1 1 7.005,12.217 L 7,12 7.005,11.783 A 5,5 0 0 1 12,7 Z"
id="path10" /></g><path
id="path11"
style="fill:none;stroke:#ffffff;stroke-width:0.265;stroke-linecap:round;stroke-dasharray:none;stroke-opacity:1;paint-order:stroke markers fill"
d="m 116.12972,186.7497 c 13.66915,-2.63116 23.55853,-14.57743 23.59081,-28.49748 -0.002,-13.94398 -9.8982,-25.92534 -23.59081,-28.56105 m -10.99674,0.0636 c -13.669155,2.63116 -23.558531,14.57744 -23.590808,28.49749 0.03228,13.92005 9.921656,25.86632 23.590808,28.49748" /></g></svg>

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cihiibon53147"
path="res://.godot/imported/day_night_sprite.svg-b89d7f3e525bc11818c231dc87fa599b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://gui/game/pass_day/assets/day_night_sprite.svg"
dest_files=["res://.godot/imported/day_night_sprite.svg-b89d7f3e525bc11818c231dc87fa599b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
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/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
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
svg/scale=2.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

View File

@@ -7,20 +7,60 @@
[ext_resource type="Theme" uid="uid://5au2k3vf2po3" path="res://gui/ressources/menu.tres" id="4_0pm4g"]
[ext_resource type="Script" uid="uid://0dhj8sdpil7q" path="res://gui/tools/control_animation_player.gd" id="5_dqmg8"]
[ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="6_dqmg8"]
[ext_resource type="Texture2D" uid="uid://cihiibon53147" path="res://gui/game/pass_day/assets/day_night_sprite.svg" id="7_m84xg"]
[sub_resource type="ShaderMaterial" id="ShaderMaterial_27lg1"]
shader = ExtResource("1_v570a")
shader_parameter/strength = 0.0
shader_parameter/mix_percentage = 0.0
shader_parameter/strength = 5.45500025585262
shader_parameter/mix_percentage = 0.02400000114
[sub_resource type="ViewportTexture" id="ViewportTexture_h2bel"]
viewport_path = NodePath("NightAnimation/SubViewport")
[sub_resource type="Animation" id="Animation_rn4dm"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("SubViewport/NightAnimationSprite:rotation")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [0.0]
}
[sub_resource type="Animation" id="Animation_5ap0m"]
resource_name = "pass"
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("SubViewport/NightAnimationSprite:rotation")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.26666668, 0.7, 1),
"transitions": PackedFloat32Array(1, 1, 1, 1),
"update": 0,
"values": [0.0, 3.141592653589793, 3.141592653589793, 6.265732014659643]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_wafeq"]
_data = {
&"RESET": SubResource("Animation_rn4dm"),
&"pass": SubResource("Animation_5ap0m")
}
[node name="PassDay" type="CanvasLayer" unique_id=335255544]
layer = 3
visible = false
script = ExtResource("1_0pm4g")
[node name="Blur" type="ColorRect" parent="." unique_id=546890405]
unique_name_in_owner = true
physics_interpolation_mode = 0
visible = false
material = SubResource("ShaderMaterial_27lg1")
anchors_preset = 15
anchor_right = 1.0
@@ -32,7 +72,6 @@ script = ExtResource("2_bhfpo")
[node name="PassDayInfo" type="VBoxContainer" parent="." unique_id=833110506]
unique_name_in_owner = true
visible = false
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
@@ -46,11 +85,6 @@ unique_name_in_owner = true
script = ExtResource("5_dqmg8")
metadata/_custom_type_script = "uid://0dhj8sdpil7q"
[node name="EnergyPassDayInfo" parent="PassDayInfo" unique_id=2044341204 instance=ExtResource("2_feyaf")]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 6
[node name="ChargeCount" type="Label" parent="PassDayInfo" unique_id=1326590358]
unique_name_in_owner = true
layout_mode = 2
@@ -60,3 +94,48 @@ text = "%d_CHARGE_LEFT"
label_settings = ExtResource("6_dqmg8")
horizontal_alignment = 1
vertical_alignment = 1
[node name="NightAnimation" type="TextureRect" parent="." unique_id=126988628]
unique_name_in_owner = true
custom_minimum_size = Vector2(500, 0)
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
anchor_right = 0.5
anchor_bottom = 0.5
offset_left = -166.0
offset_top = -178.5
offset_right = 166.0
offset_bottom = 178.5
grow_horizontal = 2
grow_vertical = 2
texture = SubResource("ViewportTexture_h2bel")
expand_mode = 5
stretch_mode = 5
[node name="NightAnimationPlayer" type="AnimationPlayer" parent="NightAnimation" unique_id=787903570]
unique_name_in_owner = true
libraries/ = SubResource("AnimationLibrary_wafeq")
[node name="SubViewport" type="SubViewport" parent="NightAnimation" unique_id=1324502966]
transparent_bg = true
size = Vector2i(500, 500)
[node name="NightAnimationSprite" type="Sprite2D" parent="NightAnimation/SubViewport" unique_id=43111409]
position = Vector2(250, 250)
texture = ExtResource("7_m84xg")
[node name="MarginContainer" type="MarginContainer" parent="." unique_id=1163984124]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_constants/margin_left = 15
theme_override_constants/margin_top = 15
theme_override_constants/margin_right = 15
theme_override_constants/margin_bottom = 15
[node name="EnergyPassDayInfo" parent="MarginContainer" unique_id=2044341204 instance=ExtResource("2_feyaf")]
unique_name_in_owner = true
layout_mode = 2

View File

@@ -47,7 +47,7 @@ func setup_energy_values():
current_energy = from_energy
func pass_day_animation():
setup_energy_values()
%ChargeCount.text = tr('%d_CHARGE_LEFT') % GameInfo.game_data.current_region_data.charges
@@ -60,6 +60,7 @@ func pass_day_animation():
await appear()
is_animation_appeared = true
animation_appeared.emit()
%NightAnimationPlayer.play("pass")
await get_tree().create_timer(TIME_MARGIN).timeout
recharging = true
time_since_recharging = 0.
@@ -78,12 +79,20 @@ func appear():
BLUR_MIX_PERCENTAGE,
0.5
)
add_tween(
"modulate:a",
%NightAnimation,
1.,
0.5
)
await add_tween(
"blur_strength",
%Blur,
BLUR_STRENGTH,
0.5
).finished
await %PassDayInfoAnimationPlayer.appear()
func disappear():
@@ -94,12 +103,19 @@ func disappear():
0.0,
0.5
)
add_tween(
"modulate:a",
%NightAnimation,
0.,
0.5
)
await add_tween(
"blur_strength",
%Blur,
0.1,
0.5
).finished
hide()
func add_tween(