Dev Demo 2

* Ajout des achievement Steam
* Ajout d'une annonce à la récupération d'un artefact et ajout de textes axplicatifs sur les annonces d'artefacts et de mutation
* Fix du léger glitch des tooltips
* Ajout de clarté sur la machine de respawn dans le vaisseau
This commit is contained in:
2026-05-28 15:40:09 +02:00
parent 7b09f2ba7c
commit 1d6ff78535
30 changed files with 417 additions and 264 deletions

30
common/icons/restore.svg Normal file
View File

@@ -0,0 +1,30 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
class="icon icon-tabler icons-tabler-outline icon-tabler-restore"
version="1.1"
id="svg4"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs4" />
<path
d="M 3.06,13 A 9,9 0 1 0 3.55,8.913"
id="path2"
style="stroke:#ffffff;stroke-opacity:1" />
<path
d="m 3,4.001 v 5 h 5"
id="path3"
style="stroke:#ffffff;stroke-opacity:1" />
<path
d="m 11,12 a 1,1 0 1 0 2,0 1,1 0 1 0 -2,0"
id="path4"
style="stroke:#ffffff;stroke-opacity:1" />
</svg>

After

Width:  |  Height:  |  Size: 772 B

View File

@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dwq22io1cc27y"
path="res://.godot/imported/restore.svg-d9ef9a5a8dc88e1f3cce883293c64588.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://common/icons/restore.svg"
dest_files=["res://.godot/imported/restore.svg-d9ef9a5a8dc88e1f3cce883293c64588.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

@@ -68,6 +68,11 @@ func spawn_player(relay_base : RelayBase):
relay_base.player.global_position = choosen_incubator.global_position + Vector3.UP
relay_base.player.rotation.y = choosen_incubator.rotation.y
if base_name == "MERCURY":
SteamConnection.unlock_achievement(SteamConnection.ACH_MERCURY_BASE)
elif base_name == "VENUS":
SteamConnection.unlock_achievement(SteamConnection.ACH_REACH_VENUS_BASE)
func spawn_dead_orchid(relay_base : RelayBase):
var dead_orchid := DEAD_ORCHID_SCENE.instantiate() as Node3D
relay_base.add_child(dead_orchid)

View File

@@ -1,16 +1,18 @@
extends Node
const APP_ID = "4452760"
func _init():
OS.set_environment("SteamAppID", APP_ID)
OS.set_environment("SteamGameID", APP_ID)
const ACH_SPIN_PLANET="STW_SPIN_PLANET"
const ACH_FINISH_TUTORIAL="STW_FINISH_TUTORIAL"
const ACH_MEET_DEMETER="STW_MEET_DEMETER"
const ACH_UNLOCK_ALL_MUTATION="STW_UNLOCK_ALL_MUTATIONS"
const ACH_KICK_YOUR_OLD_BODY="STW_KICK_YOUR_OLD_BODY"
const ACH_MERCURY_BASE="STW_REACH_MERCURY_BASE"
const ACH_REACH_VENUS_BASE="STW_REACH_VENUS_BASE"
func _ready():
Steam.steamInit()
var is_running = Steam.isSteamRunning()
if !is_running:
printerr("Steam is not running")
return
func unlock_achievement(achivement_name : String):
if Steam.isSteamRunning():
var status = Steam.getAchievement(achivement_name)
print("Steam Achievement %s" %achivement_name)
if status.ret and not status.achieved:
Steam.setAchievement(achivement_name)
Steam.storeStats()

View File

@@ -1,6 +1,7 @@
[gd_scene format=3 uid="uid://bhbc1monbgumh"]
[ext_resource type="Script" uid="uid://xamd5y6tig71" path="res://entities/interactable_3d/cristal/scripts/artefact_announce.gd" id="1_2sroa"]
[ext_resource type="Script" uid="uid://c6lr0fucklsto" path="res://common/game_data/scripts/artefacts/pile/pile.gd" id="2_2sroa"]
[ext_resource type="Texture2D" uid="uid://bi5jo6pf0acjb" path="res://common/icons/carambola.svg" id="2_3vg7r"]
[ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="3_doutq"]
[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="4_bw55c"]
@@ -10,12 +11,17 @@
[ext_resource type="Texture2D" uid="uid://dth2mj0nh2q70" path="res://common/icons/align-right.svg" id="9_qlk3h"]
[ext_resource type="Script" uid="uid://b4tkium34c831" path="res://gui/game/card/scripts/card_stat_info.gd" id="10_d5x7w"]
[ext_resource type="Texture2D" uid="uid://bsvxhafoxwmw0" path="res://common/icons/cube-3d-sphere.svg" id="11_mb83y"]
[ext_resource type="Texture2D" uid="uid://cwewx7cdy085h" path="res://common/icons/help-hexagon.svg" id="12_041ff"]
[ext_resource type="Environment" uid="uid://bxyp24f85p0xf" path="res://gui/game/assets/gui_3d_environment.tres" id="13_uyc6b"]
[ext_resource type="Theme" uid="uid://bgcmd213j6gk1" path="res://gui/ressources/hud.tres" id="14_kb1t6"]
[ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://common/icons/bolt.svg" id="15_ijwr2"]
[sub_resource type="Resource" id="Resource_3vg7r"]
script = ExtResource("2_2sroa")
metadata/_custom_type_script = "uid://c6lr0fucklsto"
[sub_resource type="ViewportTexture" id="ViewportTexture_6hxtc"]
viewport_path = NodePath("Particles/SubViewport")
viewport_path = NodePath("Container/Particles/SubViewport")
[sub_resource type="Curve" id="Curve_brrmr"]
_limits = [-200.0, 200.0, 0.0, 1.0]
@@ -32,27 +38,30 @@ font_size = 50
font_color = Color(1, 0.6509804, 0.09019608, 1)
[sub_resource type="ViewportTexture" id="ViewportTexture_smt8b"]
viewport_path = NodePath("AnnounceContainer/ObjectVisualiser/SubViewport")
viewport_path = NodePath("Container/AnnounceContainer/ObjectVisualiser/SubViewport")
[sub_resource type="Resource" id="Resource_xdybx"]
[sub_resource type="Resource" id="Resource_doutq"]
script = ExtResource("8_duftv")
title_text = "DESCRIPTION"
title_text = "Description"
title_icon = ExtResource("9_qlk3h")
text = "TALION_OVERLOADER_DESC_TEXT"
text = "PILE_DESC_TEXT"
[sub_resource type="Resource" id="Resource_041ff"]
[sub_resource type="Resource" id="Resource_bw55c"]
script = ExtResource("7_tryv5")
title = "TALION_OVERLOADER"
subtitle = "ARTEFACT"
title = "PILE"
subtitle = "Artefact"
important_stat_icon = ExtResource("11_mb83y")
sections = Array[ExtResource("8_duftv")]([SubResource("Resource_xdybx")])
sections = Array[ExtResource("8_duftv")]([SubResource("Resource_doutq")])
[sub_resource type="LabelSettings" id="LabelSettings_2sroa"]
font_size = 23
[sub_resource type="Animation" id="Animation_aao0q"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("ArtefactAnnounce/AnnounceContainer:theme_override_constants/separation")
tracks/0/path = NodePath("ArtefactAnnounce/Container/AnnounceContainer:theme_override_constants/separation")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
@@ -64,7 +73,7 @@ tracks/0/keys = {
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("ArtefactAnnounce/Particles:modulate")
tracks/1/path = NodePath("ArtefactAnnounce/Container/Particles:modulate")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
@@ -76,19 +85,19 @@ tracks/1/keys = {
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("ArtefactAnnounce/AnnounceContainer:modulate")
tracks/2/path = NodePath("ArtefactAnnounce:visible")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"times": PackedFloat32Array(0.03333333),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Color(1, 1, 1, 1)]
"update": 1,
"values": [false]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("ArtefactAnnounce/MarginContainer/BackgroundRect:modulate:a")
tracks/3/path = NodePath("ArtefactAnnounce/Container:modulate:a")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
@@ -97,18 +106,6 @@ tracks/3/keys = {
"update": 1,
"values": [1.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("ArtefactAnnounce:visible")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0.03333333),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
[sub_resource type="Animation" id="Animation_b6hac"]
resource_name = "appear"
@@ -116,7 +113,7 @@ length = 0.8
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("ArtefactAnnounce/AnnounceContainer:theme_override_constants/separation")
tracks/0/path = NodePath("ArtefactAnnounce/Container/AnnounceContainer:theme_override_constants/separation")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/keys = {
@@ -128,7 +125,7 @@ tracks/0/keys = {
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("ArtefactAnnounce/Particles:modulate")
tracks/1/path = NodePath("ArtefactAnnounce/Container/Particles:modulate")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/keys = {
@@ -140,39 +137,27 @@ tracks/1/keys = {
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("ArtefactAnnounce/AnnounceContainer:modulate")
tracks/2/interp = 2
tracks/2/path = NodePath("ArtefactAnnounce:visible")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0.2, 0.8),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("ArtefactAnnounce/MarginContainer/BackgroundRect:modulate:a")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0.03333333, 0.8),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [0.0, 0.8]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("ArtefactAnnounce:visible")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 0.16666667),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [false, true]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("ArtefactAnnounce/Container:modulate:a")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0.13333334, 0.8),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [0.0, 1.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_1aa3a"]
_data = {
@@ -182,22 +167,28 @@ _data = {
[node name="ArtefactAnnounce" type="CanvasLayer" unique_id=1447182082]
layer = 2
visible = false
script = ExtResource("1_2sroa")
announce_artefact = SubResource("Resource_3vg7r")
[node name="MarginContainer" type="MarginContainer" parent="." unique_id=1853133518]
[node name="Container" type="Control" parent="." unique_id=686450138]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
[node name="BackgroundRect" type="ColorRect" parent="MarginContainer" unique_id=1594037653]
layout_mode = 2
color = Color(0.0352941, 0.0196078, 0.12549, 0.705882)
[node name="BackgroundRect" type="ColorRect" parent="Container" unique_id=1594037653]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
color = Color(0.036075003, 0.019499997, 0.13, 0.78431374)
[node name="Particles" type="TextureRect" parent="." unique_id=1748571879]
[node name="Particles" type="TextureRect" parent="Container" unique_id=1748571879]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
@@ -212,11 +203,11 @@ grow_vertical = 2
mouse_filter = 2
texture = SubResource("ViewportTexture_6hxtc")
[node name="SubViewport" type="SubViewport" parent="Particles" unique_id=1123249182]
[node name="SubViewport" type="SubViewport" parent="Container/Particles" unique_id=1123249182]
transparent_bg = true
size = Vector2i(1000, 1000)
[node name="GPUParticles2D" type="CPUParticles2D" parent="Particles/SubViewport" unique_id=220592083]
[node name="GPUParticles2D" type="CPUParticles2D" parent="Container/Particles/SubViewport" unique_id=220592083]
position = Vector2(500, 500)
amount = 20
texture = ExtResource("2_3vg7r")
@@ -230,33 +221,32 @@ linear_accel_max = 5.0
linear_accel_curve = SubResource("Curve_brrmr")
color_ramp = SubResource("Gradient_0u75y")
[node name="AnnounceContainer" type="VBoxContainer" parent="." unique_id=645433045]
[node name="AnnounceContainer" type="VBoxContainer" parent="Container" unique_id=645433045]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
offset_top = -627.0
offset_bottom = 627.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
theme_override_constants/separation = 4
alignment = 1
[node name="AnnounceTitle" type="Label" parent="AnnounceContainer" unique_id=1768593559]
[node name="AnnounceTitle" type="Label" parent="Container/AnnounceContainer" unique_id=1768593559]
unique_name_in_owner = true
layout_mode = 2
text = "NEW_ARTEFACT"
label_settings = ExtResource("3_doutq")
horizontal_alignment = 1
[node name="AnnounceText" type="Label" parent="AnnounceContainer" unique_id=768724763]
[node name="AnnounceText" type="Label" parent="Container/AnnounceContainer" unique_id=768724763]
unique_name_in_owner = true
layout_mode = 2
text = "TALION_OVERLOADER"
text = "PILE"
label_settings = SubResource("LabelSettings_u8fe7")
horizontal_alignment = 1
[node name="ObjectVisualiser" type="TextureRect" parent="AnnounceContainer" unique_id=1180983374]
[node name="ObjectVisualiser" type="TextureRect" parent="Container/AnnounceContainer" unique_id=1180983374]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 4
@@ -264,27 +254,46 @@ mouse_filter = 0
texture = SubResource("ViewportTexture_smt8b")
stretch_mode = 5
script = ExtResource("5_5vr2f")
info = SubResource("Resource_041ff")
info = SubResource("Resource_bw55c")
[node name="SubViewport" type="SubViewport" parent="AnnounceContainer/ObjectVisualiser" unique_id=1795775056]
[node name="SubViewport" type="SubViewport" parent="Container/AnnounceContainer/ObjectVisualiser" unique_id=1795775056]
own_world_3d = true
transparent_bg = true
size = Vector2i(300, 300)
[node name="AnnouceObject" type="Node3D" parent="AnnounceContainer/ObjectVisualiser/SubViewport" unique_id=1527573801]
[node name="AnnouceObject" type="Node3D" parent="Container/AnnounceContainer/ObjectVisualiser/SubViewport" unique_id=1527573801]
unique_name_in_owner = true
transform = Transform3D(-0.47699222, 0, 0.878631, 0, 0.9995686, 0, -0.8787731, 0, -0.47690943, 0, 0, 0)
transform = Transform3D(0.49246997, -0.037707455, 0.8692438, 0.6477846, -0.65092874, -0.39512447, 0.5810579, 0.75763476, -0.2962104, 0, 0, 0)
[node name="Camera3D" type="Camera3D" parent="AnnounceContainer/ObjectVisualiser/SubViewport" unique_id=173755338]
[node name="Camera3D" type="Camera3D" parent="Container/AnnounceContainer/ObjectVisualiser/SubViewport" unique_id=173755338]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1)
keep_aspect = 0
current = true
fov = 20.0
[node name="WorldEnvironment" type="WorldEnvironment" parent="AnnounceContainer/ObjectVisualiser/SubViewport" unique_id=1135825303]
[node name="WorldEnvironment" type="WorldEnvironment" parent="Container/AnnounceContainer/ObjectVisualiser/SubViewport" unique_id=1135825303]
environment = ExtResource("13_uyc6b")
[node name="OkButton" type="Button" parent="AnnounceContainer" unique_id=249785792]
[node name="HBoxContainer" type="HBoxContainer" parent="Container/AnnounceContainer" unique_id=1714739118]
custom_minimum_size = Vector2(0, 71.475)
layout_mode = 2
theme_override_constants/separation = 8
alignment = 1
[node name="TextureRect" type="TextureRect" parent="Container/AnnounceContainer/HBoxContainer" unique_id=1247508373]
custom_minimum_size = Vector2(30, 30)
layout_mode = 2
texture = ExtResource("12_041ff")
expand_mode = 1
stretch_mode = 5
[node name="Label" type="Label" parent="Container/AnnounceContainer/HBoxContainer" unique_id=812537515]
layout_mode = 2
text = "ADD_A_PASSIVE_EFFECT_FOR_THIS_TRAVEL"
label_settings = SubResource("LabelSettings_2sroa")
horizontal_alignment = 1
[node name="OkButton" type="Button" parent="Container/AnnounceContainer" unique_id=249785792]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 4

View File

@@ -77,8 +77,11 @@ shape = SubResource("BoxShape3D_nvfy2")
[node name="ArtefactAnnounce" parent="." unique_id=114641656 instance=ExtResource("8_3rrt0")]
unique_name_in_owner = true
visible = true
announce_artefact = null
[node name="MutationAnnounce" parent="." unique_id=1447182082 instance=ExtResource("9_247i2")]
unique_name_in_owner = true
visible = false
[editable path="CristalModelCrack"]

View File

@@ -14,10 +14,11 @@
[ext_resource type="PackedScene" uid="uid://mwk845fx5ye2" path="res://entities/interactable_3d/cristal/assets/cristal.blend" id="12_wy2oe"]
[ext_resource type="Environment" uid="uid://bxyp24f85p0xf" path="res://gui/game/assets/gui_3d_environment.tres" id="13_kyl1n"]
[ext_resource type="Theme" uid="uid://bgcmd213j6gk1" path="res://gui/ressources/hud.tres" id="14_d2gpy"]
[ext_resource type="Texture2D" uid="uid://cwewx7cdy085h" path="res://common/icons/help-hexagon.svg" id="14_vlom2"]
[ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://common/icons/bolt.svg" id="15_hu5cq"]
[sub_resource type="ViewportTexture" id="ViewportTexture_6hxtc"]
viewport_path = NodePath("Particles/SubViewport")
viewport_path = NodePath("Container/Particles/SubViewport")
[sub_resource type="Curve" id="Curve_brrmr"]
_limits = [-200.0, 200.0, 0.0, 1.0]
@@ -34,7 +35,7 @@ font_size = 50
font_color = Color(1, 0.6509804, 0.09019608, 1)
[sub_resource type="ViewportTexture" id="ViewportTexture_smt8b"]
viewport_path = NodePath("AnnounceContainer/ObjectVisualiser/SubViewport")
viewport_path = NodePath("Container/AnnounceContainer/ObjectVisualiser/SubViewport")
[sub_resource type="Resource" id="Resource_rjaqi"]
script = ExtResource("8_0osya")
@@ -49,12 +50,15 @@ subtitle = "Mutation"
important_stat_icon = ExtResource("6_n403s")
sections = Array[ExtResource("8_0osya")]([SubResource("Resource_rjaqi")])
[sub_resource type="LabelSettings" id="LabelSettings_02o74"]
font_size = 23
[sub_resource type="Animation" id="Animation_aao0q"]
length = 0.001
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("MutationAnnounce/AnnounceContainer:theme_override_constants/separation")
tracks/0/path = NodePath("MutationAnnounce/Container/AnnounceContainer:theme_override_constants/separation")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
@@ -66,7 +70,7 @@ tracks/0/keys = {
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("MutationAnnounce/Particles:modulate")
tracks/1/path = NodePath("MutationAnnounce/Container/Particles:modulate")
tracks/1/interp = 1
tracks/1/loop_wrap = true
tracks/1/keys = {
@@ -78,19 +82,19 @@ tracks/1/keys = {
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("MutationAnnounce/AnnounceContainer:modulate")
tracks/2/path = NodePath("MutationAnnounce:visible")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0),
"times": PackedFloat32Array(0.03333333),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Color(1, 1, 1, 1)]
"update": 1,
"values": [false]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("MutationAnnounce/MarginContainer/BackgroundRect:modulate:a")
tracks/3/path = NodePath("MutationAnnounce/Container:modulate:a")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
@@ -99,18 +103,6 @@ tracks/3/keys = {
"update": 1,
"values": [1.0]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("MutationAnnounce:visible")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0.03333333),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
[sub_resource type="Animation" id="Animation_b6hac"]
resource_name = "appear"
@@ -118,7 +110,7 @@ length = 0.8
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("MutationAnnounce/AnnounceContainer:theme_override_constants/separation")
tracks/0/path = NodePath("MutationAnnounce/Container/AnnounceContainer:theme_override_constants/separation")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/keys = {
@@ -130,7 +122,7 @@ tracks/0/keys = {
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("MutationAnnounce/Particles:modulate")
tracks/1/path = NodePath("MutationAnnounce/Container/Particles:modulate")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/keys = {
@@ -142,39 +134,27 @@ tracks/1/keys = {
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("MutationAnnounce/AnnounceContainer:modulate")
tracks/2/interp = 2
tracks/2/path = NodePath("MutationAnnounce:visible")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0.2, 0.8),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("MutationAnnounce/MarginContainer/BackgroundRect:modulate:a")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0.03333333, 0.8),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [0.0, 0.8]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("MutationAnnounce:visible")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0, 0.16666667),
"transitions": PackedFloat32Array(1, 1),
"update": 1,
"values": [false, true]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("MutationAnnounce/Container:modulate:a")
tracks/3/interp = 2
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0.13333334, 0.8),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [0.0, 1.0]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_1aa3a"]
_data = {
@@ -184,23 +164,28 @@ _data = {
[node name="MutationAnnounce" type="CanvasLayer" unique_id=1447182082]
layer = 2
visible = false
script = ExtResource("1_02o74")
[node name="MarginContainer" type="MarginContainer" parent="." unique_id=1853133518]
[node name="Container" type="Control" parent="." unique_id=250759747]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
[node name="BackgroundRect" type="ColorRect" parent="Container" unique_id=1594037653]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
color = Color(0.03529412, 0.019607844, 0.12941177, 0.78431374)
[node name="BackgroundRect" type="ColorRect" parent="MarginContainer" unique_id=1594037653]
layout_mode = 2
mouse_filter = 2
color = Color(0.0352941, 0.0196078, 0.12549, 0.705882)
[node name="Particles" type="TextureRect" parent="." unique_id=1748571879]
[node name="Particles" type="TextureRect" parent="Container" unique_id=1748571879]
layout_mode = 1
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
@@ -215,11 +200,11 @@ grow_vertical = 2
mouse_filter = 2
texture = SubResource("ViewportTexture_6hxtc")
[node name="SubViewport" type="SubViewport" parent="Particles" unique_id=1123249182]
[node name="SubViewport" type="SubViewport" parent="Container/Particles" unique_id=1123249182]
transparent_bg = true
size = Vector2i(1000, 1000)
[node name="GPUParticles2D" type="CPUParticles2D" parent="Particles/SubViewport" unique_id=220592083]
[node name="GPUParticles2D" type="CPUParticles2D" parent="Container/Particles/SubViewport" unique_id=220592083]
position = Vector2(500, 500)
amount = 20
texture = ExtResource("2_vlom2")
@@ -233,32 +218,31 @@ linear_accel_max = 5.0
linear_accel_curve = SubResource("Curve_brrmr")
color_ramp = SubResource("Gradient_0u75y")
[node name="AnnounceContainer" type="VBoxContainer" parent="." unique_id=645433045]
[node name="AnnounceContainer" type="VBoxContainer" parent="Container" unique_id=645433045]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
offset_top = -627.0
offset_bottom = 627.0
grow_horizontal = 2
grow_vertical = 2
theme_override_constants/separation = 4
alignment = 1
[node name="AnnounceTitle" type="Label" parent="AnnounceContainer" unique_id=1768593559]
[node name="AnnounceTitle" type="Label" parent="Container/AnnounceContainer" unique_id=1768593559]
unique_name_in_owner = true
layout_mode = 2
text = "NEW_MUTATION"
label_settings = ExtResource("3_5hs4t")
horizontal_alignment = 1
[node name="AnnounceText" type="Label" parent="AnnounceContainer" unique_id=768724763]
[node name="AnnounceText" type="Label" parent="Container/AnnounceContainer" unique_id=768724763]
unique_name_in_owner = true
layout_mode = 2
text = "Ancien"
label_settings = SubResource("LabelSettings_u8fe7")
horizontal_alignment = 1
[node name="ObjectVisualiser" type="TextureRect" parent="AnnounceContainer" unique_id=1180983374]
[node name="ObjectVisualiser" type="TextureRect" parent="Container/AnnounceContainer" unique_id=1180983374]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 4
@@ -267,7 +251,7 @@ stretch_mode = 5
script = ExtResource("5_qu1xy")
info = SubResource("Resource_kgj7d")
[node name="MutationIconTextureRect" type="TextureRect" parent="AnnounceContainer/ObjectVisualiser" unique_id=312214951]
[node name="MutationIconTextureRect" type="TextureRect" parent="Container/AnnounceContainer/ObjectVisualiser" unique_id=312214951]
unique_name_in_owner = true
layout_mode = 1
anchors_preset = 8
@@ -283,28 +267,47 @@ grow_horizontal = 2
grow_vertical = 2
texture = ExtResource("6_n403s")
[node name="SubViewport" type="SubViewport" parent="AnnounceContainer/ObjectVisualiser" unique_id=1795775056]
[node name="SubViewport" type="SubViewport" parent="Container/AnnounceContainer/ObjectVisualiser" unique_id=1795775056]
own_world_3d = true
transparent_bg = true
size = Vector2i(300, 300)
[node name="AnnouceObject" type="Node3D" parent="AnnounceContainer/ObjectVisualiser/SubViewport" unique_id=1527573801]
[node name="AnnouceObject" type="Node3D" parent="Container/AnnounceContainer/ObjectVisualiser/SubViewport" unique_id=1527573801]
unique_name_in_owner = true
transform = Transform3D(0.9998366, 0, 0, 0, 0.9995686, 0, 0, 0, 0.9996744, 0, 0, 0)
transform = Transform3D(-0.66996473, 0.079749085, -0.73779225, -0.56796145, 0.58463466, 0.5788058, 0.47777697, 0.80682886, -0.34651512, 0, 0, 0)
[node name="cristal" parent="AnnounceContainer/ObjectVisualiser/SubViewport/AnnouceObject" unique_id=1362490576 instance=ExtResource("12_wy2oe")]
[node name="cristal" parent="Container/AnnounceContainer/ObjectVisualiser/SubViewport/AnnouceObject" unique_id=1362490576 instance=ExtResource("12_wy2oe")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0)
[node name="Camera3D" type="Camera3D" parent="AnnounceContainer/ObjectVisualiser/SubViewport" unique_id=173755338]
[node name="Camera3D" type="Camera3D" parent="Container/AnnounceContainer/ObjectVisualiser/SubViewport" unique_id=173755338]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 10)
keep_aspect = 0
current = true
fov = 20.0
[node name="WorldEnvironment" type="WorldEnvironment" parent="AnnounceContainer/ObjectVisualiser/SubViewport" unique_id=1135825303]
[node name="WorldEnvironment" type="WorldEnvironment" parent="Container/AnnounceContainer/ObjectVisualiser/SubViewport" unique_id=1135825303]
environment = ExtResource("13_kyl1n")
[node name="OkButton" type="Button" parent="AnnounceContainer" unique_id=249785792]
[node name="HBoxContainer" type="HBoxContainer" parent="Container/AnnounceContainer" unique_id=1306240981]
custom_minimum_size = Vector2(0, 71.475)
layout_mode = 2
theme_override_constants/separation = 8
alignment = 1
[node name="TextureRect" type="TextureRect" parent="Container/AnnounceContainer/HBoxContainer" unique_id=1018668980]
custom_minimum_size = Vector2(30, 30)
layout_mode = 2
texture = ExtResource("14_vlom2")
expand_mode = 1
stretch_mode = 5
[node name="Label" type="Label" parent="Container/AnnounceContainer/HBoxContainer" unique_id=1496120454]
layout_mode = 2
text = "THIS_MUTATION_CAN_NOW_APPEAR_ON_SEEDS"
label_settings = SubResource("LabelSettings_02o74")
horizontal_alignment = 1
[node name="OkButton" type="Button" parent="Container/AnnounceContainer" unique_id=249785792]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 4

View File

@@ -55,29 +55,29 @@ func update_rotation(delta):
func set_announce_artefact(artefact := announce_artefact):
for c in %AnnouceObject.get_children():
c.queue_free()
if is_node_ready():
for c in %AnnouceObject.get_children():
c.queue_free()
if is_node_ready() and artefact:
if is_node_ready() and artefact:
%AnnounceTitle.text = "NEW_ARTEFACT"
%AnnounceText.text = artefact.get_artefact_name()
%ObjectVisualiser.info = artefact.card_info()
%AnnounceTitle.text = "NEW_ARTEFACT"
%AnnounceText.text = artefact.get_artefact_name()
%ObjectVisualiser.info = artefact.card_info()
%AnnouceObject.add_child(
artefact.get_3d_scene().instantiate()
)
%AnnouceObject.add_child(
artefact.get_3d_scene().instantiate()
)
if not visible:
%AnimationPlayer.play("appear")
Input.mouse_mode = Input.MOUSE_MODE_VISIBLE
AudioManager.play_sfx("Unlock_tool")
elif artefact == null and visible:
%AnimationPlayer.play_backwards("appear")
if not Engine.is_editor_hint():
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
if not visible:
%AnimationPlayer.play("appear")
Input.mouse_mode = Input.MOUSE_MODE_VISIBLE
AudioManager.play_sfx("Unlock_tool")
elif artefact == null and visible:
%AnimationPlayer.play_backwards("appear")
if not Engine.is_editor_hint():
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
announce_artefact = artefact

View File

@@ -42,6 +42,10 @@ func unlock_mutation():
get_tree().create_timer(1.).timeout.connect(
func (): %MutationAnnounce.announce_mutation = new_mutation
);
if progression.mutations_unlocked == len(progression.get_all_mutations()):
SteamConnection.unlock_achievement(SteamConnection.ACH_UNLOCK_ALL_MUTATION)
else:
var talion_relay = TalionRelayArtifact.new()

View File

@@ -1,6 +1,7 @@
[gd_scene format=3 uid="uid://b2tn4biidxwdo"]
[ext_resource type="PackedScene" uid="uid://111umh57ekg5" path="res://entities/player_3d/resources/3d_orchid.blend" id="1_4gn86"]
[ext_resource type="Script" uid="uid://belels58bosgj" path="res://entities/player_3d/scripts/dead_orchid.gd" id="1_lhvrd"]
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_xuy43"]
radius = 0.42504883
@@ -8,6 +9,7 @@ height = 0.8718262
[node name="DeadOrchid" type="RigidBody3D" unique_id=1056532235]
transform = Transform3D(-0.98981106, 0, 0.14238709, 0, 1, 0, -0.14238709, 0, -0.98981106, 0, 0, 0)
script = ExtResource("1_lhvrd")
[node name="3d_orchid" parent="." unique_id=1207424236 instance=ExtResource("1_4gn86")]

View File

@@ -0,0 +1,2 @@
extends RigidBody3D
class_name DeadOrchid

View File

@@ -0,0 +1 @@
uid://belels58bosgj

View File

@@ -16,6 +16,8 @@ var query_mouse := false
@export var controlling_player = true
var kick_old_body_ach_sended = false
func _ready():
Dialogic.timeline_started.connect(
func():
@@ -84,10 +86,13 @@ func _physics_process(delta):
move_and_slide()
for i in get_slide_collision_count():
var collision = get_slide_collision(i)
if collision.get_collider() is RigidBody3D:
if collision.get_collider() is RigidBody3D:
collision.get_collider().apply_central_impulse(
-collision.get_normal() * PUSH_FORCE
)
if not kick_old_body_ach_sended and collision.get_collider() is DeadOrchid:
kick_old_body_ach_sended = true
SteamConnection.unlock_achievement(SteamConnection.ACH_KICK_YOUR_OLD_BODY)
func update_mouse_hovered_actions() -> void:

View File

@@ -6,7 +6,6 @@ var region : Region :
get(): return terrain if terrain is Region else null
func set_terrain(v : Terrain):
print(v)
terrain = v
func save() -> EntityData:

View File

@@ -46,16 +46,40 @@ metadata/_custom_type_script = "uid://dj2pv1hiwjfv0"
shader = ExtResource("1_x54se")
shader_parameter/fov = 90.0
shader_parameter/cull_back = true
shader_parameter/y_rot = -7e-45
shader_parameter/x_rot = 1.237e-42
shader_parameter/y_rot = -6e-45
shader_parameter/x_rot = 6e-45
shader_parameter/inset = 0.0
[sub_resource type="Animation" id="Animation_1et8x"]
length = 0.3
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("SubViewportContainer/SubViewport/CardContainer/Card:modulate")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Color(1, 1, 1, 1)]
}
[sub_resource type="Animation" id="Animation_7xkgc"]
resource_name = "appear"
length = 0.2
length = 0.1
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("SubViewportContainer/SubViewport/CardContainer/Card:modulate")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0.033333335, 0.06666667),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Color(1, 1, 1, 0), Color(1, 1, 1, 1)]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_r0jrf"]
_data = {
@@ -64,6 +88,7 @@ _data = {
}
[node name="CardVisualiser" type="MarginContainer" unique_id=1151339649]
modulate = Color(0.8839839, 0.4713691, 0.50117576, 1)
anchors_preset = 8
anchor_left = 0.5
anchor_top = 0.5
@@ -72,7 +97,7 @@ anchor_bottom = 0.5
offset_left = -125.0
offset_top = -30.0
offset_right = 225.0
offset_bottom = 121.0
offset_bottom = 132.0
grow_horizontal = 2
grow_vertical = 2
scale = Vector2(1.0000002, 1.0000002)
@@ -97,19 +122,19 @@ mouse_filter = 2
unique_name_in_owner = true
transparent_bg = true
handle_input_locally = false
size = Vector2i(400, 201)
size = Vector2i(400, 212)
size_2d_override_stretch = true
render_target_update_mode = 4
[node name="CardContainer" type="MarginContainer" parent="SubViewportContainer/SubViewport" unique_id=1240228608]
unique_name_in_owner = true
offset_right = 400.0
offset_bottom = 201.0
offset_bottom = 212.0
mouse_filter = 2
theme_override_constants/margin_left = 25
theme_override_constants/margin_top = 25
theme_override_constants/margin_right = 25
theme_override_constants/margin_bottom = 25
theme_override_constants/margin_bottom = 36
[node name="Card" parent="SubViewportContainer/SubViewport/CardContainer" unique_id=1169470018 instance=ExtResource("1_we78f")]
unique_name_in_owner = true

View File

@@ -84,5 +84,6 @@ func update():
%Card.info = card_info
%Card.down_arrow = down_arrow
%Card.update()
%AnimationPlayer.play("appear")
updated_on_last_frame = true

View File

@@ -148,7 +148,6 @@ func spawn_score_particle(
func set_objective_text(v : String = objective_text):
print(v)
var old_v = objective_text
objective_text = v
if is_node_ready() and old_v != objective_text:

View File

@@ -159,6 +159,7 @@ func finish_tutorial():
region.data.update()
succeded.emit()
success = true
SteamConnection.unlock_achievement(SteamConnection.ACH_FINISH_TUTORIAL)
class Step:

View File

@@ -256,7 +256,7 @@ environment/defaults/default_clear_color=Color(0.0617213, 0.0605653, 0.169189, 1
[steam]
initialization/app_id=0
initialization/initialize_on_startup=false
initialization/embed_callbacks=false
initialization/app_id=4690960
initialization/initialize_on_startup=true
initialization/embed_callbacks=true
multiplayer_peer/max_channels=4

View File

@@ -15,14 +15,14 @@ const LIFT_TIME := 2
var chosen_incubator_id := -1
# Cheat Code
func _input(_e):
if (
Input.is_action_pressed("drop")
and Input.is_action_pressed("move_right")
and Input.is_action_pressed("move_left")
and Input.is_action_just_pressed("action")
):
finish_scene()
# func _input(_e):
# if (
# Input.is_action_pressed("drop")
# and Input.is_action_pressed("move_right")
# and Input.is_action_pressed("move_left")
# and Input.is_action_just_pressed("action")
# ):
# finish_scene()
# Called when the node enters the scene tree for the first time.
func _ready():

View File

@@ -9,6 +9,5 @@ func _ready():
func _on_ai_receptacle_clicked():
%Player3D.controlling_player = false
Input.mouse_mode = Input.MOUSE_MODE_VISIBLE
%Credits.appear()
SteamConnection.unlock_achievement(SteamConnection.ACH_MEET_DEMETER)
%Credits.appear()

View File

@@ -15,7 +15,7 @@
[ext_resource type="PackedScene" uid="uid://ci4x1q326lvyy" path="res://stages/3d_scenes/cockpit_scene/cockpit_elements/mutation_discovered_screen/mutation_discovery_screen.tscn" id="15_q4ojn"]
[ext_resource type="PackedScene" uid="uid://cn2hob1i72a25" path="res://stages/3d_scenes/cockpit_scene/fail_tutorial.tscn" id="15_wrlf0"]
[ext_resource type="PackedScene" uid="uid://u3o5g8lmck74" path="res://entities/interactable_3d/orchid_saver/orchid_saver.tscn" id="16_nfjul"]
[ext_resource type="Texture2D" uid="uid://d3k7rl7nbp7yx" path="res://common/icons/device-floppy.svg" id="17_ggekp"]
[ext_resource type="Texture2D" uid="uid://dwq22io1cc27y" path="res://common/icons/restore.svg" id="17_ggekp"]
[ext_resource type="PackedScene" uid="uid://blvetnnib2ks0" path="res://stages/3d_scenes/cockpit_scene/assets/3d/cockpit2.blend" id="17_omtjc"]
[sub_resource type="Animation" id="Animation_pxmsf"]
@@ -230,7 +230,7 @@ autoplay = &"trailer"
unique_name_in_owner = true
transform = Transform3D(-4.371139e-08, 0, -1, 0, 1, 0, 1, 0, -4.371139e-08, 0.024999544, -1.3700237, -3.9526832)
screen_icon = ExtResource("17_ggekp")
screen_text = "SAVE_ORCHID_MEMORY_AND_RESPAWN"
screen_text = "RESPAWN_TO_LAST_BASE"
[connection signal="clicked" from="Phone" to="." method="_on_phone_clicked"]
[connection signal="clicked" from="OrchidSaver" to="." method="_on_orchid_saver_clicked"]

View File

@@ -5,15 +5,15 @@ const DIALOG_PATH = "res://dialogs/timelines/1_waking_up/3_demeter_ship_presenta
var jingle_played := false
# Cheat Code
func _input(_e):
if (
Input.is_action_pressed("drop")
and Input.is_action_pressed("move_right")
and Input.is_action_pressed("move_left")
and Input.is_action_just_pressed("action")
):
GameInfo.game_data.dialogs_done.append(DIALOG_PATH)
finish_scene()
# func _input(_e):
# if (
# Input.is_action_pressed("drop")
# and Input.is_action_pressed("move_right")
# and Input.is_action_pressed("move_left")
# and Input.is_action_just_pressed("action")
# ):
# GameInfo.game_data.dialogs_done.append(DIALOG_PATH)
# finish_scene()
# Called when the node enters the scene tree for the first time.
func _ready():

View File

@@ -204,6 +204,10 @@ func _on_fetch_interactable_clicked():
used.emit()
get_tree().create_timer(1.).timeout.connect(
func (): %ArtefactAnnounce.announce_artefact = get_choosen_artefact()
);
get_tree().create_timer(3.).timeout.connect(
func ():
state = State.OFF

View File

@@ -12,6 +12,7 @@
[ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://common/icons/bolt.svg" id="9_p1py0"]
[ext_resource type="Script" uid="uid://cpdtt25r2ne23" path="res://stages/3d_scenes/vending_machine_room/scripts/vending_machine_select_interactable.gd" id="10_js246"]
[ext_resource type="AudioStream" uid="uid://bynxc84w03so4" path="res://stages/3d_scenes/vending_machine_room/assets/sounds/alex_jauk-vending-machines-ambient-noise-236027.mp3" id="12_js246"]
[ext_resource type="PackedScene" uid="uid://bhbc1monbgumh" path="res://entities/interactable_3d/cristal/artefact_announce.tscn" id="13_tvcj6"]
[sub_resource type="Resource" id="Resource_vrdoi"]
script = ExtResource("4_tvcj6")
@@ -325,6 +326,11 @@ volume_db = -25.143
autoplay = true
bus = &"Sfx"
[node name="ArtefactAnnounce" parent="." unique_id=1447182082 instance=ExtResource("13_tvcj6")]
unique_name_in_owner = true
visible = false
announce_artefact = null
[connection signal="clicked" from="Select1Interactable" to="." method="_on_select_1_interactable_clicked"]
[connection signal="clicked" from="Select2Interactable" to="." method="_on_select_2_interactable_clicked"]
[connection signal="clicked" from="PayInteractable" to="." method="_on_pay_interactable_clicked"]

View File

@@ -11,15 +11,15 @@ var pass_asked := false
var tutorial_started := false
# Cheat Code
func _input(_e):
if (
Input.is_action_pressed("drop")
and Input.is_action_pressed("move_right")
and Input.is_action_pressed("move_left")
and Input.is_action_just_pressed("action")
):
pass_intro()
%SparkParticles.emitting = false
# func _input(_e):
# if (
# Input.is_action_pressed("drop")
# and Input.is_action_pressed("move_right")
# and Input.is_action_pressed("move_left")
# and Input.is_action_just_pressed("action")
# ):
# pass_intro()
# %SparkParticles.emitting = false
func _process(delta):
%TopologyMap.texture.noise.offset += Vector3(delta * SPEED, delta * SPEED, 0.)

View File

@@ -46,25 +46,26 @@ var data_last_updated = 0.
@onready var camera : RegionCamera = %Camera
# Cheat Code
func _input(_e):
if (
Input.is_action_pressed("drop")
and Input.is_action_pressed("move_right")
and Input.is_action_pressed("move_left")
and Input.is_action_just_pressed("action")
):
data.succeded.emit()
data.state = RegionData.State.SUCCEEDED
# data.update()
# func _input(_e):
# if (
# Input.is_action_pressed("drop")
# and Input.is_action_pressed("move_right")
# and Input.is_action_pressed("move_left")
# and Input.is_action_just_pressed("action")
# ):
# if data.state != RegionData.State.SUCCEEDED:
# data.succeded.emit()
# data.state = RegionData.State.SUCCEEDED
# # data.update()
if (
Input.is_action_pressed("drop")
and Input.is_action_pressed("move_right")
and Input.is_action_pressed("move_left")
and Input.is_action_just_pressed("move_pointer")
):
data.charges = 0
data.state = RegionData.State.FAILED
# if (
# Input.is_action_pressed("drop")
# and Input.is_action_pressed("move_right")
# and Input.is_action_pressed("move_left")
# and Input.is_action_just_pressed("move_pointer")
# ):
# data.charges = 0
# data.state = RegionData.State.FAILED
func _init():
data = GameInfo.game_data.current_region_data

View File

@@ -10,6 +10,8 @@ var rotating := false
var prev_mouse_pos : Vector2
var next_mouse_pos : Vector2
var planet_spin_ach_sended = false
func _ready():
%Version.text = ProjectSettings.get_setting("application/config/version")
%Start.text = tr("CONTINUE") if GameInfo.game_data else tr("START")
@@ -60,6 +62,10 @@ func _process(delta):
%Planet3d.rotate(Vector3.UP, planet_rotation.x * delta)
%Planet3d.rotate(Vector3.RIGHT, planet_rotation.y * delta)
if not planet_spin_ach_sended and planet_rotation.length() > 40:
planet_spin_ach_sended = true
SteamConnection.unlock_achievement(SteamConnection.ACH_SPIN_PLANET)
func _on_restart_button_down():
GameInfo.start_game_data()

View File

@@ -83,7 +83,7 @@ tracks/3/keys = {
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("%Restart:modulate:a")
tracks/4/path = NodePath("../MarginContainer/GridContainer/VBoxContainer/VBoxContainer/Restart:modulate:a")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
@@ -182,11 +182,11 @@ tracks/3/keys = {
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("%Restart:modulate:a")
tracks/4/path = NodePath("../MarginContainer/GridContainer/VBoxContainer/VBoxContainer/Restart:modulate:a")
tracks/4/interp = 2
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0.39999998, 0.6),
"times": PackedFloat32Array(0.8, 1),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [0.0, 1.0]
@@ -198,7 +198,7 @@ tracks/5/path = NodePath("../MarginContainer/GridContainer/VBoxContainer/VBoxCon
tracks/5/interp = 2
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0.6, 0.8),
"times": PackedFloat32Array(0.4, 0.6),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [0.0, 1.0]
@@ -210,7 +210,7 @@ tracks/6/path = NodePath("../MarginContainer/GridContainer/VBoxContainer/VBoxCon
tracks/6/interp = 2
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0.8, 1),
"times": PackedFloat32Array(0.6, 0.79999995),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [0.0, 1.0]
@@ -299,17 +299,6 @@ theme_override_font_sizes/font_size = 33
text = "START"
icon = ExtResource("3_6yuhi")
[node name="Restart" type="Button" parent="MarginContainer/GridContainer/VBoxContainer/VBoxContainer" unique_id=1324703681]
unique_name_in_owner = true
z_index = 1
layout_mode = 2
size_flags_horizontal = 4
size_flags_vertical = 4
theme = ExtResource("1_4ph5l")
text = "RESTART"
icon = ExtResource("5_6yuhi")
flat = true
[node name="Settings" type="Button" parent="MarginContainer/GridContainer/VBoxContainer/VBoxContainer" unique_id=381312431]
layout_mode = 2
size_flags_horizontal = 4
@@ -324,6 +313,17 @@ text = "CONTROLS"
icon = ExtResource("7_igvpv")
flat = true
[node name="Restart" type="Button" parent="MarginContainer/GridContainer/VBoxContainer/VBoxContainer" unique_id=1324703681]
unique_name_in_owner = true
z_index = 1
layout_mode = 2
size_flags_horizontal = 4
size_flags_vertical = 4
theme = ExtResource("1_4ph5l")
text = "RESTART_DEMO"
icon = ExtResource("5_6yuhi")
flat = true
[node name="Quit" type="Button" parent="MarginContainer/GridContainer/VBoxContainer/VBoxContainer" unique_id=103430335]
layout_mode = 2
size_flags_horizontal = 4
@@ -444,9 +444,9 @@ z_index = 100
mouse_filter = 2
[connection signal="pressed" from="MarginContainer/GridContainer/VBoxContainer/VBoxContainer/Start" to="." method="_on_start_pressed"]
[connection signal="button_down" from="MarginContainer/GridContainer/VBoxContainer/VBoxContainer/Restart" to="." method="_on_restart_button_down"]
[connection signal="button_down" from="MarginContainer/GridContainer/VBoxContainer/VBoxContainer/Settings" to="." method="_on_settings_button_down"]
[connection signal="button_down" from="MarginContainer/GridContainer/VBoxContainer/VBoxContainer/Controls" to="." method="_on_controls_button_down"]
[connection signal="button_down" from="MarginContainer/GridContainer/VBoxContainer/VBoxContainer/Restart" to="." method="_on_restart_button_down"]
[connection signal="button_down" from="MarginContainer/GridContainer/VBoxContainer/VBoxContainer/Quit" to="." method="_on_quit_button_down"]
[connection signal="button_down" from="ModeChoose/VBoxContainer/StoryModeStart" to="." method="_on_story_mode_start_button_down"]
[connection signal="button_down" from="ModeChoose/VBoxContainer/InfiniteModeStart" to="." method="_on_infinite_mode_start_button_down"]

View File

@@ -18,6 +18,7 @@ PAUSE,Pause,Pause
CONTROLS,Controls,Contrôles
RESUME_GAME,Resume,Reprendre
RESTART,Restart,Recommencer
RESTART_DEMO,Restart demo,Recommencer la démo
QUIT,Quit,Quitter
THIS_GAME_USE_AUTOSAVE,This game use autosave,Ce jeu sauvegarde votre progression automatiquement
CHOOSE_GAME_MODE,Choose game mode,Choisissez le mode de jeu
@@ -163,7 +164,7 @@ RECHARGE_STATION,Recharge station,Station de recharge
RECHARGE,Recharge,Recharger
RECHARGE_STATION_DESC_TEXT,"[b]You can recharge yourself here.[/b] When recharging, time pass and plants grow.","[b]Tu peux te recharger ici.[/b] Pendant la recharge, le temps passe et les plantes grandissent."
TALION_CRISTAL,Talion Crystal,Cristal de Talion
TALION_CRISTAL_DESC_TEXT,"A pure form of Talion, cannot be broken or used","Une forme pure de Talion, ne peut être cassé ou utilisé"
TALION_CRISTAL_DESC_TEXT,"A pure form of Talion, cannot be broken or used","Une forme pure de Talion, ne peut pas être cassé ou utilisé"
TALION_CELL,Talion Cell,Cellule de Talion
TALION_CELL_DESC_TEXT,"This cell is filled with liquid form of Talion, let's see what's inside!","Cette cellule est remplie d'une forme liquide de Talio, voyons ce qu'il y a à l'intérieur !"
ENERGY_CELL,Energy Cell,Cellule d'énergie
@@ -242,7 +243,7 @@ USE_THE_BACKUP_DEVICE_TO_RESPAWN_TO_LAST_BASE,Use the backup device to respawn t
STEP_ON_THE_DATA_SAVER_TEXT,[b]Step on the backup device to use it[/b] You can use it at any time.,[b]Déplacez-vous sur l'appareil de sauvegarde pour l'utiliser[/b] Vous pouvez l'utiliser à tout moment
RESTART_FROM_LAST_BASE_WITHOUT_SEEDS_TEXT,[b]Restart from last base without any seeds[/b] You will also lose all artefacts found.,[b]Recommencer à partir de la dernière base sans aucune graine[/b] Vous perdrez également tous les artefacts trouvés.
COLLECT_YOUR_SEEDS_AND_TAKE_OFF,Collect your seeds and take off with the ship,Collectez vos graines et décollez avec le vaisseau
SAVE_ORCHID_MEMORY_AND_RESPAWN,Save Orchid Memory and respawn,Sauvegarder la mémoire d'Orchid et recommencer
RESPAWN_TO_LAST_BASE,Respawn to last base,Recommencer à la dernière base
CONFIRM_RESPAWN,"Confirm respawn ? (You'll lose seed and current travel progression)","Confirmer la réapparition ? (Vous perdrez vos graines et la progression du voyage en cours)"
DOWNLOAD_ORCHID_DATA_TO_LOCAL_SERVERS,Download Orchid data to local servers,Télécharger les données d'Orchid sur les serveurs locaux
TUTORIAL_FINISHED,Tutorial finished,Tutoriel terminé
@@ -330,7 +331,9 @@ RECHARGE_NUMBER,Recharge Number,Nombre de recharge
ORCHID_ENERGY,Orchid's energy,Énergie d'Orchid
NEW_TOOL,New tool,Nouvel Outil
NEW_MUTATION,New Mutation,Nouvelle Mutation
THIS_MUTATION_CAN_NOW_APPEAR_ON_SEEDS,"This mutation can now appear on seeds","Cette mutation pourra désormais apparaître sur les graines"
NEW_ARTEFACT,New Artefact,Nouvel Artefact
ADD_A_PASSIVE_EFFECT_FOR_THIS_TRAVEL,"Add a passive effect for this travel, retrieve all your artifacts on the ship","Ajoute un effet passif pour ce voyage, retrouvez tous vos artefacts sur le vaisseau"
PILE,Pile,Pile,
PILE_DESC_TEXT,Give an extra energy cell,Donne une cellule d'énergie supplémentaire
SEED_CASE,Seed Case,Emplacement de graine
1 keys en fr
18 CONTROLS Controls Contrôles
19 RESUME_GAME Resume Reprendre
20 RESTART Restart Recommencer
21 RESTART_DEMO Restart demo Recommencer la démo
22 QUIT Quit Quitter
23 THIS_GAME_USE_AUTOSAVE This game use autosave Ce jeu sauvegarde votre progression automatiquement
24 CHOOSE_GAME_MODE Choose game mode Choisissez le mode de jeu
164 RECHARGE Recharge Recharger
165 RECHARGE_STATION_DESC_TEXT [b]You can recharge yourself here.[/b] When recharging, time pass and plants grow. [b]Tu peux te recharger ici.[/b] Pendant la recharge, le temps passe et les plantes grandissent.
166 TALION_CRISTAL Talion Crystal Cristal de Talion
167 TALION_CRISTAL_DESC_TEXT A pure form of Talion, cannot be broken or used Une forme pure de Talion, ne peut être cassé ou utilisé Une forme pure de Talion, ne peut pas être cassé ou utilisé
168 TALION_CELL Talion Cell Cellule de Talion
169 TALION_CELL_DESC_TEXT This cell is filled with liquid form of Talion, let's see what's inside! Cette cellule est remplie d'une forme liquide de Talio, voyons ce qu'il y a à l'intérieur !
170 ENERGY_CELL Energy Cell Cellule d'énergie
243 STEP_ON_THE_DATA_SAVER_TEXT [b]Step on the backup device to use it[/b] You can use it at any time. [b]Déplacez-vous sur l'appareil de sauvegarde pour l'utiliser[/b] Vous pouvez l'utiliser à tout moment
244 RESTART_FROM_LAST_BASE_WITHOUT_SEEDS_TEXT [b]Restart from last base without any seeds[/b] You will also lose all artefacts found. [b]Recommencer à partir de la dernière base sans aucune graine[/b] Vous perdrez également tous les artefacts trouvés.
245 COLLECT_YOUR_SEEDS_AND_TAKE_OFF Collect your seeds and take off with the ship Collectez vos graines et décollez avec le vaisseau
246 SAVE_ORCHID_MEMORY_AND_RESPAWN RESPAWN_TO_LAST_BASE Save Orchid Memory and respawn Respawn to last base Sauvegarder la mémoire d'Orchid et recommencer Recommencer à la dernière base
247 CONFIRM_RESPAWN Confirm respawn ? (You'll lose seed and current travel progression) Confirmer la réapparition ? (Vous perdrez vos graines et la progression du voyage en cours)
248 DOWNLOAD_ORCHID_DATA_TO_LOCAL_SERVERS Download Orchid data to local servers Télécharger les données d'Orchid sur les serveurs locaux
249 TUTORIAL_FINISHED Tutorial finished Tutoriel terminé
331 ORCHID_ENERGY Orchid's energy Énergie d'Orchid
332 NEW_TOOL New tool Nouvel Outil
333 NEW_MUTATION New Mutation Nouvelle Mutation
334 THIS_MUTATION_CAN_NOW_APPEAR_ON_SEEDS This mutation can now appear on seeds Cette mutation pourra désormais apparaître sur les graines
335 NEW_ARTEFACT New Artefact Nouvel Artefact
336 ADD_A_PASSIVE_EFFECT_FOR_THIS_TRAVEL Add a passive effect for this travel, retrieve all your artifacts on the ship Ajoute un effet passif pour ce voyage, retrouvez tous vos artefacts sur le vaisseau
337 PILE Pile Pile
338 PILE_DESC_TEXT Give an extra energy cell Donne une cellule d'énergie supplémentaire
339 SEED_CASE Seed Case Emplacement de graine