ajout du camion #87

* changements des objectifs, donnent juste des graines, sprite moins gros et objectifs plus nombreux
* changement de la probabilité de mutation
* refactor du code terrain et planet
This commit is contained in:
2025-10-12 19:59:53 +02:00
parent ef392595de
commit d90d4c5df6
52 changed files with 627 additions and 346 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://4iukrxpg34y4"
path="res://.godot/imported/herbe.png-0b71f9ccc1e3943af9b0f3a135d3651b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://entities/objectives/assets/sprites/herbe.png"
dest_files=["res://.godot/imported/herbe.png-0b71f9ccc1e3943af9b0f3a135d3651b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bsetwgt5tqv7v"
path="res://.godot/imported/herbe3.png-a47f3310ca32019ca3d036e811d21212.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://entities/objectives/assets/sprites/herbe3.png"
dest_files=["res://.godot/imported/herbe3.png-a47f3310ca32019ca3d036e811d21212.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://k4v52q6eejv"
path="res://.godot/imported/herbe4.png-c674d45256bbf00e0fd646fd55e2e33b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://entities/objectives/assets/sprites/herbe4.png"
dest_files=["res://.godot/imported/herbe4.png-c674d45256bbf00e0fd646fd55e2e33b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ckb8w7hsfevvt"
path="res://.godot/imported/herbe8_glow.png-c4d058e6fea519767afa64e839e5f87f.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://entities/objectives/assets/sprites/herbe8_glow.png"
dest_files=["res://.godot/imported/herbe8_glow.png-c4d058e6fea519767afa64e839e5f87f.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

View File

@@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bxb13hfnhxpvv"
path="res://.godot/imported/plante_morte.png-308d7033b9ec4bc89434e061a168e35b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://entities/objectives/assets/sprites/plante_morte.png"
dest_files=["res://.godot/imported/plante_morte.png-308d7033b9ec4bc89434e061a168e35b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@@ -1,10 +1,10 @@
[gd_scene load_steps=11 format=3 uid="uid://djl2le58ckgdx"]
[gd_scene load_steps=10 format=3 uid="uid://djl2le58ckgdx"]
[ext_resource type="Script" uid="uid://j8fpi8rd8eyy" path="res://entities/objectives/scripts/objective.gd" id="1_3hqw5"]
[ext_resource type="Texture2D" uid="uid://dbednu7eygtrf" path="res://entities/objectives/assets/sprites/arbre_mort.png" id="2_3hqw5"]
[ext_resource type="Texture2D" uid="uid://c4pv2o7crchc0" path="res://entities/objectives/assets/sprites/little_plant.png" id="3_dulsb"]
[ext_resource type="FontFile" uid="uid://cpnsnrqhfkj3k" path="res://gui/ressources/fonts/spincycle_ot.otf" id="4_6uhem"]
[ext_resource type="Texture2D" uid="uid://bo3o2qf3i20ke" path="res://common/icons/scuba-diving-tank.svg" id="5_6uhem"]
[ext_resource type="Texture2D" uid="uid://4iukrxpg34y4" path="res://entities/objectives/assets/sprites/herbe.png" id="2_047qm"]
[ext_resource type="Texture2D" uid="uid://bxb13hfnhxpvv" path="res://entities/objectives/assets/sprites/plante_morte.png" id="3_bvagy"]
[ext_resource type="Texture2D" uid="uid://k4v52q6eejv" path="res://entities/objectives/assets/sprites/herbe4.png" id="4_lrlky"]
[ext_resource type="Texture2D" uid="uid://ckb8w7hsfevvt" path="res://entities/objectives/assets/sprites/herbe8_glow.png" id="5_6uhem"]
[sub_resource type="Animation" id="Animation_v08i5"]
length = 0.001
@@ -18,7 +18,7 @@ tracks/0/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Color(0.443137, 0.443137, 0.443137, 1)]
"values": [Color(0.627451, 0.85490197, 0.8980392, 1)]
}
tracks/1/type = "value"
tracks/1/imported = false
@@ -83,26 +83,26 @@ tracks/5/keys = {
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("LittlePlant3:scale")
tracks/6/path = NodePath("ArbreMort:scale")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector2(0.094358, 0.094358)]
"values": [Vector2(0.162791, 0.162791)]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("ArbreMort:scale")
tracks/7/path = NodePath("LittlePlant3:scale")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0),
"transitions": PackedFloat32Array(1),
"update": 0,
"values": [Vector2(0.162791, 0.162791)]
"values": [Vector2(0.094358, 0.094358)]
}
[sub_resource type="Animation" id="Animation_6uhem"]
@@ -117,7 +117,7 @@ tracks/0/keys = {
"times": PackedFloat32Array(0, 0.266667),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Color(0.443137, 0.443137, 0.443137, 1), Color(1, 1, 1, 1)]
"values": [Color(0.62835556, 0.85348916, 0.8974243, 1), Color(1, 1, 1, 1)]
}
tracks/1/type = "value"
tracks/1/imported = false
@@ -141,7 +141,7 @@ tracks/2/keys = {
"times": PackedFloat32Array(0.433333, 0.6),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Vector2(0, 0), Vector2(0.094358, 0.094358)]
"values": [Vector2(0, 0), Vector2(0.044, 0.044)]
}
tracks/3/type = "value"
tracks/3/imported = false
@@ -165,7 +165,7 @@ tracks/4/keys = {
"times": PackedFloat32Array(0.6, 0.8),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Vector2(0, 0), Vector2(0.094358, 0.094358)]
"values": [Vector2(0, 0), Vector2(0.044, 0.044)]
}
tracks/5/type = "value"
tracks/5/imported = false
@@ -182,27 +182,27 @@ tracks/5/keys = {
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("LittlePlant3:scale")
tracks/6/path = NodePath("ArbreMort:scale")
tracks/6/interp = 2
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0.4, 0.533333),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Vector2(0, 0), Vector2(0.094358, 0.094358)]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("ArbreMort:scale")
tracks/7/interp = 2
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0, 0.1, 0.266667, 0.4),
"transitions": PackedFloat32Array(1, 1, 1, 1),
"update": 0,
"values": [Vector2(0.162791, 0.162791), Vector2(0.183, 0.093), Vector2(0.123, 0.178), Vector2(0.162791, 0.162791)]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("LittlePlant3:scale")
tracks/7/interp = 2
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0.4, 0.533333),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Vector2(0, 0), Vector2(0.054, 0.054)]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_047qm"]
_data = {
@@ -211,12 +211,8 @@ _data = {
}
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_bvagy"]
radius = 24.0
height = 160.0
[sub_resource type="LabelSettings" id="LabelSettings_v08i5"]
font = ExtResource("4_6uhem")
font_size = 18
radius = 15.0
height = 68.0
[node name="Objective" type="Area2D"]
script = ExtResource("1_3hqw5")
@@ -229,53 +225,31 @@ libraries = {
}
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
position = Vector2(0, -20)
position = Vector2(-1, -16)
rotation = 1.5708
shape = SubResource("CapsuleShape2D_bvagy")
[node name="ArbreMort" type="Sprite2D" parent="."]
modulate = Color(0.443137, 0.443137, 0.443137, 1)
position = Vector2(5, 4)
scale = Vector2(0.162791, 0.162791)
texture = ExtResource("2_3hqw5")
centered = false
offset = Vector2(-627.055, -607.11)
[node name="LittlePlant" type="Sprite2D" parent="."]
visible = false
position = Vector2(-22, -46)
position = Vector2(-15, -25)
scale = Vector2(0.094358, 0.094358)
texture = ExtResource("3_dulsb")
texture = ExtResource("2_047qm")
[node name="ArbreMort" type="Sprite2D" parent="."]
modulate = Color(0.627451, 0.85490197, 0.8980392, 1)
position = Vector2(0, -17)
scale = Vector2(0.162791, 0.162791)
texture = ExtResource("3_bvagy")
offset = Vector2(0, -85.55)
[node name="LittlePlant2" type="Sprite2D" parent="."]
visible = false
position = Vector2(39, -25)
position = Vector2(21, -22)
scale = Vector2(0.094358, 0.094358)
texture = ExtResource("3_dulsb")
texture = ExtResource("4_lrlky")
[node name="LittlePlant3" type="Sprite2D" parent="."]
visible = false
position = Vector2(-49, -14)
position = Vector2(0, -15.000002)
scale = Vector2(0.094358, 0.094358)
texture = ExtResource("3_dulsb")
[node name="RewardInfo" type="HBoxContainer" parent="."]
unique_name_in_owner = true
offset_left = -67.0
offset_top = -34.0
offset_right = 51.0
offset_bottom = -15.0
theme_override_constants/separation = 2
alignment = 1
[node name="RewardText" type="Label" parent="RewardInfo"]
unique_name_in_owner = true
layout_mode = 2
text = "bla"
label_settings = SubResource("LabelSettings_v08i5")
[node name="RewardIcon" type="TextureRect" parent="RewardInfo"]
unique_name_in_owner = true
layout_mode = 2
texture = ExtResource("5_6uhem")
expand_mode = 2

View File

@@ -5,14 +5,7 @@ const RANDOM_MAX_OBJECTIVE_INTERVAL = 1.
const DECONTAMINATION_ICON = preload("res://common/icons/skull.svg")
var completed : bool = false
var planet : Planet
@export var reward : ObjectiveReward = null :
set(r):
reward = r
update_reward_info(r)
func _ready():
update_reward_info(reward)
@export var reward : ObjectiveReward = null
func pointer_text():
return "Contamination Objective"
@@ -20,7 +13,7 @@ func pointer_text():
func inspector_info() -> Inspector.Info:
var info : Inspector.Info = Inspector.Info.new(
pointer_text(),
"This dead log can hide a treasure of life."
"This dead branch can hide a treasure of life."
)
info.framed_infos.append(
@@ -40,9 +33,3 @@ func _end_pass_day():
%AnimationPlayer.play("activate")
%RewardInfo.visible = false
completed = true
func update_reward_info(r : ObjectiveReward):
if r:
%RewardText.text = r.get_text()
%RewardIcon.texture = r.get_icon()
%RewardInfo.visible = r != null

View File

@@ -7,7 +7,8 @@ func _init(_day_limit_increase : int):
day_limit_increase = _day_limit_increase
func reward(objective : Objective):
objective.planet.day_limit += day_limit_increase
if objective.planet:
objective.planet.day_limit += day_limit_increase
func get_icon() -> Texture:
return preload("res://common/icons/hourglass-empty.svg")

View File

@@ -18,7 +18,7 @@ func get_description() -> String:
return "Loot the following item: " + item.name + "."
func reward(objective : Objective):
objective.planet.drop_item(
objective.terrain.drop_item(
item,
objective.global_position,
REWARD_ITEM_RANDOM_DISPLACEMENT_FACTOR

View File

@@ -19,7 +19,7 @@ func get_description() -> String:
func reward(objective : Objective):
for i in range(seeds_number):
objective.planet.drop_item(
objective.terrain.drop_item(
Seed.new(GameInfo.game_data.unlocked_plant_types.pick_random()),
objective.global_position,
REWARD_SEED_RANDOM_DISPLACEMENT_FACTOR

View File

@@ -7,7 +7,7 @@ func _init(_recharge_amount : int = 1):
recharge_amount = _recharge_amount
func reward(objective : Objective):
objective.planet.player.recharge(recharge_amount)
objective.terrain.player.recharge(recharge_amount)
func get_icon() -> Texture:
return preload("res://common/icons/bolt.svg")

View File

@@ -7,7 +7,7 @@ func _init(_upgrade_amount : int = 1):
upgrade_amount = _upgrade_amount
func reward(objective : Objective):
objective.planet.player.upgrade_max_energy(upgrade_amount)
objective.terrain.player.upgrade_max_energy(upgrade_amount)
func get_icon() -> Texture:
return preload("res://common/icons/bolt.svg")

View File

@@ -7,7 +7,7 @@ func _init(_upgrade_amount : int = 1):
upgrade_amount = _upgrade_amount
func reward(objective : Objective):
objective.planet.player.upgrade_inventory_size(upgrade_amount)
objective.terrain.player.upgrade_inventory_size(upgrade_amount)
func get_icon() -> Texture:
return preload("res://common/icons/backpack.svg")