Compare commits

...

8 Commits

Author SHA1 Message Date
e20ad3db95 des trucs 2024-09-04 20:04:20 +02:00
fc4be1f695 Add water again 2024-09-02 00:44:09 +02:00
e13faa02d2 Hide controls on win screen 2024-09-02 00:14:14 +02:00
55afdb608e Last modifs (maybe (we dunno)) 2024-09-02 00:04:56 +02:00
c4961da0dc Animals 2024-09-01 23:30:00 +02:00
e1797e1062 Merge pull request 'feat/bigtrees' (#9) from feat/bigtrees into master
Reviewed-on: #9
2024-09-01 21:15:53 +00:00
1d84610d46 rebase 2024-09-01 23:14:52 +02:00
8691b94b88 rebase 2024-09-01 23:12:29 +02:00
55 changed files with 905 additions and 241 deletions

View File

@@ -6,6 +6,7 @@
[ext_resource type="PackedScene" uid="uid://qpdlnll5pihe" path="res://objects/Planter.tscn" id="3_qx0o7"] [ext_resource type="PackedScene" uid="uid://qpdlnll5pihe" path="res://objects/Planter.tscn" id="3_qx0o7"]
[node name="Game" type="Node2D"] [node name="Game" type="Node2D"]
y_sort_enabled = true
[node name="Map" parent="." instance=ExtResource("1_nnb57")] [node name="Map" parent="." instance=ExtResource("1_nnb57")]

View File

@@ -2,14 +2,14 @@
[ext_resource type="Script" path="res://scripts/gui/menu.gd" id="1_88exu"] [ext_resource type="Script" path="res://scripts/gui/menu.gd" id="1_88exu"]
[ext_resource type="Texture2D" uid="uid://bkwi6yurko7gm" path="res://assets/texture/sol_gamejam_fleurs.png" id="1_t32ec"] [ext_resource type="Texture2D" uid="uid://bkwi6yurko7gm" path="res://assets/texture/sol_gamejam_fleurs.png" id="1_t32ec"]
[ext_resource type="Texture2D" uid="uid://24ift4wt1h2h" path="res://assets/plants/evolution2.1.png" id="2_b6wtb"]
[ext_resource type="Texture2D" uid="uid://cxbv1inffa2bq" path="res://assets/plants/abre1.png" id="3_xkq6i"]
[ext_resource type="Texture2D" uid="uid://34v3ub405uwp" path="res://assets/plants/evolution2.3.png" id="4_4gpyw"] [ext_resource type="Texture2D" uid="uid://34v3ub405uwp" path="res://assets/plants/evolution2.3.png" id="4_4gpyw"]
[ext_resource type="Texture2D" uid="uid://rc3mom584tm8" path="res://assets/plants/arbre5.png" id="4_nalxd"]
[ext_resource type="Texture2D" uid="uid://damy6xcp3jd0s" path="res://assets/plants/herbe1.png" id="5_ismvq"] [ext_resource type="Texture2D" uid="uid://damy6xcp3jd0s" path="res://assets/plants/herbe1.png" id="5_ismvq"]
[ext_resource type="Texture2D" uid="uid://be2g1u7d8lwc8" path="res://assets/plants/herbe4.png" id="6_4qsad"] [ext_resource type="Texture2D" uid="uid://be2g1u7d8lwc8" path="res://assets/plants/herbe4.png" id="6_4qsad"]
[ext_resource type="Texture2D" uid="uid://b8rmpitmxeobx" path="res://assets/plants/herbe8.png" id="7_xxlvc"] [ext_resource type="Texture2D" uid="uid://b8rmpitmxeobx" path="res://assets/plants/herbe8.png" id="7_xxlvc"]
[ext_resource type="Theme" uid="uid://dnebunkx13tbr" path="res://assets/gui/Text.tres" id="8_h7a3q"] [ext_resource type="Theme" uid="uid://dnebunkx13tbr" path="res://assets/gui/Text.tres" id="8_h7a3q"]
[ext_resource type="SpriteFrames" uid="uid://8ewbadpftqoh" path="res://assets/sprites/robot/walk/Robot.tres" id="9_ri4qo"] [ext_resource type="SpriteFrames" uid="uid://8ewbadpftqoh" path="res://assets/sprites/robot/walk/Robot.tres" id="9_ri4qo"]
[ext_resource type="Texture2D" uid="uid://cccgom1hslks" path="res://assets/Seed_title.png" id="10_67mnr"]
[sub_resource type="Gradient" id="Gradient_ytbij"] [sub_resource type="Gradient" id="Gradient_ytbij"]
offsets = PackedFloat32Array(0, 0.446746, 1) offsets = PackedFloat32Array(0, 0.446746, 1)
@@ -157,12 +157,7 @@ grow_horizontal = 2
grow_vertical = 2 grow_vertical = 2
texture = ExtResource("1_t32ec") texture = ExtResource("1_t32ec")
expand_mode = 2 expand_mode = 2
stretch_mode = 4 stretch_mode = 6
[node name="Evolution2_1" type="Sprite2D" parent="."]
position = Vector2(859, 359)
scale = Vector2(0.256, 0.256)
texture = ExtResource("2_b6wtb")
[node name="Fée2" type="Sprite2D" parent="."] [node name="Fée2" type="Sprite2D" parent="."]
position = Vector2(764, 229) position = Vector2(764, 229)
@@ -170,9 +165,9 @@ scale = Vector2(0.456177, 0.456177)
texture = SubResource("GradientTexture2D_h0k83") texture = SubResource("GradientTexture2D_h0k83")
[node name="Abre1" type="Sprite2D" parent="."] [node name="Abre1" type="Sprite2D" parent="."]
position = Vector2(766, 286) position = Vector2(906, 271)
scale = Vector2(0.385833, 0.385833) scale = Vector2(0.38, 0.38)
texture = ExtResource("3_xkq6i") texture = ExtResource("4_nalxd")
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."] [node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
position = Vector2(616, 312) position = Vector2(616, 312)
@@ -182,22 +177,22 @@ animation = &"Walk"
autoplay = "Walk" autoplay = "Walk"
[node name="Evolution2_3" type="Sprite2D" parent="."] [node name="Evolution2_3" type="Sprite2D" parent="."]
position = Vector2(570, 485) position = Vector2(561, 479)
scale = Vector2(0.242, 0.242) scale = Vector2(0.242, 0.242)
texture = ExtResource("4_4gpyw") texture = ExtResource("4_4gpyw")
[node name="Herbe1" type="Sprite2D" parent="."] [node name="Herbe1" type="Sprite2D" parent="."]
position = Vector2(876.5, 498.5) position = Vector2(1061, 411)
scale = Vector2(0.275, 0.275) scale = Vector2(0.275, 0.275)
texture = ExtResource("5_ismvq") texture = ExtResource("5_ismvq")
[node name="Herbe4" type="Sprite2D" parent="."] [node name="Herbe4" type="Sprite2D" parent="."]
position = Vector2(593, 364) position = Vector2(521, 331)
scale = Vector2(0.1525, 0.1525) scale = Vector2(0.1525, 0.1525)
texture = ExtResource("6_4qsad") texture = ExtResource("6_4qsad")
[node name="Herbe8" type="Sprite2D" parent="."] [node name="Herbe8" type="Sprite2D" parent="."]
position = Vector2(798, 528) position = Vector2(722, 464)
scale = Vector2(0.2125, 0.2125) scale = Vector2(0.2125, 0.2125)
texture = ExtResource("7_xxlvc") texture = ExtResource("7_xxlvc")
@@ -242,6 +237,11 @@ text = "Seeding the
Wasteland" Wasteland"
label_settings = SubResource("LabelSettings_0qv27") label_settings = SubResource("LabelSettings_0qv27")
[node name="SeedTitle" type="Sprite2D" parent="MarginContainer/VBoxContainer"]
position = Vector2(93, 32)
scale = Vector2(0.0631215, 0.0631215)
texture = ExtResource("10_67mnr")
[node name="ClickToPlay" type="Label" parent="MarginContainer/VBoxContainer"] [node name="ClickToPlay" type="Label" parent="MarginContainer/VBoxContainer"]
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 0 size_flags_horizontal = 0

BIN
assets/Seed_title.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

View File

@@ -2,16 +2,16 @@
importer="texture" importer="texture"
type="CompressedTexture2D" type="CompressedTexture2D"
uid="uid://c84bc7d0f8gtn" uid="uid://cccgom1hslks"
path="res://.godot/imported/sky.png-797942cf14c3d3c2fe0d423f60874e07.ctex" path="res://.godot/imported/Seed_title.png-4efb43a44ba92dc6d589a9df432822f3.ctex"
metadata={ metadata={
"vram_texture": false "vram_texture": false
} }
[deps] [deps]
source_file="res://assets/texture/sky.png" source_file="res://assets/Seed_title.png"
dest_files=["res://.godot/imported/sky.png-797942cf14c3d3c2fe0d423f60874e07.ctex"] dest_files=["res://.godot/imported/Seed_title.png-4efb43a44ba92dc6d589a9df432822f3.ctex"]
[params] [params]

Binary file not shown.

After

Width:  |  Height:  |  Size: 294 KiB

View File

@@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dihwqp24jd2gk"
path="res://.godot/imported/Interface sans boutons.png-60f631009367d0091e0e79656d1b3c79.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/gui/image/Interface sans boutons.png"
dest_files=["res://.godot/imported/Interface sans boutons.png-60f631009367d0091e0e79656d1b3c79.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 285 KiB

View File

@@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dmlm0jugr70sg"
path="res://.godot/imported/Tablette info.png-ed0c49161767c772fb7b2362dc3127e8.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/gui/image/Tablette info.png"
dest_files=["res://.godot/imported/Tablette info.png-ed0c49161767c772fb7b2362dc3127e8.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://baqi0tv2xfs31"
path="res://.godot/imported/controls.png-089f3100eb2b00a6e73db7ff84e655aa.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/gui/image/controls.png"
dest_files=["res://.godot/imported/controls.png-089f3100eb2b00a6e73db7ff84e655aa.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

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

View File

@@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c20w02hmmlrnu"
path="res://.godot/imported/frames_arbre_sprites.png-19591f1a2e9e68a1506e2904e0f6736e.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://assets/plants/frames_arbre_sprites.png"
dest_files=["res://.godot/imported/frames_arbre_sprites.png-19591f1a2e9e68a1506e2904e0f6736e.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

Binary file not shown.

View File

@@ -0,0 +1,19 @@
[remap]
importer="mp3"
type="AudioStreamMP3"
uid="uid://7njhgvmycx40"
path="res://.godot/imported/Déplacement 2.mp3-7d56ed3be33dc526249f1cb498ed58c2.mp3str"
[deps]
source_file="res://assets/sounds/Actions/Déplacement 2.mp3"
dest_files=["res://.godot/imported/Déplacement 2.mp3-7d56ed3be33dc526249f1cb498ed58c2.mp3str"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View File

@@ -0,0 +1,19 @@
[remap]
importer="mp3"
type="AudioStreamMP3"
uid="uid://b7ad35ieccl77"
path="res://.godot/imported/Déplacement 3.mp3-3ac2ea56166a00dfe43b9beeac6aac3a.mp3str"
[deps]
source_file="res://assets/sounds/Actions/Déplacement 3.mp3"
dest_files=["res://.godot/imported/Déplacement 3.mp3-3ac2ea56166a00dfe43b9beeac6aac3a.mp3str"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View File

@@ -0,0 +1,19 @@
[remap]
importer="mp3"
type="AudioStreamMP3"
uid="uid://dad5u8723jcx2"
path="res://.godot/imported/Déplacement 4.mp3-cfdc645193821ed4a1b8d4ee644ecbaa.mp3str"
[deps]
source_file="res://assets/sounds/Actions/Déplacement 4.mp3"
dest_files=["res://.godot/imported/Déplacement 4.mp3-cfdc645193821ed4a1b8d4ee644ecbaa.mp3str"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

View File

@@ -0,0 +1,19 @@
[remap]
importer="mp3"
type="AudioStreamMP3"
uid="uid://ca4t82yt5vbsm"
path="res://.godot/imported/Déplacement 5.mp3-ecf1ba0dd059abf8f9b073cc1b00f261.mp3str"
[deps]
source_file="res://assets/sounds/Actions/Déplacement 5.mp3"
dest_files=["res://.godot/imported/Déplacement 5.mp3-ecf1ba0dd059abf8f9b073cc1b00f261.mp3str"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

Binary file not shown.

Before

Width:  |  Height:  |  Size: 373 B

View File

@@ -9,7 +9,7 @@ custom_features=""
export_filter="all_resources" export_filter="all_resources"
include_filter="" include_filter=""
exclude_filter="" exclude_filter=""
export_path="export/windows/MiniJam166.exe" export_path="export/windows/Seeding The Wasteland Win.exe"
encryption_include_filters="" encryption_include_filters=""
encryption_exclude_filters="" encryption_exclude_filters=""
encrypt_pck=false encrypt_pck=false
@@ -74,7 +74,7 @@ custom_features=""
export_filter="all_resources" export_filter="all_resources"
include_filter="" include_filter=""
exclude_filter="" exclude_filter=""
export_path="" export_path="export/web/index.html"
encryption_include_filters="" encryption_include_filters=""
encryption_exclude_filters="" encryption_exclude_filters=""
encrypt_pck=false encrypt_pck=false

View File

@@ -1,11 +1,39 @@
[gd_scene load_steps=13 format=3 uid="uid://byv2a5d0n1538"] [gd_scene load_steps=13 format=3 uid="uid://cj457q2fx5mim"]
[ext_resource type="Script" path="res://scripts/animal.gd" id="1_bjim0"] [ext_resource type="Script" path="res://scripts/animal.gd" id="1_bjim0"]
[ext_resource type="Texture2D" uid="uid://cxbv1inffa2bq" path="res://assets/plants/abre1.png" id="2_n8edq"] [ext_resource type="Texture2D" uid="uid://cxbv1inffa2bq" path="res://assets/plants/abre1.png" id="2_n8edq"]
[ext_resource type="Theme" uid="uid://dnebunkx13tbr" path="res://assets/gui/Text.tres" id="3_lefgl"] [ext_resource type="Theme" uid="uid://dnebunkx13tbr" path="res://assets/gui/Text.tres" id="3_lefgl"]
[sub_resource type="CircleShape2D" id="CircleShape2D_5dvar"] [sub_resource type="CircleShape2D" id="CircleShape2D_5dvar"]
radius = 599.083 radius = 557.022
[sub_resource type="Animation" id="Animation_qi2vx"]
resource_name = "Closed"
length = 0.1
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Fées:visible")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Sprite2D:modulate")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Color(0.529067, 0.529067, 0.529067, 1)]
}
[sub_resource type="Animation" id="Animation_6wgo4"] [sub_resource type="Animation" id="Animation_6wgo4"]
resource_name = "Finished" resource_name = "Finished"
@@ -94,6 +122,83 @@ tracks/6/keys = {
"values": [Vector2(0.7, 0.7), Vector2(0.6, 0.9), Vector2(0.7, 0.7)] "values": [Vector2(0.7, 0.7), Vector2(0.6, 0.9), Vector2(0.7, 0.7)]
} }
[sub_resource type="Animation" id="Animation_qxluk"]
resource_name = "Open"
length = 4.0
loop_mode = 1
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Fées/Fée:position")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 1.36667, 3.03333),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector2(-24, -362), Vector2(80, -373), Vector2(11, -442)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Fées/Fée2:position")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 1.36667, 3.03333),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector2(126, -635), Vector2(190, -618), Vector2(145, -586)]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Fées/Fée3:position")
tracks/2/interp = 2
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 1.36667, 3.03333),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector2(291, -461), Vector2(251, -548), Vector2(337, -500)]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Fées/Fée4:position")
tracks/3/interp = 2
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 1.36667, 3.03333),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector2(392.121, -288.879), Vector2(473, -329), Vector2(377, -354)]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Fées:visible")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Sprite2D:modulate")
tracks/5/interp = 2
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Color(1, 1, 1, 1)]
}
[sub_resource type="Animation" id="Animation_had0j"] [sub_resource type="Animation" id="Animation_had0j"]
length = 0.001 length = 0.001
tracks/0/type = "value" tracks/0/type = "value"
@@ -181,111 +286,6 @@ tracks/6/keys = {
"values": [Vector2(0.7, 0.7)] "values": [Vector2(0.7, 0.7)]
} }
[sub_resource type="Animation" id="Animation_qi2vx"]
resource_name = "Closed"
length = 0.1
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Fées:visible")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [false]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Sprite2D:modulate")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Color(0.529067, 0.529067, 0.529067, 1)]
}
[sub_resource type="Animation" id="Animation_qxluk"]
resource_name = "Open"
length = 4.0
loop_mode = 1
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("Fées/Fée:position")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 1.36667, 3.03333),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector2(-24, -362), Vector2(80, -373), Vector2(11, -442)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("Fées/Fée2:position")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 1.36667, 3.03333),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector2(126, -635), Vector2(190, -618), Vector2(145, -586)]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("Fées/Fée3:position")
tracks/2/interp = 2
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 1.36667, 3.03333),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector2(291, -461), Vector2(251, -548), Vector2(337, -500)]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("Fées/Fée4:position")
tracks/3/interp = 2
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 1.36667, 3.03333),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector2(392.121, -288.879), Vector2(473, -329), Vector2(377, -354)]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("Fées:visible")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 1,
"values": [true]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("Sprite2D:modulate")
tracks/5/interp = 2
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Color(1, 1, 1, 1)]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_0kfkq"] [sub_resource type="AnimationLibrary" id="AnimationLibrary_0kfkq"]
_data = { _data = {
"Closed": SubResource("Animation_qi2vx"), "Closed": SubResource("Animation_qi2vx"),
@@ -308,7 +308,9 @@ fill_to = Vector2(0.538462, 0.175214)
font_size = 21 font_size = 21
[node name="Animal" type="Node2D"] [node name="Animal" type="Node2D"]
y_sort_enabled = true
script = ExtResource("1_bjim0") script = ExtResource("1_bjim0")
n_plant_needed = 15
[node name="Sprite2D" type="Sprite2D" parent="."] [node name="Sprite2D" type="Sprite2D" parent="."]
modulate = Color(0.529067, 0.529067, 0.529067, 1) modulate = Color(0.529067, 0.529067, 0.529067, 1)
@@ -350,6 +352,7 @@ scale = Vector2(0.964966, 0.964966)
texture = SubResource("GradientTexture2D_7pg56") texture = SubResource("GradientTexture2D_7pg56")
[node name="PlantsCount" type="Label" parent="."] [node name="PlantsCount" type="Label" parent="."]
z_index = 1
offset_left = -15.0 offset_left = -15.0
offset_top = -148.0 offset_top = -148.0
offset_right = 45.0 offset_right = 45.0

View File

@@ -1,4 +1,4 @@
[gd_scene load_steps=15 format=3 uid="uid://qpdlnll5pihe"] [gd_scene load_steps=18 format=3 uid="uid://qpdlnll5pihe"]
[ext_resource type="Script" path="res://scripts/planter.gd" id="1_l7lry"] [ext_resource type="Script" path="res://scripts/planter.gd" id="1_l7lry"]
[ext_resource type="Script" path="res://scripts/plant_type.gd" id="2_7h3ga"] [ext_resource type="Script" path="res://scripts/plant_type.gd" id="2_7h3ga"]
@@ -14,11 +14,14 @@
[ext_resource type="Resource" uid="uid://d25s1eywvsyei" path="res://objects/plant_types/Oogut.tres" id="11_horsi"] [ext_resource type="Resource" uid="uid://d25s1eywvsyei" path="res://objects/plant_types/Oogut.tres" id="11_horsi"]
[ext_resource type="Resource" uid="uid://c64hhkqk4tnas" path="res://objects/plant_types/Ungrake.tres" id="12_3gp5h"] [ext_resource type="Resource" uid="uid://c64hhkqk4tnas" path="res://objects/plant_types/Ungrake.tres" id="12_3gp5h"]
[ext_resource type="Resource" uid="uid://cev7wbg0cfel3" path="res://objects/plant_types/Wyrran.tres" id="13_bk383"] [ext_resource type="Resource" uid="uid://cev7wbg0cfel3" path="res://objects/plant_types/Wyrran.tres" id="13_bk383"]
[ext_resource type="Resource" uid="uid://cfbdjq14ouwra" path="res://objects/plant_types/Bonaluria.tres" id="14_kmmq3"]
[ext_resource type="Resource" uid="uid://cbvlod5m6s5pk" path="res://objects/plant_types/Lithoniel.tres" id="15_2ou33"]
[ext_resource type="Resource" uid="uid://bje2xwse2ilga" path="res://objects/plant_types/Neviusia.tres" id="16_oikee"]
[node name="Planter" type="Node2D"] [node name="Planter" type="Node2D"]
y_sort_enabled = true y_sort_enabled = true
script = ExtResource("1_l7lry") script = ExtResource("1_l7lry")
plants = Array[ExtResource("2_7h3ga")]([ExtResource("3_p5nyf"), ExtResource("4_3dxep"), ExtResource("5_4of7l"), ExtResource("6_xiom8"), ExtResource("7_7i4v0"), ExtResource("8_i0wa5"), ExtResource("9_y8ss7"), ExtResource("10_sdupl"), ExtResource("11_horsi"), ExtResource("12_3gp5h"), ExtResource("13_bk383")]) plants = Array[ExtResource("2_7h3ga")]([ExtResource("3_p5nyf"), ExtResource("4_3dxep"), ExtResource("5_4of7l"), ExtResource("6_xiom8"), ExtResource("7_7i4v0"), ExtResource("8_i0wa5"), ExtResource("9_y8ss7"), ExtResource("10_sdupl"), ExtResource("11_horsi"), ExtResource("12_3gp5h"), ExtResource("13_bk383"), ExtResource("14_kmmq3"), ExtResource("15_2ou33"), ExtResource("16_oikee")])
[node name="Timer" type="Timer" parent="."] [node name="Timer" type="Timer" parent="."]
wait_time = 0.2 wait_time = 0.2
@@ -28,7 +31,7 @@ one_shot = true
position = Vector2(1439, 1360) position = Vector2(1439, 1360)
[node name="RobotSeed" type="Sprite2D" parent="Robot"] [node name="RobotSeed" type="Sprite2D" parent="Robot"]
position = Vector2(0, 63) position = Vector2(0, 10)
scale = Vector2(0.5, 0.5) scale = Vector2(0.3, 0.3)
[connection signal="Planted" from="Robot" to="." method="_on_robot_planted"] [connection signal="Planted" from="Robot" to="." method="_on_robot_planted"]

View File

@@ -1,8 +1,11 @@
[gd_scene load_steps=6 format=3 uid="uid://bp3c63qgkmi6o"] [gd_scene load_steps=9 format=3 uid="uid://bp3c63qgkmi6o"]
[ext_resource type="Script" path="res://scripts/robot.gd" id="1_4eix8"] [ext_resource type="Script" path="res://scripts/robot.gd" id="1_4eix8"]
[ext_resource type="SpriteFrames" uid="uid://8ewbadpftqoh" path="res://assets/sprites/robot/walk/Robot.tres" id="2_k06te"] [ext_resource type="SpriteFrames" uid="uid://8ewbadpftqoh" path="res://assets/sprites/robot/walk/Robot.tres" id="2_k06te"]
[ext_resource type="PackedScene" uid="uid://dyuqq8v1tckrv" path="res://objects/Wanderer.tscn" id="2_mhqh4"] [ext_resource type="PackedScene" uid="uid://dyuqq8v1tckrv" path="res://objects/Wanderer.tscn" id="2_mhqh4"]
[ext_resource type="AudioStream" uid="uid://7njhgvmycx40" path="res://assets/sounds/Actions/Déplacement 2.mp3" id="6_aqa2n"]
[ext_resource type="AudioStream" uid="uid://b7ad35ieccl77" path="res://assets/sounds/Actions/Déplacement 3.mp3" id="7_u5h4g"]
[ext_resource type="AudioStream" uid="uid://ca4t82yt5vbsm" path="res://assets/sounds/Actions/Déplacement 5.mp3" id="8_lcptp"]
[ext_resource type="AudioStream" uid="uid://cb4ouq4awiyri" path="res://assets/sounds/Actions/Planter.mp3" id="51_f30v0"] [ext_resource type="AudioStream" uid="uid://cb4ouq4awiyri" path="res://assets/sounds/Actions/Planter.mp3" id="51_f30v0"]
[ext_resource type="AudioStream" uid="uid://c1jt77fyb2lx4" path="res://assets/sounds/Actions/Déplacement.mp3" id="52_xvi3g"] [ext_resource type="AudioStream" uid="uid://c1jt77fyb2lx4" path="res://assets/sounds/Actions/Déplacement.mp3" id="52_xvi3g"]
@@ -10,11 +13,13 @@
script = ExtResource("1_4eix8") script = ExtResource("1_4eix8")
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."] [node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
position = Vector2(0, -63)
scale = Vector2(0.0890625, 0.0890625) scale = Vector2(0.0890625, 0.0890625)
sprite_frames = ExtResource("2_k06te") sprite_frames = ExtResource("2_k06te")
animation = &"Walk" animation = &"Walk"
autoplay = "Walk" autoplay = "Walk"
frame_progress = 0.127315 frame_progress = 0.127315
offset = Vector2(0, -33.765)
[node name="Planting" type="Timer" parent="."] [node name="Planting" type="Timer" parent="."]
one_shot = true one_shot = true
@@ -29,4 +34,17 @@ stream = ExtResource("51_f30v0")
stream = ExtResource("52_xvi3g") stream = ExtResource("52_xvi3g")
pitch_scale = 1.5 pitch_scale = 1.5
[node name="MoveSound2" type="AudioStreamPlayer2D" parent="."]
stream = ExtResource("6_aqa2n")
[node name="MoveSound3" type="AudioStreamPlayer2D" parent="."]
stream = ExtResource("7_u5h4g")
[node name="MoveSound4" type="AudioStreamPlayer2D" parent="."]
stream = ExtResource("6_aqa2n")
pitch_scale = 1.5
[node name="MoveSound5" type="AudioStreamPlayer2D" parent="."]
stream = ExtResource("8_lcptp")
[connection signal="timeout" from="Planting" to="." method="_on_planting_timeout"] [connection signal="timeout" from="Planting" to="." method="_on_planting_timeout"]

View File

@@ -1,6 +1,7 @@
[gd_scene load_steps=12 format=3 uid="uid://iaf4md4cbwqh"] [gd_scene load_steps=12 format=3 uid="uid://iaf4md4cbwqh"]
[ext_resource type="Script" path="res://scripts/gui/seed_card.gd" id="1_ecgsq"] [ext_resource type="Script" path="res://scripts/gui/seed_card.gd" id="1_ecgsq"]
[ext_resource type="Texture2D" uid="uid://dmlm0jugr70sg" path="res://assets/gui/image/Tablette info.png" id="2_33be8"]
[ext_resource type="Theme" uid="uid://dnebunkx13tbr" path="res://assets/gui/Text.tres" id="2_n5opx"] [ext_resource type="Theme" uid="uid://dnebunkx13tbr" path="res://assets/gui/Text.tres" id="2_n5opx"]
[ext_resource type="Texture2D" uid="uid://dpfe11wn04ntd" path="res://assets/gui/icons/watering-soil.svg" id="3_4sryb"] [ext_resource type="Texture2D" uid="uid://dpfe11wn04ntd" path="res://assets/gui/icons/watering-soil.svg" id="3_4sryb"]
[ext_resource type="Texture2D" uid="uid://be2uusaqcpcpd" path="res://assets/gradients/Fertility.tres" id="4_5omu3"] [ext_resource type="Texture2D" uid="uid://be2uusaqcpcpd" path="res://assets/gradients/Fertility.tres" id="4_5omu3"]
@@ -10,13 +11,6 @@
[ext_resource type="Texture2D" uid="uid://bdg3ep75da6xd" path="res://assets/gui/icons/tree.svg" id="8_i3l01"] [ext_resource type="Texture2D" uid="uid://bdg3ep75da6xd" path="res://assets/gui/icons/tree.svg" id="8_i3l01"]
[ext_resource type="Texture2D" uid="uid://biti1wmdsg7xr" path="res://assets/gradients/Presence.tres" id="9_w0o2o"] [ext_resource type="Texture2D" uid="uid://biti1wmdsg7xr" path="res://assets/gradients/Presence.tres" id="9_w0o2o"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_8gji7"]
draw_center = false
border_width_left = 1
border_width_top = 1
border_width_right = 1
border_width_bottom = 1
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_kiud1"] [sub_resource type="NoiseTexture2D" id="NoiseTexture2D_kiud1"]
[node name="SeedCard" type="Control"] [node name="SeedCard" type="Control"]
@@ -26,7 +20,7 @@ size_flags_horizontal = 8
size_flags_vertical = 8 size_flags_vertical = 8
script = ExtResource("1_ecgsq") script = ExtResource("1_ecgsq")
[node name="Card" type="PanelContainer" parent="."] [node name="Card" type="Control" parent="."]
layout_mode = 1 layout_mode = 1
anchors_preset = 3 anchors_preset = 3
anchor_left = 1.0 anchor_left = 1.0
@@ -34,19 +28,29 @@ anchor_top = 1.0
anchor_right = 1.0 anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
offset_left = -277.0 offset_left = -277.0
offset_top = -280.0 offset_top = -434.0
grow_horizontal = 0 grow_horizontal = 0
grow_vertical = 0 grow_vertical = 0
[node name="TextureRect" type="Panel" parent="Card"] [node name="TextureRect2" type="TextureRect" parent="Card"]
layout_mode = 2 layout_mode = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_8gji7") offset_left = -57.0
offset_top = -54.0
offset_right = 277.0
offset_bottom = 434.0
texture = ExtResource("2_33be8")
expand_mode = 1
stretch_mode = 6
[node name="MarginContainer" type="MarginContainer" parent="Card"] [node name="MarginContainer" type="MarginContainer" parent="Card"]
layout_mode = 2 layout_mode = 2
theme_override_constants/margin_left = 10 offset_left = -51.0
theme_override_constants/margin_top = 10 offset_top = -31.0
theme_override_constants/margin_right = 10 offset_right = 277.0
offset_bottom = 434.0
theme_override_constants/margin_left = 20
theme_override_constants/margin_top = 30
theme_override_constants/margin_right = 30
theme_override_constants/margin_bottom = 10 theme_override_constants/margin_bottom = 10
[node name="VBoxContainer" type="VBoxContainer" parent="Card/MarginContainer"] [node name="VBoxContainer" type="VBoxContainer" parent="Card/MarginContainer"]

View File

@@ -1,6 +1,7 @@
[gd_scene load_steps=3 format=3 uid="uid://bm8nlb7kmaa6k"] [gd_scene load_steps=4 format=3 uid="uid://bm8nlb7kmaa6k"]
[ext_resource type="Script" path="res://scripts/gui/seed_queue.gd" id="1_6lrhe"] [ext_resource type="Script" path="res://scripts/gui/seed_queue.gd" id="1_6lrhe"]
[ext_resource type="Texture2D" uid="uid://dihwqp24jd2gk" path="res://assets/gui/image/Interface sans boutons.png" id="2_eutr6"]
[sub_resource type="NoiseTexture2D" id="NoiseTexture2D_reedq"] [sub_resource type="NoiseTexture2D" id="NoiseTexture2D_reedq"]
@@ -13,26 +14,43 @@ grow_horizontal = 2
grow_vertical = 2 grow_vertical = 2
script = ExtResource("1_6lrhe") script = ExtResource("1_6lrhe")
[node name="HBoxContainer" type="HBoxContainer" parent="."] [node name="TextureRect" type="TextureRect" parent="."]
layout_mode = 1 layout_mode = 1
anchors_preset = 12 anchors_preset = 2
anchor_top = 1.0 anchor_top = 1.0
anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
grow_horizontal = 2 offset_top = -201.0
offset_right = 426.0
grow_vertical = 0
texture = ExtResource("2_eutr6")
expand_mode = 2
[node name="HBoxContainer" type="Control" parent="."]
layout_mode = 1
anchors_preset = 2
anchor_top = 1.0
anchor_bottom = 1.0
offset_top = -100.0
grow_vertical = 0 grow_vertical = 0
theme_override_constants/separation = 10
[node name="NextSeed" type="TextureRect" parent="HBoxContainer"] [node name="NextSeed" type="TextureRect" parent="HBoxContainer"]
custom_minimum_size = Vector2(100, 100) custom_minimum_size = Vector2(100, 100)
layout_mode = 2 layout_mode = 2
offset_left = 64.0
offset_top = -54.0
offset_right = 164.0
offset_bottom = 46.0
texture = SubResource("NoiseTexture2D_reedq") texture = SubResource("NoiseTexture2D_reedq")
expand_mode = 2 expand_mode = 2
[node name="Queue" type="HBoxContainer" parent="HBoxContainer"] [node name="Queue" type="HBoxContainer" parent="HBoxContainer"]
layout_mode = 2 layout_mode = 2
offset_left = 132.0
offset_top = -42.0
offset_right = 422.0
offset_bottom = 58.0
theme_override_constants/separation = 10 theme_override_constants/separation = 10
alignment = 2 alignment = 1
[node name="Seed5" type="TextureRect" parent="HBoxContainer/Queue"] [node name="Seed5" type="TextureRect" parent="HBoxContainer/Queue"]
custom_minimum_size = Vector2(50, 50) custom_minimum_size = Vector2(50, 50)
@@ -57,19 +75,3 @@ size_flags_horizontal = 4
size_flags_vertical = 8 size_flags_vertical = 8
texture = SubResource("NoiseTexture2D_reedq") texture = SubResource("NoiseTexture2D_reedq")
expand_mode = 2 expand_mode = 2
[node name="Seed2" type="TextureRect" parent="HBoxContainer/Queue"]
custom_minimum_size = Vector2(50, 50)
layout_mode = 2
size_flags_horizontal = 4
size_flags_vertical = 8
texture = SubResource("NoiseTexture2D_reedq")
expand_mode = 2
[node name="Seed1" type="TextureRect" parent="HBoxContainer/Queue"]
custom_minimum_size = Vector2(50, 50)
layout_mode = 2
size_flags_horizontal = 4
size_flags_vertical = 8
texture = SubResource("NoiseTexture2D_reedq")
expand_mode = 2

View File

@@ -75,6 +75,7 @@ one_shot = true
scale = Vector2(0.2, 0.2) scale = Vector2(0.2, 0.2)
sprite_frames = SubResource("SpriteFrames_667un") sprite_frames = SubResource("SpriteFrames_667un")
animation = &"SEED" animation = &"SEED"
speed_scale = 0.0
offset = Vector2(0, -250) offset = Vector2(0, -250)
[node name="Area2D" type="Area2D" parent="."] [node name="Area2D" type="Area2D" parent="."]

View File

@@ -1,15 +1,136 @@
[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://cfbdjq14ouwra"] [gd_resource type="Resource" script_class="PlantType" load_steps=39 format=3 uid="uid://cfbdjq14ouwra"]
[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_208yf"] [ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_208yf"]
[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_wwtfx"] [ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_wwtfx"]
[ext_resource type="Texture2D" uid="uid://di74g50h3oruf" path="res://assets/plants/plantes mortes/arbre_mort.png" id="3_8jirk"] [ext_resource type="Texture2D" uid="uid://di74g50h3oruf" path="res://assets/plants/plantes mortes/arbre_mort.png" id="3_8jirk"]
[ext_resource type="Texture2D" uid="uid://dwm660gppiset" path="res://assets/plants/abre2.png" id="4_ore5j"] [ext_resource type="Texture2D" uid="uid://dwm660gppiset" path="res://assets/plants/abre2.png" id="4_ore5j"]
[ext_resource type="Texture2D" uid="uid://c5felbfti153f" path="res://assets/plants/arbre_phase1.png" id="5_aukq7"] [ext_resource type="Texture2D" uid="uid://c5felbfti153f" path="res://assets/plants/arbre_phase1.png" id="5_aukq7"]
[ext_resource type="Texture2D" uid="uid://c20w02hmmlrnu" path="res://assets/plants/frames_arbre_sprites.png" id="5_udqsl"]
[sub_resource type="AtlasTexture" id="AtlasTexture_wgugp"] [sub_resource type="AtlasTexture" id="AtlasTexture_wgugp"]
atlas = ExtResource("2_wwtfx") atlas = ExtResource("2_wwtfx")
region = Rect2(0, 540, 270, 270) region = Rect2(0, 540, 270, 270)
[sub_resource type="AtlasTexture" id="AtlasTexture_cjm6v"]
atlas = ExtResource("5_udqsl")
region = Rect2(0, 0, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_t5gw7"]
atlas = ExtResource("5_udqsl")
region = Rect2(1000, 0, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_mspmq"]
atlas = ExtResource("5_udqsl")
region = Rect2(2000, 0, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_82el2"]
atlas = ExtResource("5_udqsl")
region = Rect2(3000, 0, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_3ymjj"]
atlas = ExtResource("5_udqsl")
region = Rect2(4000, 0, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_dmppb"]
atlas = ExtResource("5_udqsl")
region = Rect2(5000, 0, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_o46cw"]
atlas = ExtResource("5_udqsl")
region = Rect2(6000, 0, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_i6ohj"]
atlas = ExtResource("5_udqsl")
region = Rect2(7000, 0, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_hv1dq"]
atlas = ExtResource("5_udqsl")
region = Rect2(0, 605, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_gdio8"]
atlas = ExtResource("5_udqsl")
region = Rect2(1000, 605, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_hmlqp"]
atlas = ExtResource("5_udqsl")
region = Rect2(2000, 605, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_obt0y"]
atlas = ExtResource("5_udqsl")
region = Rect2(3000, 605, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_ch6bx"]
atlas = ExtResource("5_udqsl")
region = Rect2(4000, 605, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_ekdvb"]
atlas = ExtResource("5_udqsl")
region = Rect2(5000, 605, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_3rpko"]
atlas = ExtResource("5_udqsl")
region = Rect2(6000, 605, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_4xhw5"]
atlas = ExtResource("5_udqsl")
region = Rect2(7000, 605, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_bxl2x"]
atlas = ExtResource("5_udqsl")
region = Rect2(0, 1210, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_keg52"]
atlas = ExtResource("5_udqsl")
region = Rect2(1000, 1210, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_tuv5m"]
atlas = ExtResource("5_udqsl")
region = Rect2(2000, 1210, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_safva"]
atlas = ExtResource("5_udqsl")
region = Rect2(3000, 1210, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_hs5wt"]
atlas = ExtResource("5_udqsl")
region = Rect2(4000, 1210, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_wpud5"]
atlas = ExtResource("5_udqsl")
region = Rect2(5000, 1210, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_2wqx7"]
atlas = ExtResource("5_udqsl")
region = Rect2(6000, 1210, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_4uv5p"]
atlas = ExtResource("5_udqsl")
region = Rect2(7000, 1210, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_5vpdr"]
atlas = ExtResource("5_udqsl")
region = Rect2(0, 1815, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_v5wkb"]
atlas = ExtResource("5_udqsl")
region = Rect2(1000, 1815, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_y11b3"]
atlas = ExtResource("5_udqsl")
region = Rect2(2000, 1815, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_oipy7"]
atlas = ExtResource("5_udqsl")
region = Rect2(3000, 1815, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_c3gyp"]
atlas = ExtResource("5_udqsl")
region = Rect2(4000, 1815, 1000, 605)
[sub_resource type="AtlasTexture" id="AtlasTexture_ssj6n"]
atlas = ExtResource("5_udqsl")
region = Rect2(5000, 1815, 1000, 605)
[sub_resource type="SpriteFrames" id="SpriteFrames_teefd"] [sub_resource type="SpriteFrames" id="SpriteFrames_teefd"]
animations = [{ animations = [{
"frames": [{ "frames": [{
@@ -23,6 +144,96 @@ animations = [{
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("4_ore5j") "texture": ExtResource("4_ore5j")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_cjm6v")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_t5gw7")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_mspmq")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_82el2")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_3ymjj")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_dmppb")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_o46cw")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_i6ohj")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_hv1dq")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_gdio8")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_hmlqp")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_obt0y")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ch6bx")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ekdvb")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_3rpko")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_4xhw5")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_bxl2x")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_keg52")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_tuv5m")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_safva")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_hs5wt")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_wpud5")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_2wqx7")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_4uv5p")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_5vpdr")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_v5wkb")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_y11b3")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_oipy7")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_c3gyp")
}, {
"duration": 1.0,
"texture": SubResource("AtlasTexture_ssj6n")
}], }],
"loop": true, "loop": true,
"name": &"GROWN", "name": &"GROWN",
@@ -42,8 +253,8 @@ script = ExtResource("1_208yf")
type = "Bonaluria" type = "Bonaluria"
seed_sprite = SubResource("AtlasTexture_wgugp") seed_sprite = SubResource("AtlasTexture_wgugp")
sprite_frames = SubResource("SpriteFrames_teefd") sprite_frames = SubResource("SpriteFrames_teefd")
growing_time = 60.0 growing_time = 30.0
offspring_per_lifetime = 0 offspring_per_lifetime = 1
dying_time = 240.0 dying_time = 240.0
dead_time = 120.0 dead_time = 120.0
water_need = [-1, 10] water_need = [-1, 10]
@@ -55,3 +266,4 @@ presence_prod = 4
dead_water_prod = 3 dead_water_prod = 3
dead_fertility_prod = 2 dead_fertility_prod = 2
distance_prod = 600 distance_prod = 600
distance_prod_falloff = 300

View File

@@ -1,9 +1,10 @@
[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://b4bdxpunvgc2j"] [gd_resource type="Resource" script_class="PlantType" load_steps=9 format=3 uid="uid://b4bdxpunvgc2j"]
[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_duqty"] [ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_duqty"]
[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_lk0j2"] [ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_lk0j2"]
[ext_resource type="Texture2D" uid="uid://ceebnlqxcbmlw" path="res://assets/plants/plantes mortes/plante_morte1.png" id="3_2wyd1"] [ext_resource type="Texture2D" uid="uid://ceebnlqxcbmlw" path="res://assets/plants/plantes mortes/plante_morte1.png" id="3_2wyd1"]
[ext_resource type="Texture2D" uid="uid://d02mdx460lfgm" path="res://assets/plants/evolution2.4.png" id="4_rihq1"] [ext_resource type="Texture2D" uid="uid://d02mdx460lfgm" path="res://assets/plants/evolution2.4.png" id="4_rihq1"]
[ext_resource type="Texture2D" uid="uid://db46hrnjgcunf" path="res://assets/plants/evolution2.4_glow.png" id="5_erp4i"]
[ext_resource type="Texture2D" uid="uid://d0xlqgttxwkgh" path="res://assets/plants/evolution2.png" id="5_i5m6k"] [ext_resource type="Texture2D" uid="uid://d0xlqgttxwkgh" path="res://assets/plants/evolution2.png" id="5_i5m6k"]
[sub_resource type="AtlasTexture" id="AtlasTexture_u2flf"] [sub_resource type="AtlasTexture" id="AtlasTexture_u2flf"]
@@ -23,6 +24,9 @@ animations = [{
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("4_rihq1") "texture": ExtResource("4_rihq1")
}, {
"duration": 1.0,
"texture": ExtResource("5_erp4i")
}], }],
"loop": true, "loop": true,
"name": &"GROWN", "name": &"GROWN",
@@ -46,8 +50,8 @@ growing_time = 2.0
offspring_per_lifetime = 1 offspring_per_lifetime = 1
dying_time = 120.0 dying_time = 120.0
dead_time = 60.0 dead_time = 60.0
water_need = [-5, 8] water_need = [-5, 10]
fertility_need = [-1, 9] fertility_need = [-1, 10]
presence_need = [2, 19] presence_need = [2, 19]
water_prod = 4 water_prod = 4
fertility_prod = 0 fertility_prod = 0
@@ -55,3 +59,4 @@ presence_prod = 2
dead_water_prod = 2 dead_water_prod = 2
dead_fertility_prod = 0 dead_fertility_prod = 0
distance_prod = 300 distance_prod = 300
distance_prod_falloff = 150

View File

@@ -55,3 +55,4 @@ presence_prod = 1
dead_water_prod = 0 dead_water_prod = 0
dead_fertility_prod = 1 dead_fertility_prod = 1
distance_prod = 200 distance_prod = 200
distance_prod_falloff = 100

View File

@@ -1,9 +1,10 @@
[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://di5eh5yvhanlt"] [gd_resource type="Resource" script_class="PlantType" load_steps=9 format=3 uid="uid://di5eh5yvhanlt"]
[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_1xwqx"] [ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_1xwqx"]
[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_5ijhj"] [ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_5ijhj"]
[ext_resource type="Texture2D" uid="uid://cuujr7p18dv3g" path="res://assets/plants/plantes mortes/plante_morte2.png" id="3_3ueid"] [ext_resource type="Texture2D" uid="uid://cuujr7p18dv3g" path="res://assets/plants/plantes mortes/plante_morte2.png" id="3_3ueid"]
[ext_resource type="Texture2D" uid="uid://34v3ub405uwp" path="res://assets/plants/evolution2.3.png" id="4_uv55b"] [ext_resource type="Texture2D" uid="uid://34v3ub405uwp" path="res://assets/plants/evolution2.3.png" id="4_uv55b"]
[ext_resource type="Texture2D" uid="uid://bkq3n2q6m01e3" path="res://assets/plants/evolution2.3glow.png" id="5_olkuo"]
[ext_resource type="Texture2D" uid="uid://d0xlqgttxwkgh" path="res://assets/plants/evolution2.png" id="5_vsmg7"] [ext_resource type="Texture2D" uid="uid://d0xlqgttxwkgh" path="res://assets/plants/evolution2.png" id="5_vsmg7"]
[sub_resource type="AtlasTexture" id="AtlasTexture_6mli1"] [sub_resource type="AtlasTexture" id="AtlasTexture_6mli1"]
@@ -23,6 +24,9 @@ animations = [{
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("4_uv55b") "texture": ExtResource("4_uv55b")
}, {
"duration": 1.0,
"texture": ExtResource("5_olkuo")
}], }],
"loop": true, "loop": true,
"name": &"GROWN", "name": &"GROWN",
@@ -55,3 +59,4 @@ presence_prod = 2
dead_water_prod = 1 dead_water_prod = 1
dead_fertility_prod = 1 dead_fertility_prod = 1
distance_prod = 300 distance_prod = 300
distance_prod_falloff = 150

View File

@@ -1,10 +1,12 @@
[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://cbvlod5m6s5pk"] [gd_resource type="Resource" script_class="PlantType" load_steps=10 format=3 uid="uid://cbvlod5m6s5pk"]
[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_sfd4l"] [ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_sfd4l"]
[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_5nqbe"] [ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_5nqbe"]
[ext_resource type="Texture2D" uid="uid://di74g50h3oruf" path="res://assets/plants/plantes mortes/arbre_mort.png" id="3_k1kks"] [ext_resource type="Texture2D" uid="uid://di74g50h3oruf" path="res://assets/plants/plantes mortes/arbre_mort.png" id="3_k1kks"]
[ext_resource type="Texture2D" uid="uid://bu462tqc23ygm" path="res://assets/plants/arbre3.png" id="4_rhg44"] [ext_resource type="Texture2D" uid="uid://bu462tqc23ygm" path="res://assets/plants/arbre3.png" id="4_rhg44"]
[ext_resource type="Texture2D" uid="uid://crgjmsk6ailnb" path="res://assets/plants/arbre3_bebe.png" id="5_43s5v"] [ext_resource type="Texture2D" uid="uid://crgjmsk6ailnb" path="res://assets/plants/arbre3_bebe.png" id="5_43s5v"]
[ext_resource type="Texture2D" uid="uid://b2da8t4efoaqq" path="res://assets/plants/arbre3_glow.png" id="5_iiu8o"]
[ext_resource type="Texture2D" uid="uid://e3d3wchaado3" path="res://assets/plants/arbre3_bebe_glow.png" id="7_78ppv"]
[sub_resource type="AtlasTexture" id="AtlasTexture_rihnu"] [sub_resource type="AtlasTexture" id="AtlasTexture_rihnu"]
atlas = ExtResource("2_5nqbe") atlas = ExtResource("2_5nqbe")
@@ -23,6 +25,9 @@ animations = [{
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("4_rhg44") "texture": ExtResource("4_rhg44")
}, {
"duration": 1.0,
"texture": ExtResource("5_iiu8o")
}], }],
"loop": true, "loop": true,
"name": &"GROWN", "name": &"GROWN",
@@ -31,6 +36,9 @@ animations = [{
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("5_43s5v") "texture": ExtResource("5_43s5v")
}, {
"duration": 1.0,
"texture": ExtResource("7_78ppv")
}], }],
"loop": true, "loop": true,
"name": &"SAPLING", "name": &"SAPLING",
@@ -43,7 +51,7 @@ type = "Lithoniel"
seed_sprite = SubResource("AtlasTexture_rihnu") seed_sprite = SubResource("AtlasTexture_rihnu")
sprite_frames = SubResource("SpriteFrames_8hq66") sprite_frames = SubResource("SpriteFrames_8hq66")
growing_time = 60.0 growing_time = 60.0
offspring_per_lifetime = 0 offspring_per_lifetime = 1
dying_time = 240.0 dying_time = 240.0
dead_time = 120.0 dead_time = 120.0
water_need = [2, 10] water_need = [2, 10]
@@ -55,3 +63,4 @@ presence_prod = 4
dead_water_prod = 2 dead_water_prod = 2
dead_fertility_prod = 4 dead_fertility_prod = 4
distance_prod = 600 distance_prod = 600
distance_prod_falloff = 300

View File

@@ -1,9 +1,10 @@
[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://bbi00n5snleur"] [gd_resource type="Resource" script_class="PlantType" load_steps=9 format=3 uid="uid://bbi00n5snleur"]
[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_32rwi"] [ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_32rwi"]
[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_liffp"] [ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_liffp"]
[ext_resource type="Texture2D" uid="uid://ceebnlqxcbmlw" path="res://assets/plants/plantes mortes/plante_morte1.png" id="3_4qc5e"] [ext_resource type="Texture2D" uid="uid://ceebnlqxcbmlw" path="res://assets/plants/plantes mortes/plante_morte1.png" id="3_4qc5e"]
[ext_resource type="Texture2D" uid="uid://cmhajduampeuf" path="res://assets/plants/evolution3.1.png" id="4_6je8p"] [ext_resource type="Texture2D" uid="uid://cmhajduampeuf" path="res://assets/plants/evolution3.1.png" id="4_6je8p"]
[ext_resource type="Texture2D" uid="uid://depyywow3yxex" path="res://assets/plants/evolution3.1glow.png" id="5_4or8w"]
[ext_resource type="Texture2D" uid="uid://bhofpsc2gk2s8" path="res://assets/plants/evolution3.png" id="5_6yscv"] [ext_resource type="Texture2D" uid="uid://bhofpsc2gk2s8" path="res://assets/plants/evolution3.png" id="5_6yscv"]
[sub_resource type="AtlasTexture" id="AtlasTexture_2qduo"] [sub_resource type="AtlasTexture" id="AtlasTexture_2qduo"]
@@ -23,6 +24,9 @@ animations = [{
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("4_6je8p") "texture": ExtResource("4_6je8p")
}, {
"duration": 1.0,
"texture": ExtResource("5_4or8w")
}], }],
"loop": true, "loop": true,
"name": &"GROWN", "name": &"GROWN",
@@ -55,3 +59,4 @@ presence_prod = 2
dead_water_prod = 0 dead_water_prod = 0
dead_fertility_prod = 1 dead_fertility_prod = 1
distance_prod = 400 distance_prod = 400
distance_prod_falloff = 200

View File

@@ -1,9 +1,10 @@
[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://cg2ou1520k162"] [gd_resource type="Resource" script_class="PlantType" load_steps=9 format=3 uid="uid://cg2ou1520k162"]
[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_cmyhw"] [ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_cmyhw"]
[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_nese1"] [ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_nese1"]
[ext_resource type="Texture2D" uid="uid://ceebnlqxcbmlw" path="res://assets/plants/plantes mortes/plante_morte1.png" id="3_io6uv"] [ext_resource type="Texture2D" uid="uid://ceebnlqxcbmlw" path="res://assets/plants/plantes mortes/plante_morte1.png" id="3_io6uv"]
[ext_resource type="Texture2D" uid="uid://ouxdlglbbnme" path="res://assets/plants/evolution1.4.png" id="4_h2yn0"] [ext_resource type="Texture2D" uid="uid://ouxdlglbbnme" path="res://assets/plants/evolution1.4.png" id="4_h2yn0"]
[ext_resource type="Texture2D" uid="uid://deckgdj2y50a0" path="res://assets/plants/evolution1.4glow.png" id="5_6v40j"]
[ext_resource type="Texture2D" uid="uid://hkcjtfch0kub" path="res://assets/plants/evolution1.png" id="5_c6tg4"] [ext_resource type="Texture2D" uid="uid://hkcjtfch0kub" path="res://assets/plants/evolution1.png" id="5_c6tg4"]
[sub_resource type="AtlasTexture" id="AtlasTexture_b4v1x"] [sub_resource type="AtlasTexture" id="AtlasTexture_b4v1x"]
@@ -23,6 +24,9 @@ animations = [{
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("4_h2yn0") "texture": ExtResource("4_h2yn0")
}, {
"duration": 1.0,
"texture": ExtResource("5_6v40j")
}], }],
"loop": true, "loop": true,
"name": &"GROWN", "name": &"GROWN",
@@ -55,3 +59,4 @@ presence_prod = 2
dead_water_prod = 1 dead_water_prod = 1
dead_fertility_prod = 1 dead_fertility_prod = 1
distance_prod = 400 distance_prod = 400
distance_prod_falloff = 200

View File

@@ -1,10 +1,11 @@
[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://3f0c3ant0i74"] [gd_resource type="Resource" script_class="PlantType" load_steps=9 format=3 uid="uid://3f0c3ant0i74"]
[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_incgu"] [ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_incgu"]
[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_7j0g4"] [ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_7j0g4"]
[ext_resource type="Texture2D" uid="uid://cuujr7p18dv3g" path="res://assets/plants/plantes mortes/plante_morte2.png" id="3_qbnxd"] [ext_resource type="Texture2D" uid="uid://cuujr7p18dv3g" path="res://assets/plants/plantes mortes/plante_morte2.png" id="3_qbnxd"]
[ext_resource type="Texture2D" uid="uid://bi08m8a3ikw7j" path="res://assets/plants/evolution3.3.png" id="4_1gp5r"] [ext_resource type="Texture2D" uid="uid://bi08m8a3ikw7j" path="res://assets/plants/evolution3.3.png" id="4_1gp5r"]
[ext_resource type="Texture2D" uid="uid://bhofpsc2gk2s8" path="res://assets/plants/evolution3.png" id="5_gjb21"] [ext_resource type="Texture2D" uid="uid://bhofpsc2gk2s8" path="res://assets/plants/evolution3.png" id="5_gjb21"]
[ext_resource type="Texture2D" uid="uid://yjn26ei0e2du" path="res://assets/plants/evolution3.3glow.png" id="5_mhn2m"]
[sub_resource type="AtlasTexture" id="AtlasTexture_6rb5i"] [sub_resource type="AtlasTexture" id="AtlasTexture_6rb5i"]
atlas = ExtResource("2_7j0g4") atlas = ExtResource("2_7j0g4")
@@ -23,6 +24,9 @@ animations = [{
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("4_1gp5r") "texture": ExtResource("4_1gp5r")
}, {
"duration": 1.0,
"texture": ExtResource("5_mhn2m")
}], }],
"loop": true, "loop": true,
"name": &"GROWN", "name": &"GROWN",
@@ -55,3 +59,4 @@ presence_prod = 1
dead_water_prod = 0 dead_water_prod = 0
dead_fertility_prod = 1 dead_fertility_prod = 1
distance_prod = 200 distance_prod = 200
distance_prod_falloff = 100

View File

@@ -1,10 +1,11 @@
[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://brcimvxigi5g7"] [gd_resource type="Resource" script_class="PlantType" load_steps=9 format=3 uid="uid://brcimvxigi5g7"]
[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_4c8pg"] [ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_4c8pg"]
[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_lyimn"] [ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_lyimn"]
[ext_resource type="Texture2D" uid="uid://cuujr7p18dv3g" path="res://assets/plants/plantes mortes/plante_morte2.png" id="3_ircru"] [ext_resource type="Texture2D" uid="uid://cuujr7p18dv3g" path="res://assets/plants/plantes mortes/plante_morte2.png" id="3_ircru"]
[ext_resource type="Texture2D" uid="uid://br1olfut3p0tx" path="res://assets/plants/evolution1.1.png" id="4_8xdmf"] [ext_resource type="Texture2D" uid="uid://br1olfut3p0tx" path="res://assets/plants/evolution1.1.png" id="4_8xdmf"]
[ext_resource type="Texture2D" uid="uid://hkcjtfch0kub" path="res://assets/plants/evolution1.png" id="5_3e24e"] [ext_resource type="Texture2D" uid="uid://hkcjtfch0kub" path="res://assets/plants/evolution1.png" id="5_3e24e"]
[ext_resource type="Texture2D" uid="uid://drxb6gfgib6b2" path="res://assets/plants/evolution1.1glow.png" id="5_n8mr6"]
[sub_resource type="AtlasTexture" id="AtlasTexture_4k2ke"] [sub_resource type="AtlasTexture" id="AtlasTexture_4k2ke"]
atlas = ExtResource("2_lyimn") atlas = ExtResource("2_lyimn")
@@ -23,6 +24,9 @@ animations = [{
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("4_8xdmf") "texture": ExtResource("4_8xdmf")
}, {
"duration": 1.0,
"texture": ExtResource("5_n8mr6")
}], }],
"loop": true, "loop": true,
"name": &"GROWN", "name": &"GROWN",
@@ -46,8 +50,8 @@ growing_time = 1.0
offspring_per_lifetime = 3 offspring_per_lifetime = 3
dying_time = 60.0 dying_time = 60.0
dead_time = 30.0 dead_time = 30.0
water_need = [-1, 9] water_need = [-1, 10]
fertility_need = [-5, 8] fertility_need = [-5, 10]
presence_need = [2, 19] presence_need = [2, 19]
water_prod = 0 water_prod = 0
fertility_prod = 4 fertility_prod = 4
@@ -55,3 +59,4 @@ presence_prod = 2
dead_water_prod = 0 dead_water_prod = 0
dead_fertility_prod = 2 dead_fertility_prod = 2
distance_prod = 300 distance_prod = 300
distance_prod_falloff = 150

View File

@@ -0,0 +1,66 @@
[gd_resource type="Resource" script_class="PlantType" load_steps=10 format=3 uid="uid://bje2xwse2ilga"]
[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_8y2m5"]
[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_0bswh"]
[ext_resource type="Texture2D" uid="uid://di74g50h3oruf" path="res://assets/plants/plantes mortes/arbre_mort.png" id="3_pmix4"]
[ext_resource type="Texture2D" uid="uid://cbj6fmw8pxnsb" path="res://assets/plants/arbre4.png" id="4_4j1rk"]
[ext_resource type="Texture2D" uid="uid://bxw81k0af64wo" path="res://assets/plants/arbre4_bebe.png" id="5_0d7t0"]
[ext_resource type="Texture2D" uid="uid://6sbvx064f20y" path="res://assets/plants/arbre4_glow.png" id="5_8ok3i"]
[ext_resource type="Texture2D" uid="uid://dvon76hnof5ny" path="res://assets/plants/arbre4_bebe_glow.png" id="7_jijhl"]
[sub_resource type="AtlasTexture" id="AtlasTexture_e0ddp"]
atlas = ExtResource("2_0bswh")
region = Rect2(810, 270, 270, 270)
[sub_resource type="SpriteFrames" id="SpriteFrames_qtm0k"]
animations = [{
"frames": [{
"duration": 1.0,
"texture": ExtResource("3_pmix4")
}],
"loop": true,
"name": &"DEAD",
"speed": 5.0
}, {
"frames": [{
"duration": 1.0,
"texture": ExtResource("4_4j1rk")
}, {
"duration": 1.0,
"texture": ExtResource("5_8ok3i")
}],
"loop": true,
"name": &"GROWN",
"speed": 5.0
}, {
"frames": [{
"duration": 1.0,
"texture": ExtResource("5_0d7t0")
}, {
"duration": 1.0,
"texture": ExtResource("7_jijhl")
}],
"loop": true,
"name": &"SAPLING",
"speed": 5.0
}]
[resource]
script = ExtResource("1_8y2m5")
type = "Neviusia"
seed_sprite = SubResource("AtlasTexture_e0ddp")
sprite_frames = SubResource("SpriteFrames_qtm0k")
growing_time = 60.0
offspring_per_lifetime = 1
dying_time = 240.0
dead_time = 120.0
water_need = [0, 10]
fertility_need = [0, 10]
presence_need = [2, 20]
water_prod = 4
fertility_prod = 4
presence_prod = 4
dead_water_prod = 2
dead_fertility_prod = 2
distance_prod = 600
distance_prod_falloff = 300

View File

@@ -1,10 +1,11 @@
[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://dr17d2cg8cmar"] [gd_resource type="Resource" script_class="PlantType" load_steps=9 format=3 uid="uid://dr17d2cg8cmar"]
[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_mr0h0"] [ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_mr0h0"]
[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_e84rt"] [ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_e84rt"]
[ext_resource type="Texture2D" uid="uid://cuujr7p18dv3g" path="res://assets/plants/plantes mortes/plante_morte2.png" id="3_p1ccf"] [ext_resource type="Texture2D" uid="uid://cuujr7p18dv3g" path="res://assets/plants/plantes mortes/plante_morte2.png" id="3_p1ccf"]
[ext_resource type="Texture2D" uid="uid://bklqkrqhw6fdf" path="res://assets/plants/evolution2.2.png" id="4_bd3io"] [ext_resource type="Texture2D" uid="uid://bklqkrqhw6fdf" path="res://assets/plants/evolution2.2.png" id="4_bd3io"]
[ext_resource type="Texture2D" uid="uid://d0xlqgttxwkgh" path="res://assets/plants/evolution2.png" id="5_3xk5n"] [ext_resource type="Texture2D" uid="uid://d0xlqgttxwkgh" path="res://assets/plants/evolution2.png" id="5_3xk5n"]
[ext_resource type="Texture2D" uid="uid://b6yakjoc56ykx" path="res://assets/plants/evolution2.2glow.png" id="5_svnxg"]
[sub_resource type="AtlasTexture" id="AtlasTexture_7ctak"] [sub_resource type="AtlasTexture" id="AtlasTexture_7ctak"]
atlas = ExtResource("2_e84rt") atlas = ExtResource("2_e84rt")
@@ -23,6 +24,9 @@ animations = [{
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("4_bd3io") "texture": ExtResource("4_bd3io")
}, {
"duration": 1.0,
"texture": ExtResource("5_svnxg")
}], }],
"loop": true, "loop": true,
"name": &"GROWN", "name": &"GROWN",
@@ -55,3 +59,4 @@ presence_prod = 2
dead_water_prod = 1 dead_water_prod = 1
dead_fertility_prod = 1 dead_fertility_prod = 1
distance_prod = 400 distance_prod = 400
distance_prod_falloff = 200

View File

@@ -1,10 +1,11 @@
[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://d25s1eywvsyei"] [gd_resource type="Resource" script_class="PlantType" load_steps=9 format=3 uid="uid://d25s1eywvsyei"]
[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_4cghd"] [ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_4cghd"]
[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_o8yby"] [ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_o8yby"]
[ext_resource type="Texture2D" uid="uid://cuujr7p18dv3g" path="res://assets/plants/plantes mortes/plante_morte2.png" id="3_feqkx"] [ext_resource type="Texture2D" uid="uid://cuujr7p18dv3g" path="res://assets/plants/plantes mortes/plante_morte2.png" id="3_feqkx"]
[ext_resource type="Texture2D" uid="uid://bhqhdoxql4odd" path="res://assets/plants/evolution3.2.png" id="4_uxebp"] [ext_resource type="Texture2D" uid="uid://bhqhdoxql4odd" path="res://assets/plants/evolution3.2.png" id="4_uxebp"]
[ext_resource type="Texture2D" uid="uid://bhofpsc2gk2s8" path="res://assets/plants/evolution3.png" id="5_6hg7m"] [ext_resource type="Texture2D" uid="uid://bhofpsc2gk2s8" path="res://assets/plants/evolution3.png" id="5_6hg7m"]
[ext_resource type="Texture2D" uid="uid://bb4t30vv1erc3" path="res://assets/plants/evolution3.2glow.png" id="5_nka4w"]
[sub_resource type="AtlasTexture" id="AtlasTexture_1kvg0"] [sub_resource type="AtlasTexture" id="AtlasTexture_1kvg0"]
atlas = ExtResource("2_o8yby") atlas = ExtResource("2_o8yby")
@@ -23,6 +24,9 @@ animations = [{
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("4_uxebp") "texture": ExtResource("4_uxebp")
}, {
"duration": 1.0,
"texture": ExtResource("5_nka4w")
}], }],
"loop": true, "loop": true,
"name": &"GROWN", "name": &"GROWN",
@@ -55,3 +59,4 @@ presence_prod = 1
dead_water_prod = 0 dead_water_prod = 0
dead_fertility_prod = 1 dead_fertility_prod = 1
distance_prod = 200 distance_prod = 200
distance_prod_falloff = 100

View File

@@ -1,10 +1,11 @@
[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://c64hhkqk4tnas"] [gd_resource type="Resource" script_class="PlantType" load_steps=9 format=3 uid="uid://c64hhkqk4tnas"]
[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_d77oo"] [ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_d77oo"]
[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_3tp7g"] [ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_3tp7g"]
[ext_resource type="Texture2D" uid="uid://cuujr7p18dv3g" path="res://assets/plants/plantes mortes/plante_morte2.png" id="3_6kltw"] [ext_resource type="Texture2D" uid="uid://cuujr7p18dv3g" path="res://assets/plants/plantes mortes/plante_morte2.png" id="3_6kltw"]
[ext_resource type="Texture2D" uid="uid://24ift4wt1h2h" path="res://assets/plants/evolution2.1.png" id="4_cxwjh"] [ext_resource type="Texture2D" uid="uid://24ift4wt1h2h" path="res://assets/plants/evolution2.1.png" id="4_cxwjh"]
[ext_resource type="Texture2D" uid="uid://d0xlqgttxwkgh" path="res://assets/plants/evolution2.png" id="5_0cele"] [ext_resource type="Texture2D" uid="uid://d0xlqgttxwkgh" path="res://assets/plants/evolution2.png" id="5_0cele"]
[ext_resource type="Texture2D" uid="uid://dj145jeb441ms" path="res://assets/plants/evolution2.1glow.png" id="5_diyuo"]
[sub_resource type="AtlasTexture" id="AtlasTexture_efpgb"] [sub_resource type="AtlasTexture" id="AtlasTexture_efpgb"]
atlas = ExtResource("2_3tp7g") atlas = ExtResource("2_3tp7g")
@@ -23,6 +24,9 @@ animations = [{
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("4_cxwjh") "texture": ExtResource("4_cxwjh")
}, {
"duration": 1.0,
"texture": ExtResource("5_diyuo")
}], }],
"loop": true, "loop": true,
"name": &"GROWN", "name": &"GROWN",
@@ -55,3 +59,4 @@ presence_prod = 1
dead_water_prod = 0 dead_water_prod = 0
dead_fertility_prod = 1 dead_fertility_prod = 1
distance_prod = 200 distance_prod = 200
distance_prod_falloff = 100

View File

@@ -1,9 +1,10 @@
[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://cev7wbg0cfel3"] [gd_resource type="Resource" script_class="PlantType" load_steps=9 format=3 uid="uid://cev7wbg0cfel3"]
[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_xvhlf"] [ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_xvhlf"]
[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_2wi5a"] [ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_2wi5a"]
[ext_resource type="Texture2D" uid="uid://cuujr7p18dv3g" path="res://assets/plants/plantes mortes/plante_morte2.png" id="3_0hwfl"] [ext_resource type="Texture2D" uid="uid://cuujr7p18dv3g" path="res://assets/plants/plantes mortes/plante_morte2.png" id="3_0hwfl"]
[ext_resource type="Texture2D" uid="uid://clnrdh4ygkrr8" path="res://assets/plants/evolution1.3.png" id="4_ee77a"] [ext_resource type="Texture2D" uid="uid://clnrdh4ygkrr8" path="res://assets/plants/evolution1.3.png" id="4_ee77a"]
[ext_resource type="Texture2D" uid="uid://dx8rc0ac1luab" path="res://assets/plants/evolution1.3_glow.png" id="5_evuaa"]
[ext_resource type="Texture2D" uid="uid://hkcjtfch0kub" path="res://assets/plants/evolution1.png" id="5_xqm7x"] [ext_resource type="Texture2D" uid="uid://hkcjtfch0kub" path="res://assets/plants/evolution1.png" id="5_xqm7x"]
[sub_resource type="AtlasTexture" id="AtlasTexture_ssp8o"] [sub_resource type="AtlasTexture" id="AtlasTexture_ssp8o"]
@@ -23,6 +24,9 @@ animations = [{
"frames": [{ "frames": [{
"duration": 1.0, "duration": 1.0,
"texture": ExtResource("4_ee77a") "texture": ExtResource("4_ee77a")
}, {
"duration": 1.0,
"texture": ExtResource("5_evuaa")
}], }],
"loop": true, "loop": true,
"name": &"GROWN", "name": &"GROWN",
@@ -55,3 +59,4 @@ presence_prod = 2
dead_water_prod = 0 dead_water_prod = 0
dead_fertility_prod = 2 dead_fertility_prod = 2
distance_prod = 400 distance_prod = 400
distance_prod_falloff = 200

View File

@@ -1,4 +1,4 @@
[gd_scene load_steps=11 format=3 uid="uid://dha8pa1les53a"] [gd_scene load_steps=12 format=3 uid="uid://dha8pa1les53a"]
[ext_resource type="Script" path="res://scripts/gui.gd" id="1_6gq27"] [ext_resource type="Script" path="res://scripts/gui.gd" id="1_6gq27"]
[ext_resource type="PackedScene" uid="uid://bm8nlb7kmaa6k" path="res://objects/gui/Seed_queue.tscn" id="1_lh8u1"] [ext_resource type="PackedScene" uid="uid://bm8nlb7kmaa6k" path="res://objects/gui/Seed_queue.tscn" id="1_lh8u1"]
@@ -7,6 +7,7 @@
[ext_resource type="Script" path="res://scripts/tuto.gd" id="5_5h6w8"] [ext_resource type="Script" path="res://scripts/tuto.gd" id="5_5h6w8"]
[ext_resource type="Texture2D" uid="uid://dqogq148ksscp" path="res://assets/sprites/robot/walk/frame_01.png" id="5_kwcrh"] [ext_resource type="Texture2D" uid="uid://dqogq148ksscp" path="res://assets/sprites/robot/walk/frame_01.png" id="5_kwcrh"]
[ext_resource type="Theme" uid="uid://dnebunkx13tbr" path="res://assets/gui/Text.tres" id="6_tw1fh"] [ext_resource type="Theme" uid="uid://dnebunkx13tbr" path="res://assets/gui/Text.tres" id="6_tw1fh"]
[ext_resource type="Texture2D" uid="uid://baqi0tv2xfs31" path="res://assets/gui/image/controls.png" id="8_0b6a6"]
[ext_resource type="AudioStream" uid="uid://n7seb2bqfped" path="res://assets/sounds/Dialogue.mp3" id="8_8y3ei"] [ext_resource type="AudioStream" uid="uid://n7seb2bqfped" path="res://assets/sounds/Dialogue.mp3" id="8_8y3ei"]
[sub_resource type="LabelSettings" id="LabelSettings_kryjr"] [sub_resource type="LabelSettings" id="LabelSettings_kryjr"]
@@ -75,7 +76,7 @@ anchor_bottom = 1.0
grow_horizontal = 2 grow_horizontal = 2
grow_vertical = 2 grow_vertical = 2
theme_override_constants/margin_left = 20 theme_override_constants/margin_left = 20
theme_override_constants/margin_top = 20 theme_override_constants/margin_top = 60
theme_override_constants/margin_right = 20 theme_override_constants/margin_right = 20
theme_override_constants/margin_bottom = 20 theme_override_constants/margin_bottom = 20
@@ -101,6 +102,13 @@ horizontal_alignment = 1
vertical_alignment = 1 vertical_alignment = 1
autowrap_mode = 2 autowrap_mode = 2
[node name="Controls" type="TextureRect" parent="Tuto/MarginContainer"]
layout_mode = 2
size_flags_horizontal = 4
size_flags_vertical = 0
texture = ExtResource("8_0b6a6")
stretch_mode = 5
[node name="Label2" type="Label" parent="Tuto/MarginContainer"] [node name="Label2" type="Label" parent="Tuto/MarginContainer"]
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 8 size_flags_horizontal = 8

View File

@@ -1,10 +1,9 @@
[gd_scene load_steps=16 format=3 uid="uid://d3hul8b7hlmj7"] [gd_scene load_steps=15 format=3 uid="uid://d3hul8b7hlmj7"]
[ext_resource type="Script" path="res://scripts/map.gd" id="1_3np0o"] [ext_resource type="Script" path="res://scripts/map.gd" id="1_3np0o"]
[ext_resource type="PackedScene" uid="uid://6ferubyu2uy1" path="res://scenes/Scanners.tscn" id="1_6mlj0"] [ext_resource type="PackedScene" uid="uid://6ferubyu2uy1" path="res://scenes/Scanners.tscn" id="1_6mlj0"]
[ext_resource type="PackedScene" uid="uid://byv2a5d0n1538" path="res://objects/Animal.tscn" id="4_pkphc"] [ext_resource type="PackedScene" uid="uid://cj457q2fx5mim" path="res://objects/Animal.tscn" id="4_pkphc"]
[ext_resource type="Texture2D" uid="uid://c84bc7d0f8gtn" path="res://assets/texture/sky.png" id="4_uy8vn"] [ext_resource type="Texture2D" uid="uid://ci1oiftbr13ci" path="res://assets/texture/sol_gamejam_marais.png" id="5_fbt74"]
[ext_resource type="Texture2D" uid="uid://bkwi6yurko7gm" path="res://assets/texture/sol_gamejam_fleurs.png" id="5_6sl35"]
[ext_resource type="Shader" path="res://scripts/shaders/TextureSplit.gdshader" id="5_iqvbx"] [ext_resource type="Shader" path="res://scripts/shaders/TextureSplit.gdshader" id="5_iqvbx"]
[ext_resource type="Texture2D" uid="uid://6h5ieh6ba7re" path="res://assets/texture/sol_gamejam_mort.png" id="6_wj5l3"] [ext_resource type="Texture2D" uid="uid://6h5ieh6ba7re" path="res://assets/texture/sol_gamejam_mort.png" id="6_wj5l3"]
[ext_resource type="Texture2D" uid="uid://c85s1vwryvngb" path="res://assets/texture/sol_gamejam_normal.png" id="7_iuq0o"] [ext_resource type="Texture2D" uid="uid://c85s1vwryvngb" path="res://assets/texture/sol_gamejam_normal.png" id="7_iuq0o"]
@@ -21,7 +20,7 @@ shader_parameter/texture_size = Vector2(384, 216)
shader_parameter/smooth_change_range = 0.15 shader_parameter/smooth_change_range = 0.15
shader_parameter/texture_low = ExtResource("6_wj5l3") shader_parameter/texture_low = ExtResource("6_wj5l3")
shader_parameter/texture_medium = ExtResource("7_iuq0o") shader_parameter/texture_medium = ExtResource("7_iuq0o")
shader_parameter/texture_high = ExtResource("5_6sl35") shader_parameter/texture_high = ExtResource("5_fbt74")
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_rhtup"] [sub_resource type="CompressedTexture2D" id="CompressedTexture2D_rhtup"]
@@ -45,14 +44,16 @@ shader_parameter/texture_medium = SubResource("GradientTexture1D_hwe6p")
shader_parameter/texture_high = ExtResource("8_6vuay") shader_parameter/texture_high = ExtResource("8_6vuay")
[node name="Map" type="Node2D"] [node name="Map" type="Node2D"]
y_sort_enabled = true
script = ExtResource("1_3np0o") script = ExtResource("1_3np0o")
[node name="Scanners" parent="." instance=ExtResource("1_6mlj0")] [node name="Scanners" parent="." instance=ExtResource("1_6mlj0")]
[node name="OutOfBound" type="Polygon2D" parent="."] [node name="OutOfBound" type="Polygon2D" parent="."]
modulate = Color(0.537011, 0.537011, 0.537011, 1)
z_index = -3 z_index = -3
texture_repeat = 2 texture_repeat = 2
texture = ExtResource("4_uy8vn") texture = ExtResource("7_iuq0o")
texture_scale = Vector2(5, 5) texture_scale = Vector2(5, 5)
[node name="Ground" type="Polygon2D" parent="."] [node name="Ground" type="Polygon2D" parent="."]
@@ -68,21 +69,19 @@ texture_repeat = 2
material = SubResource("ShaderMaterial_4rqj7") material = SubResource("ShaderMaterial_4rqj7")
color = Color(1, 1, 1, 0) color = Color(1, 1, 1, 0)
texture_scale = Vector2(5, 5) texture_scale = Vector2(5, 5)
polygon = PackedVector2Array(27, 788, 54, 1452, 1715, 1163, 1439, -501, -416, -340)
[node name="Animals" type="Node2D" parent="."] [node name="Animals" type="Node2D" parent="."]
y_sort_enabled = true y_sort_enabled = true
[node name="Animal" parent="Animals" instance=ExtResource("4_pkphc")] [node name="Animal" parent="Animals" instance=ExtResource("4_pkphc")]
position = Vector2(1905, 566) position = Vector2(1452, 579)
[node name="Animal2" parent="Animals" instance=ExtResource("4_pkphc")] [node name="Animal2" parent="Animals" instance=ExtResource("4_pkphc")]
position = Vector2(382, 2220) position = Vector2(364, 1856)
[node name="Animal3" parent="Animals" instance=ExtResource("4_pkphc")] [node name="Animal3" parent="Animals" instance=ExtResource("4_pkphc")]
position = Vector2(1847, 2248) position = Vector2(1991, 2235)
[node name="Animal4" parent="Animals" instance=ExtResource("4_pkphc")]
position = Vector2(536, 548)
[connection signal="liberated" from="Animals/Animal" to="." method="_on_animal_liberated"] [connection signal="liberated" from="Animals/Animal" to="." method="_on_animal_liberated"]
[connection signal="liberated" from="Animals/Animal2" to="." method="_on_animal_2_liberated"]
[connection signal="liberated" from="Animals/Animal3" to="." method="_on_animal_3_liberated"]

View File

@@ -13,12 +13,12 @@ func _ready():
func _on_area_2d_area_entered(area: Area2D) -> void: func _on_area_2d_area_entered(area: Area2D) -> void:
var plant = area.get_parent() var plant = area.get_parent()
if plant is Plant and not liberated: if plant is Plant and not is_liberated:
plant.grown.connect(tracked_plant_grew) plant.grown.connect(tracked_plant_grew)
plant.died.connect() plant.died.connect(tracked_plant_died)
func tracked_plant_grew(): func tracked_plant_grew():
if liberated: if is_liberated:
return return
current_plants += 1 current_plants += 1
if current_plants == n_plant_needed: if current_plants == n_plant_needed:
@@ -26,7 +26,7 @@ func tracked_plant_grew():
update_count() update_count()
func tracked_plant_died(): func tracked_plant_died():
if liberated: if is_liberated:
return return
current_plants -= 1 current_plants -= 1
update_count() update_count()

View File

@@ -37,6 +37,11 @@ func update_mouse_position(mouse_position):
and mouse_position.x < GameTerrain.TERRAIN_SIZE.x * GameTerrain.MAP_RATIO and mouse_position.x < GameTerrain.TERRAIN_SIZE.x * GameTerrain.MAP_RATIO
and mouse_position.y < GameTerrain.TERRAIN_SIZE.y * GameTerrain.MAP_RATIO and mouse_position.y < GameTerrain.TERRAIN_SIZE.y * GameTerrain.MAP_RATIO
): ):
waterNeeds.set_cursor(GameTerrain.get_color(mouse_position).r) var next_seed_param := planter.get_plant_from_queue()
fertilityNeeds.set_cursor(GameTerrain.get_color(mouse_position).g) var needs := GameTerrain.get_levels(mouse_position)
populationNeeds.set_cursor(GameTerrain.get_color(mouse_position).b) var meet_water: bool = needs.x >= next_seed_param.water_need[0] and needs.x <= next_seed_param.water_need[1]
waterNeeds.set_cursor(GameTerrain.get_color(mouse_position).r, meet_water)
var meet_fert: bool = needs.y >= next_seed_param.fertility_need[0] and needs.y <= next_seed_param.fertility_need[1]
fertilityNeeds.set_cursor(GameTerrain.get_color(mouse_position).g, meet_fert)
var meet_pop: bool = needs.z + GameTerrain.LEVELS_NUMBER / 2 >= next_seed_param.presence_need[0] and needs.z + GameTerrain.LEVELS_NUMBER / 2 <= next_seed_param.presence_need[1]
populationNeeds.set_cursor(GameTerrain.get_color(mouse_position).b, meet_pop)

View File

@@ -3,8 +3,6 @@ extends Control
@onready var next_seed: TextureRect = $HBoxContainer/NextSeed @onready var next_seed: TextureRect = $HBoxContainer/NextSeed
@onready var queue_image := [ @onready var queue_image := [
$HBoxContainer/Queue/Seed1,
$HBoxContainer/Queue/Seed2,
$HBoxContainer/Queue/Seed3, $HBoxContainer/Queue/Seed3,
$HBoxContainer/Queue/Seed4, $HBoxContainer/Queue/Seed4,
$HBoxContainer/Queue/Seed5, $HBoxContainer/Queue/Seed5,
@@ -15,7 +13,7 @@ var planter: Planter
func update_queue(): func update_queue():
var next_seed_param := planter.get_plant_from_queue() var next_seed_param := planter.get_plant_from_queue()
next_seed.texture = next_seed_param.seed_sprite next_seed.texture = next_seed_param.seed_sprite
var index := 0 var index := 2
for child in queue_image: for child in queue_image:
var seed_param := planter.get_plant_from_queue(index) var seed_param := planter.get_plant_from_queue(index)
child.texture = seed_param.seed_sprite child.texture = seed_param.seed_sprite

View File

@@ -3,7 +3,9 @@ extends CenterContainer
@export var gradient : GradientTexture1D @export var gradient : GradientTexture1D
const CURSOR_WIDTH = 0.08 const CURSOR_WIDTH = 0.04
const VALID_COLOR := Color(0.1, 0.9, 0.85, 1.0)
const NOT_VALID_COLOR := Color(1.0, 0.0, 0.3, 1.0)
# Called when the node enters the scene tree for the first time. # Called when the node enters the scene tree for the first time.
func _ready(): func _ready():
@@ -29,7 +31,7 @@ func set_area(need : Array):
$Zone.texture = texture $Zone.texture = texture
func set_cursor(color_value): func set_cursor(color_value, is_valid: bool):
var zone_grad := Gradient.new() var zone_grad := Gradient.new()
zone_grad.interpolation_mode = Gradient.GRADIENT_INTERPOLATE_CONSTANT zone_grad.interpolation_mode = Gradient.GRADIENT_INTERPOLATE_CONSTANT
@@ -37,8 +39,13 @@ func set_cursor(color_value):
zone_grad.set_color(0, Color(1,1,1,0)) zone_grad.set_color(0, Color(1,1,1,0))
zone_grad.set_color(1, Color(1,1,1,0)) zone_grad.set_color(1, Color(1,1,1,0))
zone_grad.add_point(max(color_value - CURSOR_WIDTH/2, 0.0), Color(1,1,1,1)) var color := NOT_VALID_COLOR
zone_grad.add_point(min(color_value + CURSOR_WIDTH/2, 1.0), Color(1,1,1,0)) if is_valid:
color = VALID_COLOR
zone_grad.add_point(max(color_value - CURSOR_WIDTH/2, 0.0), color)
color.a = 0
zone_grad.add_point(min(color_value + CURSOR_WIDTH/2, 1.0), color)
var texture := GradientTexture1D.new() var texture := GradientTexture1D.new()

View File

@@ -6,7 +6,7 @@ const OUT_OF_BOUND_DIST = 2000
signal win_game signal win_game
@export var n_animals_to_liberate := 4 @export var n_animals_to_liberate := 3
func _ready(): func _ready():
var map_size = GameTerrain.TERRAIN_SIZE * GameTerrain.MAP_RATIO var map_size = GameTerrain.TERRAIN_SIZE * GameTerrain.MAP_RATIO
@@ -39,3 +39,15 @@ func _on_animal_liberated() -> void:
n_animals_to_liberate -= 1 n_animals_to_liberate -= 1
if n_animals_to_liberate == 0: if n_animals_to_liberate == 0:
emit_signal("win_game") emit_signal("win_game")
func _on_animal_2_liberated() -> void:
n_animals_to_liberate -= 1
if n_animals_to_liberate == 0:
emit_signal("win_game")
func _on_animal_3_liberated() -> void:
n_animals_to_liberate -= 1
if n_animals_to_liberate == 0:
emit_signal("win_game")

View File

@@ -14,7 +14,7 @@ signal died
@onready var sprite_node: AnimatedSprite2D = $AnimatedSprite2D @onready var sprite_node: AnimatedSprite2D = $AnimatedSprite2D
const NEED_CHECK_PERIOD := 0.5 const NEED_CHECK_PERIOD := 0.5
const SAPLING_LIFETIME_MULT := 2.0 # this multiplies the time to grow to tell the time it can stay as a sapling const SAPLING_LIFETIME_MULT := 20.0 # this multiplies the time to grow to tell the time it can stay as a sapling
const OFFSET_REPRODUCTION_PERCT_DIST := 0.1 const OFFSET_REPRODUCTION_PERCT_DIST := 0.1
var parameter: PlantType var parameter: PlantType
@@ -35,6 +35,10 @@ func _on_need_checker_timeout() -> void:
can_grow = check_terrain_viability() can_grow = check_terrain_viability()
growing_timer.paused = not can_grow and state == PlantState.SAPLING growing_timer.paused = not can_grow and state == PlantState.SAPLING
reproduction.paused = not can_grow reproduction.paused = not can_grow
if can_grow:
sprite_node.frame = 1
else:
sprite_node.frame = 0
func check_terrain_viability() -> bool: func check_terrain_viability() -> bool:
var water := GameTerrain.get_stat(position, GameTerrain.Stats.WATER) var water := GameTerrain.get_stat(position, GameTerrain.Stats.WATER)
@@ -70,7 +74,7 @@ func _on_growing_timeout() -> void:
func plant(new_position: Vector2): func plant(new_position: Vector2):
if not GameTerrain.is_on_map(new_position): if not GameTerrain.is_on_map_real(new_position):
push_error("Planting out of the map") push_error("Planting out of the map")
position = new_position position = new_position
state = PlantState.SAPLING state = PlantState.SAPLING
@@ -86,16 +90,19 @@ func grow():
state = PlantState.GROWN state = PlantState.GROWN
sapling_count_down.stop() sapling_count_down.stop()
growing_timer.start(parameter.dying_time) growing_timer.start(parameter.dying_time)
GameTerrain.modify_zone(position, GameTerrain.modify_zone_falloff(position,
parameter.distance_prod, parameter.distance_prod,
parameter.distance_prod_falloff,
GameTerrain.Stats.WATER, GameTerrain.Stats.WATER,
parameter.water_prod) parameter.water_prod)
GameTerrain.modify_zone(position, GameTerrain.modify_zone_falloff(position,
parameter.distance_prod, parameter.distance_prod,
parameter.distance_prod_falloff,
GameTerrain.Stats.FERTILITY, GameTerrain.Stats.FERTILITY,
parameter.fertility_prod) parameter.fertility_prod)
GameTerrain.modify_zone(position, GameTerrain.modify_zone_falloff(position,
parameter.distance_prod, parameter.distance_prod,
parameter.distance_prod_falloff,
GameTerrain.Stats.PRESENCE, GameTerrain.Stats.PRESENCE,
parameter.presence_prod) parameter.presence_prod)
@@ -109,16 +116,19 @@ func grow():
func die(): func die():
state = PlantState.DEAD state = PlantState.DEAD
# remove alive prod and add dead prod # remove alive prod and add dead prod
GameTerrain.modify_zone(position, GameTerrain.modify_zone_falloff(position,
parameter.distance_prod, parameter.distance_prod,
parameter.distance_prod_falloff,
GameTerrain.Stats.WATER, GameTerrain.Stats.WATER,
-parameter.water_prod + parameter.dead_water_prod) -parameter.water_prod + parameter.dead_water_prod)
GameTerrain.modify_zone(position, GameTerrain.modify_zone_falloff(position,
parameter.distance_prod, parameter.distance_prod,
parameter.distance_prod_falloff,
GameTerrain.Stats.FERTILITY, GameTerrain.Stats.FERTILITY,
-parameter.fertility_prod + parameter.dead_fertility_prod) -parameter.fertility_prod + parameter.dead_fertility_prod)
GameTerrain.modify_zone(position, GameTerrain.modify_zone_falloff(position,
parameter.distance_prod, parameter.distance_prod,
parameter.distance_prod_falloff,
GameTerrain.Stats.PRESENCE, GameTerrain.Stats.PRESENCE,
-parameter.presence_prod) -parameter.presence_prod)
growing_timer.start(parameter.dead_time) growing_timer.start(parameter.dead_time)
@@ -128,12 +138,14 @@ func die():
func remove(was_dead: bool = true): func remove(was_dead: bool = true):
if was_dead: if was_dead:
GameTerrain.modify_zone(position, GameTerrain.modify_zone_falloff(position,
parameter.distance_prod, parameter.distance_prod,
parameter.distance_prod_falloff,
GameTerrain.Stats.WATER, GameTerrain.Stats.WATER,
-parameter.dead_water_prod) -parameter.dead_water_prod)
GameTerrain.modify_zone(position, GameTerrain.modify_zone_falloff(position,
parameter.distance_prod, parameter.distance_prod,
parameter.distance_prod_falloff,
GameTerrain.Stats.FERTILITY, GameTerrain.Stats.FERTILITY,
-parameter.dead_fertility_prod) -parameter.dead_fertility_prod)
queue_free() queue_free()
@@ -148,7 +160,7 @@ func _on_reproduction_timeout() -> void:
var max_dist := parameter.distance_prod + parameter.distance_prod * OFFSET_REPRODUCTION_PERCT_DIST var max_dist := parameter.distance_prod + parameter.distance_prod * OFFSET_REPRODUCTION_PERCT_DIST
var plant_pos = position + (Vector2.RIGHT * randf_range(min_dist, max_dist)).rotated(randf_range(0, PI)) var plant_pos = position + (Vector2.RIGHT * randf_range(min_dist, max_dist)).rotated(randf_range(0, PI))
if not GameTerrain.is_on_map(plant_pos): if not GameTerrain.is_on_map_real(plant_pos):
return return
var space := get_world_2d().direct_space_state var space := get_world_2d().direct_space_state

View File

@@ -24,3 +24,4 @@ extends Resource
@export var dead_fertility_prod := 1 @export var dead_fertility_prod := 1
@export var distance_prod := 50 @export var distance_prod := 50
@export var distance_prod_falloff := 10

View File

@@ -48,7 +48,7 @@ func take_next_seed() -> PlantType:
func _unhandled_input(_event: InputEvent) -> void: func _unhandled_input(_event: InputEvent) -> void:
if Input.is_action_just_pressed("plant") : if Input.is_action_just_pressed("plant") :
var mouse_pos = camera.get_global_mouse_position() var mouse_pos = camera.get_global_mouse_position()
var click_on_map = GameTerrain.is_on_map(mouse_pos) var click_on_map = GameTerrain.is_on_map_real(mouse_pos)
if can_plant and click_on_map and robot.state == robot.MoveState.IDLE: if can_plant and click_on_map and robot.state == robot.MoveState.IDLE:
var next_plant := plants[seed_queue.back()] var next_plant := plants[seed_queue.back()]

View File

@@ -13,6 +13,13 @@ signal Planted
@onready var wanderer: Wanderer = $Wanderer @onready var wanderer: Wanderer = $Wanderer
@onready var planting: Timer = $Planting @onready var planting: Timer = $Planting
@onready var move_sounds = [
$MoveSound,
$MoveSound2,
$MoveSound3,
$MoveSound4,
$MoveSound5,
]
var target_pos := Vector2() var target_pos := Vector2()
@@ -42,7 +49,7 @@ func _process(delta: float) -> void:
$AnimatedSprite2D.flip_h = true $AnimatedSprite2D.flip_h = true
func go_to(new_target_pos: Vector2): func go_to(new_target_pos: Vector2):
$MoveSound.play() move_sounds[randi()%len(move_sounds)].play()
state = MoveState.MOVING state = MoveState.MOVING
target_pos = new_target_pos target_pos = new_target_pos

View File

@@ -27,8 +27,11 @@ func map_to_pixel(
int(pos.y / MAP_RATIO) int(pos.y / MAP_RATIO)
) )
func is_on_map(pos: Vector2) -> bool: func is_on_map_real(pos: Vector2) -> bool:
return pos.x >= 0 and pos.x < TERRAIN_SIZE.x * MAP_RATIO and pos.y >= 0 and pos.y < TERRAIN_SIZE.y * MAP_RATIO return pos.x >= 0 and pos.x < TERRAIN_SIZE.x * MAP_RATIO and pos.y >= 0 and pos.y < TERRAIN_SIZE.y * MAP_RATIO
func is_on_map_image(pos: Vector2) -> bool:
return pos.x >= 0 and pos.x < TERRAIN_SIZE.x and pos.y >= 0 and pos.y < TERRAIN_SIZE.y
func color_value_to_level( func color_value_to_level(
color_value : float color_value : float
@@ -84,7 +87,7 @@ func modify_pixel(
stat: Stats, stat: Stats,
modification: int, modification: int,
): ):
if not is_on_map(pixel_pos): if not is_on_map_image(pixel_pos):
return return
var actual_levels = color_to_levels(image.get_pixelv(pixel_pos)) var actual_levels = color_to_levels(image.get_pixelv(pixel_pos))
var modification_levels = modification_to_levels(stat, modification) var modification_levels = modification_to_levels(stat, modification)
@@ -95,7 +98,7 @@ func set_pixel(
pixel_pos: Vector2i, pixel_pos: Vector2i,
level: Vector3i, level: Vector3i,
): ):
if not is_on_map(pixel_pos): if not is_on_map_image(pixel_pos):
return return
image.set_pixelv(pixel_pos, levels_to_color(level)) image.set_pixelv(pixel_pos, levels_to_color(level))
@@ -109,7 +112,7 @@ func modify_zone(
var pixel_radius = int(radius / MAP_RATIO) var pixel_radius = int(radius / MAP_RATIO)
for x in range(pixel_center.x - pixel_radius, pixel_center.x + pixel_radius + 1) : for x in range(pixel_center.x - pixel_radius, pixel_center.x + pixel_radius + 1) :
for y in range(pixel_center.y - pixel_radius, pixel_center.y + pixel_radius + 1): for y in range(pixel_center.y - pixel_radius, pixel_center.y + pixel_radius + 1):
if not is_on_map(Vector2i(x, y)): if not is_on_map_image(Vector2i(x, y)):
continue continue
if pow(x - pixel_center.x,2) + pow(y - pixel_center.y,2) <= pow(pixel_radius,2): if pow(x - pixel_center.x,2) + pow(y - pixel_center.y,2) <= pow(pixel_radius,2):
modify_pixel( modify_pixel(
@@ -119,6 +122,29 @@ func modify_zone(
) )
update_texture() update_texture()
func modify_zone_falloff(
center: Vector2,
radius: float,
falloff_extraradius: float,
stat : Stats,
modification: int
):
var pixel_center := map_to_pixel(center)
var pixel_radius := int(radius / MAP_RATIO)
var pixel_falloff_radius := int(falloff_extraradius / MAP_RATIO)
for x in range(pixel_center.x - pixel_radius - pixel_falloff_radius, pixel_center.x + pixel_radius + pixel_falloff_radius + 1) :
for y in range(pixel_center.y - pixel_radius - pixel_falloff_radius, pixel_center.y + pixel_radius + pixel_falloff_radius + 1):
if not is_on_map_image(Vector2i(x, y)):
continue
var pos := Vector2i(x, y)
var dist_to_center := pos.distance_to(pixel_center)
if dist_to_center <= pixel_radius:
modify_pixel(pos, stat, modification)
elif modification > 1 and dist_to_center <= pixel_radius + falloff_extraradius:
var new_modif = lerp(modification, 1, (dist_to_center - pixel_radius) / pixel_falloff_radius)
modify_pixel(pos, stat, new_modif)
update_texture()
func modify_rect( func modify_rect(
pos: Vector2, pos: Vector2,
size: Vector2, size: Vector2,
@@ -142,14 +168,19 @@ func get_color(
var pixel_pos = map_to_pixel(pos) var pixel_pos = map_to_pixel(pos)
return image.get_pixelv(pixel_pos) return image.get_pixelv(pixel_pos)
func get_levels(
pos: Vector2,
) -> Vector3i:
if not is_on_map_real(pos):
return Vector3i()
var pixel_pos = map_to_pixel(pos)
return color_to_levels(image.get_pixelv(pixel_pos))
func get_stat( func get_stat(
pos: Vector2, pos: Vector2,
stat : Stats stat : Stats
) -> int: ) -> int:
if not is_on_map(pos): var levels = get_levels(pos)
return 0
var pixel_pos = map_to_pixel(pos)
var levels = color_to_levels(image.get_pixelv(pixel_pos))
match stat: match stat:
Stats.WATER: Stats.WATER:
return levels.x return levels.x

View File

@@ -2,7 +2,7 @@ extends Control
var texts = [ var texts = [
"Hi there !", "Hi there !",
"Welcome to GJ 238 b, it was a nice and hospitable exoplanet, but the humans settled in and ruined this place.", "Welcome to MJ 166 b, it was a nice and hospitable exoplanet, but the humans settled in and ruined this place.",
"Now nothing grows, and the animals won't show up !", "Now nothing grows, and the animals won't show up !",
"You got to help me with this, I prepared a lot of seeds, you just have to click and I'll plant.", "You got to help me with this, I prepared a lot of seeds, you just have to click and I'll plant.",
"The problem is that the place is quite inhospitable, each plant needs a special amount of water, a certain quality of ground (the fertility), and more or less space (population).", "The problem is that the place is quite inhospitable, each plant needs a special amount of water, a certain quality of ground (the fertility), and more or less space (population).",
@@ -20,6 +20,7 @@ var cursor = 0
func _ready(): func _ready():
next_text() next_text()
show()
$RobotSpeak.playing = true $RobotSpeak.playing = true
func _input(event): func _input(event):
@@ -28,6 +29,7 @@ func _input(event):
func win(): func win():
show() show()
$MarginContainer/Controls.hide()
$RobotSpeak.playing = true $RobotSpeak.playing = true
$MarginContainer/Text.text = win_text $MarginContainer/Text.text = win_text