diff --git a/assets/plants/plantes mortes/arbre_mort.png b/assets/plants/plantes mortes/arbre_mort.png new file mode 100644 index 0000000..c945b23 Binary files /dev/null and b/assets/plants/plantes mortes/arbre_mort.png differ diff --git a/assets/plants/plantes mortes/arbre_mort.png.import b/assets/plants/plantes mortes/arbre_mort.png.import new file mode 100644 index 0000000..096ca09 --- /dev/null +++ b/assets/plants/plantes mortes/arbre_mort.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://di74g50h3oruf" +path="res://.godot/imported/arbre_mort.png-1b1c3e527bde016fe4d494baab18c4c6.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/plants/plantes mortes/arbre_mort.png" +dest_files=["res://.godot/imported/arbre_mort.png-1b1c3e527bde016fe4d494baab18c4c6.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/plants/plantes mortes/bulle_plantemorte.png b/assets/plants/plantes mortes/bulle_plantemorte.png new file mode 100644 index 0000000..2987d8b Binary files /dev/null and b/assets/plants/plantes mortes/bulle_plantemorte.png differ diff --git a/assets/plants/plantes mortes/bulle_plantemorte.png.import b/assets/plants/plantes mortes/bulle_plantemorte.png.import new file mode 100644 index 0000000..c0e255b --- /dev/null +++ b/assets/plants/plantes mortes/bulle_plantemorte.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://gibts5eyq3cn" +path="res://.godot/imported/bulle_plantemorte.png-a68aca1a2fa76cf889e9ab020d213fa6.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/plants/plantes mortes/bulle_plantemorte.png" +dest_files=["res://.godot/imported/bulle_plantemorte.png-a68aca1a2fa76cf889e9ab020d213fa6.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/plants/plantes mortes/plante_morte1.png b/assets/plants/plantes mortes/plante_morte1.png new file mode 100644 index 0000000..eb0b224 Binary files /dev/null and b/assets/plants/plantes mortes/plante_morte1.png differ diff --git a/assets/plants/plantes mortes/plante_morte1.png.import b/assets/plants/plantes mortes/plante_morte1.png.import new file mode 100644 index 0000000..537624d --- /dev/null +++ b/assets/plants/plantes mortes/plante_morte1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://ceebnlqxcbmlw" +path="res://.godot/imported/plante_morte1.png-8d4c81b68e8402a24aec99638667bb2e.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/plants/plantes mortes/plante_morte1.png" +dest_files=["res://.godot/imported/plante_morte1.png-8d4c81b68e8402a24aec99638667bb2e.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/assets/plants/plantes mortes/plante_morte2.png b/assets/plants/plantes mortes/plante_morte2.png new file mode 100644 index 0000000..1ce5296 Binary files /dev/null and b/assets/plants/plantes mortes/plante_morte2.png differ diff --git a/assets/plants/plantes mortes/plante_morte2.png.import b/assets/plants/plantes mortes/plante_morte2.png.import new file mode 100644 index 0000000..36855a4 --- /dev/null +++ b/assets/plants/plantes mortes/plante_morte2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://cuujr7p18dv3g" +path="res://.godot/imported/plante_morte2.png-e38660c4478b91c128efe36f4dc58ba2.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://assets/plants/plantes mortes/plante_morte2.png" +dest_files=["res://.godot/imported/plante_morte2.png-e38660c4478b91c128efe36f4dc58ba2.ctex"] + +[params] + +compress/mode=0 +compress/high_quality=false +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/normal_map=0 +compress/channel_pack=0 +mipmaps/generate=false +mipmaps/limit=-1 +roughness/mode=0 +roughness/src_normal="" +process/fix_alpha_border=true +process/premult_alpha=false +process/normal_map_invert_y=false +process/hdr_as_srgb=false +process/hdr_clamp_exposure=false +process/size_limit=0 +detect_3d/compress_to=1 diff --git a/objects/Planter.tscn b/objects/Planter.tscn index f20cdcc..c400624 100644 --- a/objects/Planter.tscn +++ b/objects/Planter.tscn @@ -1,16 +1,24 @@ -[gd_scene load_steps=7 format=3 uid="uid://qpdlnll5pihe"] +[gd_scene load_steps=15 format=3 uid="uid://qpdlnll5pihe"] [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="Resource" uid="uid://bgi2lo7kb3d2v" path="res://objects/plant_types/chardon.tres" id="3_lgbrc"] -[ext_resource type="Resource" uid="uid://dnahox31xqy6l" path="res://objects/plant_types/peuplier.tres" id="4_tmfl1"] -[ext_resource type="Resource" uid="uid://b6ufxuqdcgwmx" path="res://objects/plant_types/chene.tres" id="5_j34av"] +[ext_resource type="Resource" uid="uid://b4bdxpunvgc2j" path="res://objects/plant_types/Ekoth.tres" id="3_p5nyf"] +[ext_resource type="Resource" uid="uid://brll3pp71mmf5" path="res://objects/plant_types/Elandorr.tres" id="4_3dxep"] +[ext_resource type="Resource" uid="uid://di5eh5yvhanlt" path="res://objects/plant_types/Konnidat.tres" id="5_4of7l"] [ext_resource type="PackedScene" uid="uid://bp3c63qgkmi6o" path="res://objects/Robot.tscn" id="6_of7ri"] +[ext_resource type="Resource" uid="uid://bbi00n5snleur" path="res://objects/plant_types/Mirut.tres" id="6_xiom8"] +[ext_resource type="Resource" uid="uid://cg2ou1520k162" path="res://objects/plant_types/Naertho.tres" id="7_7i4v0"] +[ext_resource type="Resource" uid="uid://3f0c3ant0i74" path="res://objects/plant_types/Nakag.tres" id="8_i0wa5"] +[ext_resource type="Resource" uid="uid://brcimvxigi5g7" path="res://objects/plant_types/Navarre.tres" id="9_y8ss7"] +[ext_resource type="Resource" uid="uid://dr17d2cg8cmar" path="res://objects/plant_types/Oggamon.tres" id="10_sdupl"] +[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://cev7wbg0cfel3" path="res://objects/plant_types/Wyrran.tres" id="13_bk383"] [node name="Planter" type="Node2D"] y_sort_enabled = true script = ExtResource("1_l7lry") -plants = Array[ExtResource("2_7h3ga")]([ExtResource("3_lgbrc"), ExtResource("4_tmfl1"), ExtResource("5_j34av")]) +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")]) [node name="Timer" type="Timer" parent="."] wait_time = 0.2 diff --git a/objects/plant_types/Ekoth.tres b/objects/plant_types/Ekoth.tres new file mode 100644 index 0000000..78cbbd4 --- /dev/null +++ b/objects/plant_types/Ekoth.tres @@ -0,0 +1,57 @@ +[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://b4bdxpunvgc2j"] + +[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://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://d0xlqgttxwkgh" path="res://assets/plants/evolution2.png" id="5_i5m6k"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_u2flf"] +atlas = ExtResource("2_lk0j2") +region = Rect2(270, 540, 270, 270) + +[sub_resource type="SpriteFrames" id="SpriteFrames_570ha"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("3_2wyd1") +}], +"loop": true, +"name": &"DEAD", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("4_rihq1") +}], +"loop": true, +"name": &"GROWN", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("5_i5m6k") +}], +"loop": true, +"name": &"SAPLING", +"speed": 5.0 +}] + +[resource] +script = ExtResource("1_duqty") +type = "Ekoth" +seed_sprite = SubResource("AtlasTexture_u2flf") +sprite_frames = SubResource("SpriteFrames_570ha") +growing_time = 20.0 +offspring_per_lifetime = 1 +dying_time = 120.0 +dead_time = 60.0 +water_need = [-3, 10] +fertility_need = [-3, 10] +presence_need = [2, 19] +water_prod = 3 +fertility_prod = 0 +presence_prod = 2 +dead_water_prod = 2 +dead_fertility_prod = 0 +distance_prod = 200 diff --git a/objects/plant_types/Elandorr.tres b/objects/plant_types/Elandorr.tres new file mode 100644 index 0000000..f6923a9 --- /dev/null +++ b/objects/plant_types/Elandorr.tres @@ -0,0 +1,57 @@ +[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://brll3pp71mmf5"] + +[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_74myt"] +[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_4857t"] +[ext_resource type="Texture2D" uid="uid://ceebnlqxcbmlw" path="res://assets/plants/plantes mortes/plante_morte1.png" id="3_unjxw"] +[ext_resource type="Texture2D" uid="uid://jmyn1g18nyql" path="res://assets/plants/evolution1.2.png" id="4_jg1aw"] +[ext_resource type="Texture2D" uid="uid://hkcjtfch0kub" path="res://assets/plants/evolution1.png" id="5_e7r3q"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_852mh"] +atlas = ExtResource("2_4857t") +region = Rect2(1080, 0, 270, 270) + +[sub_resource type="SpriteFrames" id="SpriteFrames_av8xm"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("3_unjxw") +}], +"loop": true, +"name": &"DEAD", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("4_jg1aw") +}], +"loop": true, +"name": &"GROWN", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("5_e7r3q") +}], +"loop": true, +"name": &"SAPLING", +"speed": 5.0 +}] + +[resource] +script = ExtResource("1_74myt") +type = "Elandorr" +seed_sprite = SubResource("AtlasTexture_852mh") +sprite_frames = SubResource("SpriteFrames_av8xm") +growing_time = 10.0 +offspring_per_lifetime = 3 +dying_time = 60.0 +dead_time = 30.0 +water_need = [-8, 0] +fertility_need = [-10, 5] +presence_need = [0, 10] +water_prod = 1 +fertility_prod = 0 +presence_prod = 1 +dead_water_prod = 0 +dead_fertility_prod = 1 +distance_prod = 150 diff --git a/objects/plant_types/Konnidat.tres b/objects/plant_types/Konnidat.tres new file mode 100644 index 0000000..7637959 --- /dev/null +++ b/objects/plant_types/Konnidat.tres @@ -0,0 +1,57 @@ +[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://di5eh5yvhanlt"] + +[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://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://d0xlqgttxwkgh" path="res://assets/plants/evolution2.png" id="5_vsmg7"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_6mli1"] +atlas = ExtResource("2_5ijhj") +region = Rect2(1620, 270, 270, 270) + +[sub_resource type="SpriteFrames" id="SpriteFrames_g2ui0"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("3_3ueid") +}], +"loop": true, +"name": &"DEAD", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("4_uv55b") +}], +"loop": true, +"name": &"GROWN", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("5_vsmg7") +}], +"loop": true, +"name": &"SAPLING", +"speed": 5.0 +}] + +[resource] +script = ExtResource("1_1xwqx") +type = "Konnidat" +seed_sprite = SubResource("AtlasTexture_6mli1") +sprite_frames = SubResource("SpriteFrames_g2ui0") +growing_time = 20.0 +offspring_per_lifetime = 1 +dying_time = 120.0 +dead_time = 60.0 +water_need = [-3, 10] +fertility_need = [-3, 10] +presence_need = [2, 19] +water_prod = 2 +fertility_prod = 2 +presence_prod = 2 +dead_water_prod = 1 +dead_fertility_prod = 1 +distance_prod = 200 diff --git a/objects/plant_types/Mirut.tres b/objects/plant_types/Mirut.tres new file mode 100644 index 0000000..94c3874 --- /dev/null +++ b/objects/plant_types/Mirut.tres @@ -0,0 +1,57 @@ +[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://bbi00n5snleur"] + +[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://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://bhofpsc2gk2s8" path="res://assets/plants/evolution3.png" id="5_6yscv"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_2qduo"] +atlas = ExtResource("2_liffp") +region = Rect2(1350, 0, 270, 270) + +[sub_resource type="SpriteFrames" id="SpriteFrames_qnxif"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("3_4qc5e") +}], +"loop": true, +"name": &"DEAD", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("4_6je8p") +}], +"loop": true, +"name": &"GROWN", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("5_6yscv") +}], +"loop": true, +"name": &"SAPLING", +"speed": 5.0 +}] + +[resource] +script = ExtResource("1_32rwi") +type = "Mirut" +seed_sprite = SubResource("AtlasTexture_2qduo") +sprite_frames = SubResource("SpriteFrames_qnxif") +growing_time = 10.0 +offspring_per_lifetime = 3 +dying_time = 60.0 +dead_time = 30.0 +water_need = [-7, 7] +fertility_need = [-7, 3] +presence_need = [1, 15] +water_prod = 0 +fertility_prod = 2 +presence_prod = 2 +dead_water_prod = 0 +dead_fertility_prod = 1 +distance_prod = 300 diff --git a/objects/plant_types/Naertho.tres b/objects/plant_types/Naertho.tres new file mode 100644 index 0000000..f098d3d --- /dev/null +++ b/objects/plant_types/Naertho.tres @@ -0,0 +1,57 @@ +[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://cg2ou1520k162"] + +[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://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://hkcjtfch0kub" path="res://assets/plants/evolution1.png" id="5_c6tg4"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_b4v1x"] +atlas = ExtResource("2_nese1") +region = Rect2(540, 270, 270, 270) + +[sub_resource type="SpriteFrames" id="SpriteFrames_rva4e"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("3_io6uv") +}], +"loop": true, +"name": &"DEAD", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("4_h2yn0") +}], +"loop": true, +"name": &"GROWN", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("5_c6tg4") +}], +"loop": true, +"name": &"SAPLING", +"speed": 5.0 +}] + +[resource] +script = ExtResource("1_cmyhw") +type = "Naertho" +seed_sprite = SubResource("AtlasTexture_b4v1x") +sprite_frames = SubResource("SpriteFrames_rva4e") +growing_time = 10.0 +offspring_per_lifetime = 3 +dying_time = 60.0 +dead_time = 30.0 +water_need = [-7, 5] +fertility_need = [-5, 5] +presence_need = [1, 15] +water_prod = 2 +fertility_prod = 0 +presence_prod = 2 +dead_water_prod = 1 +dead_fertility_prod = 1 +distance_prod = 300 diff --git a/objects/plant_types/Nakag.tres b/objects/plant_types/Nakag.tres new file mode 100644 index 0000000..890b567 --- /dev/null +++ b/objects/plant_types/Nakag.tres @@ -0,0 +1,57 @@ +[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://3f0c3ant0i74"] + +[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://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://bhofpsc2gk2s8" path="res://assets/plants/evolution3.png" id="5_gjb21"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_6rb5i"] +atlas = ExtResource("2_7j0g4") +region = Rect2(270, 270, 270, 270) + +[sub_resource type="SpriteFrames" id="SpriteFrames_jxwln"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("3_qbnxd") +}], +"loop": true, +"name": &"DEAD", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("4_1gp5r") +}], +"loop": true, +"name": &"GROWN", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("5_gjb21") +}], +"loop": true, +"name": &"SAPLING", +"speed": 5.0 +}] + +[resource] +script = ExtResource("1_incgu") +type = "Nakag" +seed_sprite = SubResource("AtlasTexture_6rb5i") +sprite_frames = SubResource("SpriteFrames_jxwln") +growing_time = 10.0 +offspring_per_lifetime = 3 +dying_time = 60.0 +dead_time = 30.0 +water_need = [-10, 5] +fertility_need = [-8, 0] +presence_need = [0, 10] +water_prod = 1 +fertility_prod = 0 +presence_prod = 1 +dead_water_prod = 0 +dead_fertility_prod = 1 +distance_prod = 150 diff --git a/objects/plant_types/Navarre.tres b/objects/plant_types/Navarre.tres new file mode 100644 index 0000000..df8c4be --- /dev/null +++ b/objects/plant_types/Navarre.tres @@ -0,0 +1,57 @@ +[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://brcimvxigi5g7"] + +[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://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://hkcjtfch0kub" path="res://assets/plants/evolution1.png" id="5_3e24e"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_4k2ke"] +atlas = ExtResource("2_lyimn") +region = Rect2(540, 0, 270, 270) + +[sub_resource type="SpriteFrames" id="SpriteFrames_fj7da"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("3_ircru") +}], +"loop": true, +"name": &"DEAD", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("4_8xdmf") +}], +"loop": true, +"name": &"GROWN", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("5_3e24e") +}], +"loop": true, +"name": &"SAPLING", +"speed": 5.0 +}] + +[resource] +script = ExtResource("1_4c8pg") +type = "Navarre" +seed_sprite = SubResource("AtlasTexture_4k2ke") +sprite_frames = SubResource("SpriteFrames_fj7da") +growing_time = 10.0 +offspring_per_lifetime = 3 +dying_time = 60.0 +dead_time = 30.0 +water_need = [-3, 10] +fertility_need = [-3, 10] +presence_need = [2, 19] +water_prod = 0 +fertility_prod = 3 +presence_prod = 2 +dead_water_prod = 0 +dead_fertility_prod = 2 +distance_prod = 200 diff --git a/objects/plant_types/Oggamon.tres b/objects/plant_types/Oggamon.tres new file mode 100644 index 0000000..742c183 --- /dev/null +++ b/objects/plant_types/Oggamon.tres @@ -0,0 +1,57 @@ +[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://dr17d2cg8cmar"] + +[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://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://d0xlqgttxwkgh" path="res://assets/plants/evolution2.png" id="5_3xk5n"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_7ctak"] +atlas = ExtResource("2_e84rt") +region = Rect2(1080, 270, 270, 270) + +[sub_resource type="SpriteFrames" id="SpriteFrames_hd824"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("3_p1ccf") +}], +"loop": true, +"name": &"DEAD", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("4_bd3io") +}], +"loop": true, +"name": &"GROWN", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("5_3xk5n") +}], +"loop": true, +"name": &"SAPLING", +"speed": 5.0 +}] + +[resource] +script = ExtResource("1_mr0h0") +type = "Oggamon" +seed_sprite = SubResource("AtlasTexture_7ctak") +sprite_frames = SubResource("SpriteFrames_hd824") +growing_time = 20.0 +offspring_per_lifetime = 1 +dying_time = 120.0 +dead_time = 60.0 +water_need = [-5, 5] +fertility_need = [-7, 7] +presence_need = [1, 15] +water_prod = 2 +fertility_prod = 0 +presence_prod = 2 +dead_water_prod = 1 +dead_fertility_prod = 1 +distance_prod = 300 diff --git a/objects/plant_types/Oogut.tres b/objects/plant_types/Oogut.tres new file mode 100644 index 0000000..ba88d0a --- /dev/null +++ b/objects/plant_types/Oogut.tres @@ -0,0 +1,57 @@ +[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://d25s1eywvsyei"] + +[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://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://bhofpsc2gk2s8" path="res://assets/plants/evolution3.png" id="5_6hg7m"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_1kvg0"] +atlas = ExtResource("2_o8yby") +region = Rect2(1620, 0, 270, 270) + +[sub_resource type="SpriteFrames" id="SpriteFrames_xu0md"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("3_feqkx") +}], +"loop": true, +"name": &"DEAD", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("4_uxebp") +}], +"loop": true, +"name": &"GROWN", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("5_6hg7m") +}], +"loop": true, +"name": &"SAPLING", +"speed": 5.0 +}] + +[resource] +script = ExtResource("1_4cghd") +type = "Oogut" +seed_sprite = SubResource("AtlasTexture_1kvg0") +sprite_frames = SubResource("SpriteFrames_xu0md") +growing_time = 10.0 +offspring_per_lifetime = 3 +dying_time = 60.0 +dead_time = 30.0 +water_need = [-10, 5] +fertility_need = [-8, 0] +presence_need = [0, 10] +water_prod = 0 +fertility_prod = 1 +presence_prod = 1 +dead_water_prod = 0 +dead_fertility_prod = 1 +distance_prod = 150 diff --git a/objects/plant_types/Ungrake.tres b/objects/plant_types/Ungrake.tres new file mode 100644 index 0000000..7503d39 --- /dev/null +++ b/objects/plant_types/Ungrake.tres @@ -0,0 +1,57 @@ +[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://c64hhkqk4tnas"] + +[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://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://d0xlqgttxwkgh" path="res://assets/plants/evolution2.png" id="5_0cele"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_efpgb"] +atlas = ExtResource("2_3tp7g") +region = Rect2(0, 0, 270, 270) + +[sub_resource type="SpriteFrames" id="SpriteFrames_lsdll"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("3_6kltw") +}], +"loop": true, +"name": &"DEAD", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("4_cxwjh") +}], +"loop": true, +"name": &"GROWN", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("5_0cele") +}], +"loop": true, +"name": &"SAPLING", +"speed": 5.0 +}] + +[resource] +script = ExtResource("1_d77oo") +type = "Ungrake" +seed_sprite = SubResource("AtlasTexture_efpgb") +sprite_frames = SubResource("SpriteFrames_lsdll") +growing_time = 20.0 +offspring_per_lifetime = 1 +dying_time = 120.0 +dead_time = 60.0 +water_need = [-8, 0] +fertility_need = [-10, 5] +presence_need = [0, 10] +water_prod = 0 +fertility_prod = 1 +presence_prod = 1 +dead_water_prod = 0 +dead_fertility_prod = 1 +distance_prod = 150 diff --git a/objects/plant_types/Wyrran.tres b/objects/plant_types/Wyrran.tres new file mode 100644 index 0000000..36d53bd --- /dev/null +++ b/objects/plant_types/Wyrran.tres @@ -0,0 +1,57 @@ +[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://cev7wbg0cfel3"] + +[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://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://hkcjtfch0kub" path="res://assets/plants/evolution1.png" id="5_xqm7x"] + +[sub_resource type="AtlasTexture" id="AtlasTexture_ssp8o"] +atlas = ExtResource("2_2wi5a") +region = Rect2(1350, 270, 270, 270) + +[sub_resource type="SpriteFrames" id="SpriteFrames_bvpo8"] +animations = [{ +"frames": [{ +"duration": 1.0, +"texture": ExtResource("3_0hwfl") +}], +"loop": true, +"name": &"DEAD", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("4_ee77a") +}], +"loop": true, +"name": &"GROWN", +"speed": 5.0 +}, { +"frames": [{ +"duration": 1.0, +"texture": ExtResource("5_xqm7x") +}], +"loop": true, +"name": &"SAPLING", +"speed": 5.0 +}] + +[resource] +script = ExtResource("1_xvhlf") +type = "Wyrran" +seed_sprite = SubResource("AtlasTexture_ssp8o") +sprite_frames = SubResource("SpriteFrames_bvpo8") +growing_time = 10.0 +offspring_per_lifetime = 3 +dying_time = 60.0 +dead_time = 30.0 +water_need = [-7, 7] +fertility_need = [-5, 5] +presence_need = [1, 15] +water_prod = 0 +fertility_prod = 2 +presence_prod = 2 +dead_water_prod = 0 +dead_fertility_prod = 2 +distance_prod = 300 diff --git a/objects/plant_types/chardon.tres b/objects/plant_types/chardon.tres deleted file mode 100644 index 030c27e..0000000 --- a/objects/plant_types/chardon.tres +++ /dev/null @@ -1,57 +0,0 @@ -[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://bgi2lo7kb3d2v"] - -[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_i8xe4"] -[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_4rpny"] -[ext_resource type="Texture2D" uid="uid://hkcjtfch0kub" path="res://assets/plants/evolution1.png" id="3_5jw8q"] -[ext_resource type="Texture2D" uid="uid://24ift4wt1h2h" path="res://assets/plants/evolution2.1.png" id="4_1u64t"] -[ext_resource type="Texture2D" uid="uid://d0xlqgttxwkgh" path="res://assets/plants/evolution2.png" id="5_2ybgr"] - -[sub_resource type="AtlasTexture" id="AtlasTexture_1lwna"] -atlas = ExtResource("2_4rpny") -region = Rect2(0, 0, 270, 270) - -[sub_resource type="SpriteFrames" id="SpriteFrames_fxtnk"] -animations = [{ -"frames": [{ -"duration": 1.0, -"texture": ExtResource("3_5jw8q") -}], -"loop": true, -"name": &"DEAD", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("4_1u64t") -}], -"loop": true, -"name": &"GROWN", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("5_2ybgr") -}], -"loop": true, -"name": &"SAPLING", -"speed": 5.0 -}] - -[resource] -script = ExtResource("1_i8xe4") -type = "Chardon" -seed_sprite = SubResource("AtlasTexture_1lwna") -sprite_frames = SubResource("SpriteFrames_fxtnk") -growing_time = 1.0 -offspring_per_lifetime = 1 -dying_time = 30.0 -dead_time = 10.0 -water_need = [-5, 5] -fertility_need = [-5, 5] -presence_need = [0, 5] -water_prod = 2 -fertility_prod = 0 -presence_prod = 2 -dead_water_prod = 0 -dead_fertility_prod = 1 -distance_prod = 150 diff --git a/objects/plant_types/chene.tres b/objects/plant_types/chene.tres deleted file mode 100644 index cb20c78..0000000 --- a/objects/plant_types/chene.tres +++ /dev/null @@ -1,61 +0,0 @@ -[gd_resource type="Resource" script_class="PlantType" load_steps=9 format=3 uid="uid://b6ufxuqdcgwmx"] - -[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_meppe"] -[ext_resource type="Texture2D" uid="uid://r1bq2tgt1yxf" path="res://assets/gamejam_plantes_props1.png" id="2_jkmk8"] -[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_m81be"] -[ext_resource type="Texture2D" uid="uid://dwm660gppiset" path="res://assets/plants/abre2.png" id="4_1v11a"] -[ext_resource type="Texture2D" uid="uid://d02mdx460lfgm" path="res://assets/plants/evolution2.4.png" id="5_d75nd"] - -[sub_resource type="AtlasTexture" id="AtlasTexture_bqj8q"] -atlas = ExtResource("2_m81be") -region = Rect2(270, 0, 270, 270) - -[sub_resource type="AtlasTexture" id="AtlasTexture_vmgwa"] -atlas = ExtResource("2_jkmk8") -region = Rect2(2880, 1080, 320, 540) - -[sub_resource type="SpriteFrames" id="SpriteFrames_shufc"] -animations = [{ -"frames": [{ -"duration": 1.0, -"texture": SubResource("AtlasTexture_vmgwa") -}], -"loop": true, -"name": &"DEAD", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("4_1v11a") -}], -"loop": true, -"name": &"GROWN", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("5_d75nd") -}], -"loop": true, -"name": &"SAPLING", -"speed": 5.0 -}] - -[resource] -script = ExtResource("1_meppe") -type = "Chene" -seed_sprite = SubResource("AtlasTexture_bqj8q") -sprite_frames = SubResource("SpriteFrames_shufc") -growing_time = 20.0 -offspring_per_lifetime = 3 -dying_time = 100.0 -dead_time = 200.0 -water_need = [1, 5] -fertility_need = [1, 5] -presence_need = [3, 7] -water_prod = 3 -fertility_prod = 0 -presence_prod = 5 -dead_water_prod = 0 -dead_fertility_prod = 5 -distance_prod = 400 diff --git a/objects/plant_types/peuplier.tres b/objects/plant_types/peuplier.tres deleted file mode 100644 index 54313ac..0000000 --- a/objects/plant_types/peuplier.tres +++ /dev/null @@ -1,57 +0,0 @@ -[gd_resource type="Resource" script_class="PlantType" load_steps=8 format=3 uid="uid://dnahox31xqy6l"] - -[ext_resource type="Script" path="res://scripts/plant_type.gd" id="1_mhtmv"] -[ext_resource type="Texture2D" uid="uid://b3kjaw1hajc6s" path="res://assets/grille_seeds.png" id="2_od2qm"] -[ext_resource type="Texture2D" uid="uid://jmyn1g18nyql" path="res://assets/plants/evolution1.2.png" id="3_n58s0"] -[ext_resource type="Texture2D" uid="uid://br1olfut3p0tx" path="res://assets/plants/evolution1.1.png" id="4_ulvmw"] -[ext_resource type="Texture2D" uid="uid://hkcjtfch0kub" path="res://assets/plants/evolution1.png" id="5_6gtba"] - -[sub_resource type="AtlasTexture" id="AtlasTexture_dkacp"] -atlas = ExtResource("2_od2qm") -region = Rect2(540, 0, 270, 270) - -[sub_resource type="SpriteFrames" id="SpriteFrames_d15np"] -animations = [{ -"frames": [{ -"duration": 1.0, -"texture": ExtResource("3_n58s0") -}], -"loop": true, -"name": &"DEAD", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("4_ulvmw") -}], -"loop": true, -"name": &"GROWN", -"speed": 5.0 -}, { -"frames": [{ -"duration": 1.0, -"texture": ExtResource("5_6gtba") -}], -"loop": true, -"name": &"SAPLING", -"speed": 5.0 -}] - -[resource] -script = ExtResource("1_mhtmv") -type = "Buisson" -seed_sprite = SubResource("AtlasTexture_dkacp") -sprite_frames = SubResource("SpriteFrames_d15np") -growing_time = 2.0 -offspring_per_lifetime = 1 -dying_time = 45.0 -dead_time = 15.0 -water_need = [1, 5] -fertility_need = [-5, 5] -presence_need = [1, 10] -water_prod = 0 -fertility_prod = 2 -presence_prod = 3 -dead_water_prod = 0 -dead_fertility_prod = 1 -distance_prod = 250 diff --git a/project.godot b/project.godot index 7b94367..017ff7a 100644 --- a/project.godot +++ b/project.godot @@ -76,3 +76,8 @@ run={ "events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194325,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null) ] } +discard_seed={ +"deadzone": 0.5, +"events": [Object(InputEventMouseButton,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"button_mask":2,"position":Vector2(172, 20),"global_position":Vector2(181, 66),"factor":1.0,"button_index":2,"canceled":false,"pressed":true,"double_click":false,"script":null) +] +} diff --git a/scenes/Map.tscn b/scenes/Map.tscn index db42592..37b8b15 100644 --- a/scenes/Map.tscn +++ b/scenes/Map.tscn @@ -2,7 +2,7 @@ [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" 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://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"] diff --git a/scripts/plant.gd b/scripts/plant.gd index 15f178f..b4ed828 100644 --- a/scripts/plant.gd +++ b/scripts/plant.gd @@ -15,18 +15,20 @@ signal died 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 OFFSET_REPRODUCTION_PERCT_DIST := 0.5 +const OFFSET_REPRODUCTION_PERCT_DIST := 0.1 var parameter: PlantType var state := PlantState.SAPLING var sapling_time_left: float var can_grow := true +var n_offsprings_left: int func init(plant_parameter: PlantType): parameter = plant_parameter sapling_count_down.start(SAPLING_LIFETIME_MULT * parameter.growing_time) sprite_node.sprite_frames = parameter.sprite_frames need_checker.start(NEED_CHECK_PERIOD) + n_offsprings_left = parameter.offspring_per_lifetime func _on_need_checker_timeout() -> void: @@ -96,7 +98,7 @@ func grow(): GameTerrain.Stats.PRESENCE, parameter.presence_prod) - reproduction.start(parameter.dying_time / (parameter.offspring_per_lifetime + 1) + 0.1) + reproduction.start(parameter.dying_time / (n_offsprings_left + 1)) grown.emit() sprite_node.play("GROWN") @@ -160,3 +162,7 @@ func _on_reproduction_timeout() -> void: self.get_parent().add_child(offspring) offspring.init(parameter) offspring.plant(plant_pos) + n_offsprings_left -= 1 + reproduction.start(parameter.dying_time / (n_offsprings_left + 1)) + if n_offsprings_left == 0: + reproduction.stop() diff --git a/scripts/planter.gd b/scripts/planter.gd index ffab82c..dc1b3be 100644 --- a/scripts/planter.gd +++ b/scripts/planter.gd @@ -54,6 +54,8 @@ func _unhandled_input(_event: InputEvent) -> void: var next_plant := plants[seed_queue.back()] robot_seed.texture = next_plant.seed_sprite robot.go_to(mouse_pos) + if Input.is_action_just_pressed("discard_seed") : + take_next_seed() func _on_robot_planted() -> void: