Dev Démo 1.2

* les plantes se placent désormais sur une grille
* ajouts de curseurs relatifs à l'item
* ajout de settings sur la sensibilité à la souris
* ajout d'un défi en fin de run
This commit is contained in:
2026-06-12 16:42:00 +02:00
parent 5aff9eadaa
commit 940b3c1553
40 changed files with 953 additions and 76 deletions

View File

@@ -64,6 +64,10 @@ func generate_next_run_point(last_modifiers : Array[String] = []) -> RunPoint:
challenge_modifiers.pick_random(),
benefic_modifiers.pick_random()
] as Array[RegionModifier]
elif story_step.is_run_point_dangerous(next_level):
region_parameter.modifiers = [
challenge_modifiers.pick_random()
] as Array[RegionModifier]
else:
region_parameter.modifiers = [
normal_modifiers.pick_random()

View File

@@ -58,8 +58,6 @@ const AVAILABLE_LANGUAGES_LABEL = [
@export var action_remapped : Array[String] = []
@export var input_remapped : Array[InputEvent] = []
@export var auto_pickup := true
@export var fov := 75. :
set(v):
fov = v
@@ -68,6 +66,10 @@ const AVAILABLE_LANGUAGES_LABEL = [
#region ------------------ Game ------------------
@export var auto_pickup := true
@export var mouse_sensivity := 0.2
const MAX_ZOOM = 2.
const MIN_ZOOM = 0.5

View File

@@ -37,7 +37,7 @@ func get_cave_occurence(_level : int) -> int:
return 3
func get_challenge_chance(_level : int) -> float:
return 0.3
return 0.15
func get_run_point_number(level : int) -> int:
if is_run_finished(level):
@@ -47,6 +47,9 @@ func get_run_point_number(level : int) -> int:
func get_charge_number(_level : int) -> int:
return 10
func is_run_point_dangerous(level : int) -> bool:
return level == get_region_sequence_length() - 2
func get_objective_for_region(level : int) -> int:
match level:
1: return 10

View File

@@ -1,11 +1,40 @@
extends Sprite2D
class_name Circle
@export var radius : int = 0
@export var color : Color = Color.WHITE
@export var opacity : float = 1.0
@export var fill : bool = true
@export var width : int = -1
@export var radius : int = 0 :
set(v):
radius = v
queue_redraw()
@export var color : Color = Color.WHITE :
set(v):
color = v
queue_redraw()
@export var opacity : float = 1.0 :
set(v):
opacity = v
queue_redraw()
@export var fill : bool = true :
set(v):
fill = v
queue_redraw()
@export var width : int = -1 :
set(v):
width = v
queue_redraw()
func _init(
_radius = 0,
_color = Color.WHITE,
_opacity = 1.0,
_fill = true,
_width = -1,
):
radius = _radius
color = _color
opacity = _opacity
fill = _fill
width = _width
func _draw():
draw_circle(

View File

@@ -186,6 +186,7 @@ texture = ExtResource("3_rbgiq")
[node name="LifeTimeSprite" type="Sprite2D" parent="." unique_id=799762981]
unique_name_in_owner = true
visible = false
scale = Vector2(0.26000002, 0.26000005)
texture = SubResource("ViewportTexture_rbgiq")

View File

@@ -5,26 +5,26 @@ var radius : int
var sprite : Circle
var collision_shape : CollisionShape2D
var show_influence : bool = false :
set(v):
show_influence = v
if sprite:
sprite.visible = v
set(v):
show_influence = v
if sprite:
sprite.visible = v
func _init(_radius = 100):
radius = _radius
radius = _radius
func _ready():
sprite = Circle.new()
# sprite.z_index = 100
sprite.radius = radius
sprite.fill = false
sprite.width = 1
sprite.opacity = 0.5
sprite.visible = show_influence
add_child(sprite)
sprite = Circle.new()
# sprite.z_index = 100
sprite.radius = radius
sprite.fill = false
sprite.width = 1
sprite.opacity = 0.5
sprite.visible = show_influence
add_child(sprite)
collision_shape = CollisionShape2D.new()
var circle_shape : CircleShape2D = CircleShape2D.new()
circle_shape.radius = radius
collision_shape.shape = circle_shape
add_child(collision_shape)
collision_shape = CollisionShape2D.new()
var circle_shape : CircleShape2D = CircleShape2D.new()
circle_shape.radius = radius
collision_shape.shape = circle_shape
add_child(collision_shape)

View File

@@ -56,8 +56,8 @@ func start_harvest_animation():
func set_display_lifetime_sprite(d := display_lifetime_sprite):
display_lifetime_sprite = d
if is_node_ready():
%LifeTimeSprite.visible = d
# if is_node_ready():
# %LifeTimeSprite.visible = d
func set_sprite_modulate(c := sprite_modulate):
sprite_modulate = c

View File

@@ -14,6 +14,7 @@ enum ItemType {TOOL_ITEM, CONSUMABLE_ITEM}
@export var type: ItemType : get = get_item_type
@export var description: String : get = get_description
var icon: Texture2D : get = get_icon
var pointer: Texture2D : get = get_pointer
@export var usage_zone_radius: int = 5 : get = get_usage_zone_radius
@export var energy_usage : int = 1 : get = get_energy_used
@@ -29,6 +30,9 @@ func get_description() -> String:
func get_icon() -> Texture2D:
return icon
func get_pointer() -> Texture2D:
return null
func get_energy_used() -> int:
return energy_usage
@@ -50,6 +54,9 @@ func get_usage_object_affected(_i : Area2D) -> bool:
func is_one_time_use():
return false
func snap_usage_to_grid():
return false
func can_use(_player : Player, _zone: Player.ActionZone) -> bool:
return false

View File

@@ -13,6 +13,9 @@ func get_description() -> String:
func get_icon() -> Texture2D:
return preload("res://common/icons/broadcast.svg")
func get_pointer() -> Texture2D:
return preload("res://gui/pointer/assets/cursors/pointer-signal.svg")
func get_energy_used() -> int:
return 0

View File

@@ -12,9 +12,15 @@ func get_description() -> String:
func get_icon() -> Texture2D:
return preload("res://common/icons/fork.svg")
func get_pointer() -> Texture2D:
return preload("res://gui/pointer/assets/cursors/pointer-fork.svg")
func get_item_type() -> ItemType:
return Item.ItemType.TOOL_ITEM
func snap_usage_to_grid():
return true
func get_energy_used() -> int:
return 1

View File

@@ -12,6 +12,9 @@ func get_description() -> String:
func get_icon() -> Texture2D:
return preload("res://common/icons/pick.svg")
func get_pointer() -> Texture2D:
return preload("res://gui/pointer/assets/cursors/pointer-dig.svg")
func get_energy_used() -> int:
return 1

View File

@@ -65,15 +65,21 @@ func get_icon() -> Texture2D:
stored_icon = PlantTextureBuilder.build_seed_texture(plant_name.hash())
return stored_icon
func get_pointer() -> Texture2D:
return preload("res://gui/pointer/assets/cursors/pointer-seed.svg")
func get_energy_used() -> int:
return 1
func get_usage_zone_radius() -> int:
return 50
return 10
func get_usage_object_affected(i : Area2D) -> bool:
return i is PlantSprite
func snap_usage_to_grid():
return true
func use_text() -> String:
return tr("PLANT_%s") % plant_name
@@ -88,13 +94,12 @@ func can_use(player : Player, zone : Player.ActionZone) -> bool:
var is_there_a_plant_here = false
for area in zone.get_affected_areas():
if area is PlantSprite:
if area is PlantSprite or area is TruckRecharge:
is_there_a_plant_here = true
var plant_tiles = Math.get_tiles_in_circle(
var plant_tiles = [Math.get_tile_from_pos(
zone.get_global_position(),
20
)
)] as Array[Vector2i]
return (
not is_there_a_plant_here

View File

@@ -13,6 +13,9 @@ func get_description() -> String:
func get_icon() -> Texture2D:
return preload("res://common/icons/rocket.svg")
func get_pointer() -> Texture2D:
return preload("res://gui/pointer/assets/cursors/pointer-ship.svg")
func get_energy_used() -> int:
return 0

View File

@@ -12,8 +12,7 @@ signal player_updated(player: Player)
signal upgraded
var terrain : Terrain
var region : Region :
get(): return terrain if terrain is Region else null
@export var region : Region
var data : PlayerData
var last_action_area_movement_timer : float = 100.
@@ -91,11 +90,16 @@ func _process(delta):
instruction.do(self)
instruction = null
if instruction and instruction.need_movement:
if input_direction.length() != 0:
instruction = null
input_direction = calculate_direction_instruction_direction()
if instruction == null and action_zone:
action_zone.destroy()
action_zone = null
velocity = input_direction * SPEED
turn_animate(input_direction)
@@ -286,8 +290,8 @@ func recharge(amount : int = data.max_energy):
func full_recharge():
data.energy = max(data.energy, data.max_energy)
func generate_action_zone(item : Item) -> ActionZone:
var zone = ActionZone.new(item)
func generate_action_zone(item : Item, preview = true) -> ActionZone:
var zone = ActionZone.new(item, region.plant_grid, preview)
if not get_parent().is_node_ready():
await get_parent().ready
@@ -303,12 +307,12 @@ func setup_preview_zone(item : Item):
preview_zone = null
if item:
preview_zone = await generate_action_zone(item)
preview_zone = await generate_action_zone(item, true)
func setup_action_zone(zone_position : Vector2, item: Item) -> ActionZone:
if action_zone:
action_zone.destroy()
action_zone = await generate_action_zone(item)
action_zone = await generate_action_zone(item, false)
action_zone.move_to_position(zone_position)
last_action_area_movement_timer = 0.
return action_zone
@@ -316,6 +320,7 @@ func setup_action_zone(zone_position : Vector2, item: Item) -> ActionZone:
func move_preview_zone(zone_position : Vector2):
if preview_zone:
preview_zone.move_to_position(zone_position)
preview_zone.update_preview(self)
class Instruction:
@@ -414,12 +419,21 @@ class InteractableInstruction extends Instruction:
interactable.interact(player)
class ActionZone:
const ZONE_ACTIVATED_COLOR = Color("#96B3DB")
const ZONE_DEACTIVATED_COLOR = Color("#FF006E")
const ZONE_OPACITY = 0.6
var item : Item = null
var area : Area2D = Area2D.new()
var affected_areas : Array[Area2D]= []
var plant_grid : PlantGrid
var circle : Circle
var preview: bool
func _init(_i : Item):
func _init(_i : Item, _grid : PlantGrid, _preview = false):
item = _i
plant_grid = _grid
preview = _preview
if item and item.get_usage_zone_radius() > 0:
area = Area2D.new()
var collision_shape = CollisionShape2D.new()
@@ -429,11 +443,25 @@ class ActionZone:
collision_shape.shape = circle_shape
area.add_child(collision_shape)
circle = Circle.new(
item.get_usage_zone_radius(),
)
circle.fill = preview
circle.modulate.a = ZONE_OPACITY
area.add_child(circle)
circle.z_index = 100
func clear_preview_on_affected_area():
for a in affected_areas:
if a:
a.affect_preview(false)
func update_preview(player : Player):
update_preview_on_affected_area()
if circle:
circle.color = ZONE_ACTIVATED_COLOR if item.can_use(player, self) else ZONE_DEACTIVATED_COLOR
func update_preview_on_affected_area():
var detected_areas = get_affected_areas()
clear_preview_on_affected_area()
@@ -457,9 +485,13 @@ class ActionZone:
return Vector2.ZERO if area == null else area.global_position
func move_to_position(pos : Vector2):
if area:
update_preview_on_affected_area()
area.global_position = pos
if area and plant_grid:
if item and item.snap_usage_to_grid():
area.global_position = plant_grid.get_point_for_tile(
Math.get_tile_from_pos(pos)
)
else:
area.global_position = pos
func get_tiles() -> Array[Vector2i]:
return Math.get_tiles_in_circle(

View File

@@ -39,10 +39,11 @@ func _ready():
)
func _input(event):
var sensivity = GameInfo.settings_data.mouse_sensivity / 100
if controlling_player:
if event is InputEventMouseMotion and Input.mouse_mode == Input.MOUSE_MODE_CAPTURED:
rotate_y(-event.relative.x * MOUSE_SENSIVITY)
%Camera3D.rotate_x(-event.relative.y * MOUSE_SENSIVITY)
rotate_y(-event.relative.x * sensivity)
%Camera3D.rotate_x(-event.relative.y * sensivity)
%Camera3D.rotation.x = clampf($Camera3D.rotation.x, -deg_to_rad(70), deg_to_rad(70))
query_mouse = true
if event.is_action_pressed("action") and action_hovered and action_hovered.interactable:

View File

@@ -48,6 +48,7 @@ func setup_video():
func setup_controls():
%AutoPickupCheckBox.button_pressed = settings.auto_pickup
%FovSlider.value = settings.fov
%SensibilitySlider.value = settings.mouse_sensivity
func _on_language_option_button_item_selected(index: int):
settings.language = SettingsData.AVAILABLE_LANGUAGES[index]
@@ -77,3 +78,6 @@ func _on_auto_pickup_check_box_toggled(toggled_on: bool):
func _on_fov_slider_value_changed(value):
if is_node_ready():
settings.fov = value
func _on_sensibility_slider_value_changed(value: float):
settings.mouse_sensivity = value

View File

@@ -23,7 +23,7 @@ script = ExtResource("1_7t8mv")
[node name="SettingsWindow" parent="." unique_id=798514856 instance=ExtResource("1_gkn1k")]
unique_name_in_owner = true
process_mode = 3
custom_minimum_size = Vector2(700, 600)
custom_minimum_size = Vector2(900, 634.155)
layout_mode = 1
offset_left = -349.99994
offset_right = 350.00055
@@ -155,6 +155,22 @@ title = "GAME"
layout_mode = 2
columns = 2
[node name="SensibilitySliderText" parent="SettingsWindow/WindowContent/MarginContainer/ContentContainer/MarginContainer/SettingsContent/GameSettings" unique_id=1624022562 instance=ExtResource("4_rbiwc")]
layout_mode = 2
size_flags_horizontal = 3
text = "MOUSE_SENSIVITY"
[node name="SensibilitySlider" type="HSlider" parent="SettingsWindow/WindowContent/MarginContainer/ContentContainer/MarginContainer/SettingsContent/GameSettings" unique_id=1287461408]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 3
theme = ExtResource("2_7t8mv")
min_value = 0.01
max_value = 0.5
step = 0.01
value = 0.2
[node name="AutoPickupText" parent="SettingsWindow/WindowContent/MarginContainer/ContentContainer/MarginContainer/SettingsContent/GameSettings" unique_id=1206884739 instance=ExtResource("4_rbiwc")]
layout_mode = 2
text = "AUTO_PICKUP"
@@ -187,6 +203,7 @@ bus = &"Sfx"
[connection signal="value_changed" from="SettingsWindow/WindowContent/MarginContainer/ContentContainer/MarginContainer/SettingsContent/SoundSliders/SFXSlider" to="." method="_on_sfx_slider_value_changed"]
[connection signal="toggled" from="SettingsWindow/WindowContent/MarginContainer/ContentContainer/MarginContainer/SettingsContent/VideoSettings/FullScreenCheckBox" to="." method="_on_full_screen_check_box_toggled"]
[connection signal="value_changed" from="SettingsWindow/WindowContent/MarginContainer/ContentContainer/MarginContainer/SettingsContent/VideoSettings/FovSlider" to="." method="_on_fov_slider_value_changed"]
[connection signal="value_changed" from="SettingsWindow/WindowContent/MarginContainer/ContentContainer/MarginContainer/SettingsContent/GameSettings/SensibilitySlider" to="." method="_on_sensibility_slider_value_changed"]
[connection signal="toggled" from="SettingsWindow/WindowContent/MarginContainer/ContentContainer/MarginContainer/SettingsContent/GameSettings/AutoPickupCheckBox" to="." method="_on_auto_pickup_check_box_toggled"]
[editable path="SettingsWindow"]

View File

@@ -0,0 +1,65 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="31.51301"
height="31.618402"
viewBox="0 0 31.51301 31.618402"
fill="#ffffff"
class="icon icon-tabler icons-tabler-filled icon-tabler-pointer"
version="1.1"
id="svg2"
sodipodi:docname="pointer-action.svg"
inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs2" /><sodipodi:namedview
id="namedview2"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
inkscape:deskcolor="#505050"
inkscape:zoom="16"
inkscape:cx="17.15625"
inkscape:cy="27.5"
inkscape:window-width="1920"
inkscape:window-height="1009"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="svg2" /><g
style="fill:none;stroke:#000000;stroke-width:1.55009;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.286275"
id="g24"
transform="matrix(1.2902501,0,0,1.2902501,1.906775,4.5221262)"><path
id="path21"
style="color:#000000;fill:#000000;fill-opacity:0.286275;stroke:none;stroke-width:1.55009;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;-inkscape-stroke:none"
d="M 6.9746325,7.96275e-4 C 6.3774115,7.96275e-4 5.7667509,0.19447765 5.27932,0.6277494 4.7918891,1.0610211 4.4746325,1.7507979 4.4746325,2.5007963 V 8.6140775 C 3.5501673,7.8751956 2.2432248,7.7739943 1.2109606,8.3933744 0.05913455,9.0839351 -0.34207236,10.592065 0.31642938,11.762515 2.19699,15.105289 3.2455731,16.945174 3.6367419,17.545718 c 0.066009,0.101604 0.1307351,0.203425 0.1972656,0.304688 a 1.0001,1.0001 0 0 0 0.00195,0 c 1.2404681,1.883628 3.3285351,2.986304 5.5703125,3.080078 a 1.0001,1.0001 0 0 0 0.068359,0.07031 h 0.2089844 1.7910156 c 3.854141,0 6.999999,-3.145859 6.999999,-7 V 9.5007963 c 0,-0.7499984 -0.317256,-1.4397751 -0.804687,-1.8730469 -0.487432,-0.4332718 -1.098091,-0.6269531 -1.695312,-0.6269531 -0.293968,0 -0.59082,0.047157 -0.875,0.1464843 C 14.979405,6.9496726 14.834788,6.7742764 14.669945,6.6277494 14.182513,6.1944776 13.571854,6.0007963 12.974633,6.0007963 c -0.293993,0 -0.590797,0.047139 -0.875,0.1464843 C 11.979405,5.9496726 11.834788,5.7742764 11.669945,5.6277494 11.182513,5.1944776 10.571854,5.0007963 9.9746325,5.0007963 c -0.1663802,0 -0.3344889,0.015818 -0.5,0.046875 V 2.5007963 C 9.4746325,1.7507979 9.1573759,1.0610211 8.669945,0.6277494 8.1825141,0.19447765 7.5718534,7.96275e-4 6.9746325,7.96275e-4 Z m 0,2.000000025 c 0.1527775,0 0.2921196,0.05632 0.3671875,0.1230468 0.075068,0.066727 0.1328125,0.126954 0.1328125,0.3769532 v 5 2 0.4999997 a 1,1 0 0 0 1,1 1,1 0 0 0 1,-1 v -0.4999997 -2 c 0,-0.2499992 0.057745,-0.3102261 0.1328125,-0.3769532 0.075068,-0.066727 0.21441,-0.1230468 0.3671875,-0.1230468 0.1527775,0 0.2921195,0.05632 0.3671875,0.1230468 0.07507,0.066727 0.132812,0.126954 0.132813,0.3769532 v 2.4999997 a 1,1 0 0 0 1,1 1,1 0 0 0 1,-1 V 8.5007963 c 0,-0.2499992 0.05775,-0.3102261 0.132812,-0.3769532 0.07507,-0.066727 0.214411,-0.1230468 0.367188,-0.1230468 0.152777,0 0.292119,0.05632 0.367187,0.1230468 0.07507,0.066727 0.132812,0.126954 0.132813,0.3769532 v 1.4999997 a 1,1 0 0 0 1,1 1,1 0 0 0 1,-1 V 9.5007963 c 0,-0.2499992 0.05775,-0.3102261 0.132812,-0.3769532 0.07507,-0.066727 0.214411,-0.1230468 0.367188,-0.1230468 0.152777,0 0.292119,0.05632 0.367187,0.1230468 0.07507,0.066727 0.132812,0.126954 0.132812,0.3769532 v 4.4999997 c 0,2.773264 -2.226736,5 -4.999999,5 H 9.6836169 9.6816638 C 7.9984054,19.00108 6.4316746,18.156594 5.5058825,16.750796 5.441233,16.652396 5.3766662,16.554605 5.3125231,16.455874 5.0796932,16.098421 3.9380018,14.119259 2.06057,10.782046 1.9224808,10.536601 1.996764,10.25303 2.2383044,10.108218 2.5836928,9.9009778 3.0138709,9.9544237 3.2988513,10.239078 l 1.46875,1.46875 a 1,1 0 0 0 0.052734,0.03516 1,1 0 0 0 0.2050782,0.136719 1,1 0 0 0 0.099609,0.05078 1,1 0 0 0 0.3496094,0.07031 1,1 0 0 0 0.3496094,-0.07031 1,1 0 0 0 0.099609,-0.05078 1,1 0 0 0 0.2050781,-0.136719 1,1 0 0 0 0.052734,-0.03516 1,1 0 0 0 0.09375,-0.109375 1,1 0 0 0 0.013672,-0.02148 1,1 0 0 0 0.1308594,-0.255859 1,1 0 0 0 0.00977,-0.03125 1,1 0 0 0 0.042969,-0.277344 1,1 0 0 0 0.00195,-0.01172 V 2.5007963 c 0,-0.2499992 0.057745,-0.3102261 0.1328125,-0.3769532 0.075068,-0.066727 0.21441,-0.1230468 0.3671872,-0.1230468 z" /></g><g
style="fill:none;stroke:currentColor;stroke-width:1.55009;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
id="g16"
transform="matrix(1.2902501,0,0,1.2902501,1.906775,1.296501)"><path
stroke="none"
d="m -2.525305,-2.0000007 h 24 V 21.999999 h -24 z"
fill="none"
id="path1-2"
style="stroke-width:1.55009" /><path
d="M 5.474695,10.999999 V 2.4999993 a 1.5,1.5 0 0 1 3,0 v 7.5"
id="path2-2"
style="stroke:#ffffff;stroke-width:1.55009;stroke-opacity:1" /><path
d="m 8.474695,9.4999993 v -2 a 1.5,1.5 0 1 1 3,0 v 2.5"
id="path3"
style="stroke:#ffffff;stroke-width:1.55009;stroke-opacity:1" /><path
d="m 11.474695,8.4999993 a 1.5,1.5 0 0 1 3,0 v 1.5"
id="path4-2"
style="stroke:#ffffff;stroke-width:1.55009;stroke-opacity:1" /><path
d="m 14.474695,9.4999993 a 1.5,1.5 0 0 1 3,0 v 4.4999997 a 6,6 0 0 1 -6,6 h -2 0.208 a 6,6 0 0 1 -5.012,-2.7 69.74,69.74 0 0 1 -0.196,-0.3 c -0.312,-0.479 -1.407,-2.388 -3.286,-5.728 a 1.5,1.5 0 0 1 0.536,-2.0219997 1.867,1.867 0 0 1 2.28,0.28 l 1.47,1.4699997"
id="path5"
style="stroke:#ffffff;stroke-width:1.55009;stroke-opacity:1" /></g><path
stroke="none"
d="M 0.39227299,0.37268114 H 31.358275 V 31.338684 H 0.39227299 Z"
fill="none"
id="path1"
style="stroke-width:1" /></svg>

After

Width:  |  Height:  |  Size: 5.9 KiB

View File

@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cl3wt3tbjiep0"
path="res://.godot/imported/pointer-action.svg-7d0a608f5d92b361c052c9c646842598.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://gui/pointer/assets/cursors/pointer-action.svg"
dest_files=["res://.godot/imported/pointer-action.svg-7d0a608f5d92b361c052c9c646842598.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

View File

@@ -0,0 +1,68 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="31.51301"
height="31.618402"
viewBox="0 0 31.51301 31.618402"
fill="#ffffff"
class="icon icon-tabler icons-tabler-filled icon-tabler-pointer"
version="1.1"
id="svg2"
sodipodi:docname="pointer-dig.svg"
inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs2" /><sodipodi:namedview
id="namedview2"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
inkscape:deskcolor="#505050"
inkscape:zoom="16"
inkscape:cx="6.40625"
inkscape:cy="16.0625"
inkscape:window-width="1920"
inkscape:window-height="1009"
inkscape:window-x="1912"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="svg2" /><path
d="M 3.039,6.3466574 6.943,19.909657 c 0.185,0.837 0.92,1.516 1.831,1.642 l 0.17,0.016 c 0.7939438,0.0476 1.551757,-0.337043 1.982,-1.006 l 0.045,-0.078 1.4,-2.072 c 0,0 0.980006,-1.592325 1.633484,-2.249269 0.68262,-0.68624 2.340516,-1.718731 2.340516,-1.718731 l 2.103,-1.412 c 0.726,-0.385 1.18,-1.278 1.053,-2.189 C 19.37474,9.9328713 18.696553,9.1972717 17.8,8.9976574 l -13.524,-3.89 c -0.7563604,-0.2168787 -1.4553214,0.4843442 -1.236,1.24 z"
id="path4"
sodipodi:nodetypes="cccccccaccccccc"
style="fill:#000000;fill-opacity:0.286567" /><g
style="fill:#000000;fill-opacity:0.286567;stroke:#ffffff;stroke-width:2.30733;stroke-linecap:round;stroke-linejoin:round"
id="g7"
transform="matrix(0.86680039,0,0,0.86680039,11.610822,11.908289)"><path
d="m 13,8 -9.383,9.418 a 2.091,2.091 0 0 0 0,2.967 2.11,2.11 0 0 0 2.976,0 L 16,11"
id="path6"
style="fill:none;fill-opacity:0.286567;stroke:#000000;stroke-width:2.30733;stroke-opacity:0.286275" /><path
d="m 9,3 h 4.586 a 1,1 0 0 1 0.707,0.293 l 6.414,6.414 A 1,1 0 0 1 21,10.414 V 15 a 2,2 0 1 1 -4,0 V 12 L 12,7 H 9 A 2,2 0 1 1 9,3 Z"
id="path7"
style="fill:none;fill-opacity:0.286567;stroke:#000000;stroke-width:2.30733;stroke-opacity:0.286275" /></g><path
stroke="none"
d="M 0,0 H 24 V 24 H 0 Z"
fill="none"
id="path1" /><path
d="M 3.039,4.277 6.943,17.84 c 0.185,0.837 0.92,1.516 1.831,1.642 l 0.17,0.016 c 0.7939438,0.0476 1.551757,-0.337043 1.982,-1.006 l 0.045,-0.078 1.4,-2.072 c 0,0 0.980006,-1.592325 1.633484,-2.249269 C 14.687104,13.406491 16.345,12.374 16.345,12.374 l 2.103,-1.412 C 19.174,10.577 19.628,9.684 19.501,8.773 19.37474,7.8632139 18.696553,7.1276143 17.8,6.928 L 4.276,3.038 C 3.5196396,2.8211213 2.8206786,3.5223442 3.04,4.278 Z"
id="path2"
sodipodi:nodetypes="cccccccaccccccc" /><g
style="fill:none;stroke:#ffffff;stroke-width:2.30733;stroke-linecap:round;stroke-linejoin:round"
id="g1"
transform="matrix(0.86680039,0,0,0.86680039,11.610822,9.7449335)"><path
stroke="none"
d="M 0,0 H 24 V 24 H 0 Z"
fill="none"
id="path1-1"
style="stroke-width:2.30733" /><path
d="m 13,8 -9.383,9.418 a 2.091,2.091 0 0 0 0,2.967 2.11,2.11 0 0 0 2.976,0 L 16,11"
id="path2-8"
style="stroke-width:2.30733" /><path
d="m 9,3 h 4.586 a 1,1 0 0 1 0.707,0.293 l 6.414,6.414 A 1,1 0 0 1 21,10.414 V 15 a 2,2 0 1 1 -4,0 V 12 L 12,7 H 9 A 2,2 0 1 1 9,3 Z"
id="path3-4"
style="stroke-width:2.30733" /></g></svg>

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bh4m4fbaxl6t4"
path="res://.godot/imported/pointer-dig.svg-ad7b43afdaf2efe42f9726c76536bc0e.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://gui/pointer/assets/cursors/pointer-dig.svg"
dest_files=["res://.godot/imported/pointer-dig.svg-ad7b43afdaf2efe42f9726c76536bc0e.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

View File

@@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="31.51301"
height="31.618402"
viewBox="0 0 31.51301 31.618402"
fill="#ffffff"
class="icon icon-tabler icons-tabler-filled icon-tabler-pointer"
version="1.1"
id="svg2"
sodipodi:docname="pointer-fork.svg"
inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs2" /><sodipodi:namedview
id="namedview2"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
inkscape:deskcolor="#505050"
inkscape:zoom="16"
inkscape:cx="8.71875"
inkscape:cy="17.8125"
inkscape:window-width="1920"
inkscape:window-height="1009"
inkscape:window-x="1912"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="g12" /><g
style="fill:none;stroke:#000000;stroke-width:2.94289;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.28627452"
id="g12"
transform="matrix(0.67960394,0,0,0.67960394,13.339158,15.414767)"><g
id="g11"
transform="matrix(0.86451374,0,0,0.86451374,3.4597458,-2.6863331)"
style="stroke-width:3.4041;stroke:#000000;stroke-opacity:0.28627452"><path
d="m -0.84148875,14.121696 1.68297754,1.682977 c 2.16879471,2.168795 5.68510011,2.168792 7.85389331,-10e-7 2.1687929,-2.168793 2.1687959,-5.685099 1.6e-6,-7.8538932 L 7.0124063,6.2678012"
id="path10"
style="stroke-width:3.4041;stroke:#000000;stroke-opacity:0.28627452" /><path
d="M 20.598848,27.708138 2.5244663,9.6337562"
id="path11"
style="stroke-width:3.4041;stroke:#000000;stroke-opacity:0.28627452" /></g></g><path
d="M 3.039,6.3466574 6.943,19.909657 c 0.185,0.837 0.92,1.516 1.831,1.642 l 0.17,0.016 c 0.7939438,0.0476 1.551757,-0.337043 1.982,-1.006 l 0.045,-0.078 1.4,-2.072 c 0,0 0.980006,-1.592325 1.633484,-2.249269 0.68262,-0.68624 2.340516,-1.718731 2.340516,-1.718731 l 2.103,-1.412 c 0.726,-0.385 1.18,-1.278 1.053,-2.189 C 19.37474,9.9328713 18.696553,9.1972717 17.8,8.9976574 l -13.524,-3.89 c -0.7563604,-0.2168787 -1.4553214,0.4843442 -1.236,1.24 z"
id="path4"
sodipodi:nodetypes="cccccccaccccccc"
style="fill:#000000;fill-opacity:0.286567" /><path
stroke="none"
d="M 0,0 H 24 V 24 H 0 Z"
fill="none"
id="path1" /><path
d="M 3.039,4.277 6.943,17.84 c 0.185,0.837 0.92,1.516 1.831,1.642 l 0.17,0.016 c 0.7939438,0.0476 1.551757,-0.337043 1.982,-1.006 l 0.045,-0.078 1.4,-2.072 c 0,0 0.980006,-1.592325 1.633484,-2.249269 C 14.687104,13.406491 16.345,12.374 16.345,12.374 l 2.103,-1.412 C 19.174,10.577 19.628,9.684 19.501,8.773 19.37474,7.8632139 18.696553,7.1276143 17.8,6.928 L 4.276,3.038 C 3.5196396,2.8211213 2.8206786,3.5223442 3.04,4.278 Z"
id="path2"
sodipodi:nodetypes="cccccccaccccccc" /><g
style="fill:none;stroke:#ffffff;stroke-width:2.94289;stroke-linecap:round;stroke-linejoin:round"
id="g9"
transform="matrix(0.67960394,0,0,0.67960394,13.339158,13.557908)"><path
stroke="none"
d="M 0,0 H 24 V 24 H 0 Z"
fill="none"
id="path1-6"
style="stroke-width:2.94289" /><g
id="g3"
transform="matrix(0.86451374,0,0,0.86451374,3.4597458,-2.6863331)"
style="stroke-width:3.4041"><path
d="m -0.84148875,14.121696 1.68297754,1.682977 c 2.16879471,2.168795 5.68510011,2.168792 7.85389331,-10e-7 2.1687929,-2.168793 2.1687959,-5.685099 1.6e-6,-7.8538932 L 7.0124063,6.2678012"
id="path2-5"
style="stroke-width:3.4041" /><path
d="M 20.598848,27.708138 2.5244663,9.6337562"
id="path3"
style="stroke-width:3.4041" /></g></g></svg>

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b1xvmctdfkyua"
path="res://.godot/imported/pointer-fork.svg-7da3179fd298523652e878610e95a15b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://gui/pointer/assets/cursors/pointer-fork.svg"
dest_files=["res://.godot/imported/pointer-fork.svg-7da3179fd298523652e878610e95a15b.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

View File

@@ -0,0 +1,70 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="31.51301"
height="31.618402"
viewBox="0 0 31.51301 31.618402"
fill="#ffffff"
class="icon icon-tabler icons-tabler-filled icon-tabler-pointer"
version="1.1"
id="svg2"
sodipodi:docname="pointer-seed.svg"
inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs2" /><sodipodi:namedview
id="namedview2"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
inkscape:deskcolor="#505050"
inkscape:zoom="16"
inkscape:cx="11.03125"
inkscape:cy="15.4375"
inkscape:window-width="1920"
inkscape:window-height="1009"
inkscape:window-x="1912"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="g13" /><g
style="fill:none;stroke:#000000;stroke-width:2.94289;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.28627452"
id="g12"
transform="matrix(0.67960394,0,0,0.67960394,13.339158,15.414767)"><g
style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1"
id="g13"
transform="matrix(1.4714453,0,0,1.4714453,-14.996141,-13.751782)"><path
id="path13"
style="color:#000000;fill:#000000;fill-opacity:0.286275;stroke:none;stroke-linecap:butt;stroke-linejoin:miter;-inkscape-stroke:none"
d="M 16.940169 10.817717 A 1.0001 1.0001 0 0 0 16.358138 11.005217 C 13.686618 12.918031 12.139709 16.20083 11.987044 19.169279 C 11.910714 20.653504 12.190597 22.096936 13.012434 23.229826 C 13.834272 24.362716 15.233584 25.083365 16.942122 25.083341 C 17.445115 25.083335 17.919788 25.020678 18.362044 24.903654 C 19.485925 25.236241 20.658194 25.074751 21.67845 24.59506 C 22.785741 24.07445 23.754996 23.204576 24.559309 22.141935 C 26.167934 20.016653 27.152551 17.08613 26.774153 14.243498 A 1.0001 1.0001 0 0 0 25.977278 13.393889 C 24.840684 13.168483 23.688671 13.163127 22.569075 13.333342 C 21.767554 13.455202 20.982858 13.669069 20.233137 13.956389 C 19.532786 12.819246 18.626458 11.794324 17.524153 11.005217 A 1.0001 1.0001 0 0 0 16.940169 10.817717 z M 16.942122 13.333342 C 18.610175 14.895648 19.791959 17.224316 19.8972 19.270842 C 19.95677 20.429245 19.713255 21.418522 19.250716 22.055998 C 18.788176 22.693473 18.142198 23.083325 16.942122 23.083341 C 15.74233 23.083358 15.094015 22.693462 14.631575 22.055998 C 14.169137 21.418532 13.925512 20.429297 13.985091 19.270842 C 14.090347 17.224223 15.27447 14.895584 16.942122 13.333342 z M 23.854231 15.315763 C 24.141473 15.312152 24.428327 15.321402 24.713606 15.343107 C 24.737476 17.319437 24.102823 19.429793 22.963606 20.934904 C 22.452793 21.609779 21.873278 22.152193 21.295637 22.520841 C 21.787879 21.522497 21.956426 20.358983 21.895247 19.169279 C 21.837627 18.048799 21.579738 16.884439 21.139387 15.764982 C 22.015184 15.472134 22.936412 15.327304 23.854231 15.315763 z " /><path
id="path15"
style="stroke:#000000;stroke-width:2;stroke-opacity:0.28627452"
d="m 15.435411,20.320522 c 0.181249,0.701942 0.742034,1.209337 1.765659,1.209324"
sodipodi:nodetypes="cc" /><path
id="path2-1"
style="stroke:#ffffff;stroke-width:2;stroke-opacity:1"
d="m 16.940509,10.041523 c -4.729382,3.386248 -5.816673,12.263906 0,12.263824 5.817612,-8.1e-5 4.730439,-8.877446 0,-12.263824 z"
sodipodi:nodetypes="csc" /><path
id="path9"
style="stroke:#ffffff;stroke-width:2;stroke-opacity:1"
d="m 18.428167,22.095641 c 3.746016,1.405817 8.024015,-4.46492 7.35412,-9.497378 -2.024084,-0.40141 -4.155288,-0.02268 -5.992509,0.857428"
sodipodi:nodetypes="ccc" /><path
id="path10"
style="stroke:#ffffff;stroke-width:2;stroke-opacity:1"
d="m 15.435411,18.542844 c 0.181249,0.701942 0.742034,1.209337 1.765659,1.209324"
sodipodi:nodetypes="cc" /></g></g><path
d="M 3.039,6.3466574 6.943,19.909657 c 0.185,0.837 0.92,1.516 1.831,1.642 l 0.17,0.016 c 0.7939438,0.0476 1.551757,-0.337043 1.982,-1.006 l 0.045,-0.078 1.4,-2.072 c 0,0 0.980006,-1.592325 1.633484,-2.249269 0.68262,-0.68624 2.340516,-1.718731 2.340516,-1.718731 l 2.103,-1.412 c 0.726,-0.385 1.18,-1.278 1.053,-2.189 C 19.37474,9.9328713 18.696553,9.1972717 17.8,8.9976574 l -13.524,-3.89 c -0.7563604,-0.2168787 -1.4553214,0.4843442 -1.236,1.24 z"
id="path4"
sodipodi:nodetypes="cccccccaccccccc"
style="fill:#000000;fill-opacity:0.286567" /><path
stroke="none"
d="M 0,0 H 24 V 24 H 0 Z"
fill="none"
id="path1" /><path
d="M 3.039,4.277 6.943,17.84 c 0.185,0.837 0.92,1.516 1.831,1.642 l 0.17,0.016 c 0.7939438,0.0476 1.551757,-0.337043 1.982,-1.006 l 0.045,-0.078 1.4,-2.072 c 0,0 0.980006,-1.592325 1.633484,-2.249269 C 14.687104,13.406491 16.345,12.374 16.345,12.374 l 2.103,-1.412 C 19.174,10.577 19.628,9.684 19.501,8.773 19.37474,7.8632139 18.696553,7.1276143 17.8,6.928 L 4.276,3.038 C 3.5196396,2.8211213 2.8206786,3.5223442 3.04,4.278 Z"
id="path2"
sodipodi:nodetypes="cccccccaccccccc" /></svg>

After

Width:  |  Height:  |  Size: 5.3 KiB

View File

@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c7ph01vdeeoql"
path="res://.godot/imported/pointer-seed.svg-5fd492bb617059b1e1c19cc9d7b92b0c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://gui/pointer/assets/cursors/pointer-seed.svg"
dest_files=["res://.godot/imported/pointer-seed.svg-5fd492bb617059b1e1c19cc9d7b92b0c.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

View File

@@ -0,0 +1,66 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="31.51301"
height="31.618402"
viewBox="0 0 31.51301 31.618402"
fill="#ffffff"
class="icon icon-tabler icons-tabler-filled icon-tabler-pointer"
version="1.1"
id="svg2"
sodipodi:docname="pointer-ship.svg"
inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs2" /><sodipodi:namedview
id="namedview2"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
inkscape:deskcolor="#505050"
inkscape:zoom="11.313709"
inkscape:cx="9.4133586"
inkscape:cy="8.0433393"
inkscape:window-width="1920"
inkscape:window-height="1009"
inkscape:window-x="-8"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="svg2" /><g
style="fill:none;stroke:#ffffff;stroke-width:1.45535;stroke-linecap:round;stroke-linejoin:round"
id="g31"
transform="matrix(1.37424,0,0,1.37424,-1.46875,1.72616)"><path
stroke="none"
d="M 0,0 H 24 V 24 H 0 Z"
fill="none"
id="path28"
style="stroke-width:1.45535" /><path
id="path29"
style="stroke:#000000;stroke-width:1.45535;stroke-opacity:0.286275"
d="M 17,4 A 9,9 0 0 0 9,10 6,6 0 0 0 4,13 8,8 0 0 1 6.9941406,14.003906 6,6 0 0 0 4,20 6,6 0 0 0 9.9960938,17.005859 8,8 0 0 1 11,20 6,6 0 0 0 14,15 9,9 0 0 0 20,7 3,3 0 0 0 17,4 Z M 7.0136719,14.013672 a 8,8 0 0 1 2.9726562,2.972656 z" /><path
style="color:#000000;fill:#000000;fill-opacity:0.286275;stroke:none;stroke-linecap:butt;stroke-linejoin:miter;-inkscape-stroke:none"
d="m 15,7.2714844 c -0.411705,0 -0.834342,0.1355176 -1.171875,0.4355468 C 13.516655,7.983893 13.271484,8.5307669 13.271484,9 c 0,0.4692332 0.556641,1.292969 0.556641,1.292969 0.178576,0.414797 0.76017,0.435547 1.171875,0.435547 0.411705,0 0.834342,-0.135518 1.171875,-0.435547 C 16.509408,9.9929395 16.728516,9.5152515 16.728516,9 c 0,-0.5152515 -0.219108,-0.9929395 -0.556641,-1.2929688 C 15.834342,7.407002 15.411705,7.2714844 15,7.2714844 Z"
id="path31"
sodipodi:nodetypes="sssssssss" /></g><g
style="fill:none;stroke:#ffffff;stroke-width:1.45535;stroke-linecap:round;stroke-linejoin:round"
id="g28"
transform="matrix(1.37424,0,0,1.37424,-1.46875,-2.0625)"><path
stroke="none"
d="M 0,0 H 24 V 24 H 0 Z"
fill="none"
id="path1-4"
style="stroke-width:1.45535" /><path
d="m 4,13 a 8,8 0 0 1 7,7 6,6 0 0 0 3,-5 9,9 0 0 0 6,-8 3,3 0 0 0 -3,-3 9,9 0 0 0 -8,6 6,6 0 0 0 -5,3"
id="path2"
style="stroke-width:1.45535" /><path
d="m 7,14 a 6,6 0 0 0 -3,6 6,6 0 0 0 6,-3"
id="path3-7"
style="stroke-width:1.45535" /><path
d="m 14,9 a 1,1 0 1 0 2,0 1,1 0 1 0 -2,0"
id="path4"
style="stroke-width:1.45535;fill:#ffffff;fill-opacity:1" /></g></svg>

After

Width:  |  Height:  |  Size: 3.2 KiB

View File

@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://rupmj6lgmxn7"
path="res://.godot/imported/pointer-ship.svg-3f864fc9504ac00ce18636a8c6203910.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://gui/pointer/assets/cursors/pointer-ship.svg"
dest_files=["res://.godot/imported/pointer-ship.svg-3f864fc9504ac00ce18636a8c6203910.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

View File

@@ -0,0 +1,63 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="31.51301"
height="31.618402"
viewBox="0 0 31.51301 31.618402"
fill="#ffffff"
class="icon icon-tabler icons-tabler-filled icon-tabler-pointer"
version="1.1"
id="svg2"
sodipodi:docname="pointer-signal.svg"
inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs2" /><sodipodi:namedview
id="namedview2"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:showpageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
inkscape:deskcolor="#505050"
inkscape:zoom="16"
inkscape:cx="8.71875"
inkscape:cy="17.8125"
inkscape:window-width="1920"
inkscape:window-height="1009"
inkscape:window-x="1912"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="svg2" /><path
d="M 3.039,6.3466574 6.943,19.909657 c 0.185,0.837 0.92,1.516 1.831,1.642 l 0.17,0.016 c 0.7939438,0.0476 1.551757,-0.337043 1.982,-1.006 l 0.045,-0.078 1.4,-2.072 c 0,0 0.980006,-1.592325 1.633484,-2.249269 0.68262,-0.68624 2.340516,-1.718731 2.340516,-1.718731 l 2.103,-1.412 c 0.726,-0.385 1.18,-1.278 1.053,-2.189 C 19.37474,9.9328713 18.696553,9.1972717 17.8,8.9976574 l -13.524,-3.89 c -0.7563604,-0.2168787 -1.4553214,0.4843442 -1.236,1.24 z"
id="path4"
sodipodi:nodetypes="cccccccaccccccc"
style="fill:#000000;fill-opacity:0.286567" /><path
d="m 24.305261,27.085712 a 3.613208,3.5890983 0 1 0 -5.110521,0"
id="path8"
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.286275" /><path
stroke="none"
d="M 0,0 H 24 V 24 H 0 Z"
fill="none"
id="path1" /><path
d="m 21.027359,24.547502 a 0.7226416,0.71781966 0 1 0 1.445283,0 0.7226416,0.71781966 0 1 0 -1.445283,0"
id="path9"
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.286275" /><path
d="M 3.039,4.277 6.943,17.84 c 0.185,0.837 0.92,1.516 1.831,1.642 l 0.17,0.016 c 0.7939438,0.0476 1.551757,-0.337043 1.982,-1.006 l 0.045,-0.078 1.4,-2.072 c 0,0 0.980006,-1.592325 1.633484,-2.249269 C 14.687104,13.406491 16.345,12.374 16.345,12.374 l 2.103,-1.412 C 19.174,10.577 19.628,9.684 19.501,8.773 19.37474,7.8632139 18.696553,7.1276143 17.8,6.928 L 4.276,3.038 C 3.5196396,2.8211213 2.8206786,3.5223442 3.04,4.278 Z"
id="path2"
sodipodi:nodetypes="cccccccaccccccc" /><path
d="m 26.348891,29.115706 a 6.5037744,6.4603769 0 1 0 -9.197782,0"
id="path7"
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:0.286275" /><path
d="m 24.305261,25.055718 a 3.613208,3.5890983 0 1 0 -5.110521,0"
id="path3"
style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round" /><path
d="m 21.027359,22.517508 a 0.7226416,0.71781966 0 1 0 1.445283,0 0.7226416,0.71781966 0 1 0 -1.445283,0"
id="path4-9"
style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round" /><path
d="m 26.348891,27.085712 a 6.5037744,6.4603769 0 1 0 -9.197782,0"
id="path2-7"
style="fill:none;stroke:#ffffff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round" /></svg>

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

@@ -0,0 +1,43 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://sq5of6kpjrxj"
path="res://.godot/imported/pointer-signal.svg-f760203858e8cefeb5c8506af6f58026.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://gui/pointer/assets/cursors/pointer-signal.svg"
dest_files=["res://.godot/imported/pointer-signal.svg-f760203858e8cefeb5c8506af6f58026.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1
svg/scale=1.0
editor/scale_with_editor_scale=false
editor/convert_colors_with_editor_theme=false

View File

@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="24"
height="24"
viewBox="0 0 24 24"
width="31.51301"
height="30.805902"
viewBox="0 0 31.51301 30.805902"
fill="#ffffff"
class="icon icon-tabler icons-tabler-filled icon-tabler-pointer"
version="1.1"
@@ -24,18 +24,18 @@
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
inkscape:deskcolor="#505050"
inkscape:zoom="16"
inkscape:cx="7.84375"
inkscape:cy="20.3125"
inkscape:zoom="11.313709"
inkscape:cx="16.661204"
inkscape:cy="15.909903"
inkscape:window-width="1920"
inkscape:window-height="1009"
inkscape:window-x="-8"
inkscape:window-x="1912"
inkscape:window-y="-8"
inkscape:window-maximized="1"
inkscape:current-layer="svg2" />
<path
stroke="none"
d="M0 0h24v24H0z"
d="M 0,0 H 24 V 24 H 0 Z"
fill="none"
id="path1" />
<path
@@ -43,6 +43,6 @@
id="path3"
style="fill:#000000;fill-opacity:0.286567" />
<path
d="M3.039 4.277l3.904 13.563c.185 .837 .92 1.516 1.831 1.642l.17 .016a2.2 2.2 0 0 0 1.982 -1.006l.045 -.078l1.4 -2.072l4.05 4.05a2.067 2.067 0 0 0 2.924 0l1.047 -1.047c.388 -.388 .606 -.913 .606 -1.461l-.008 -.182a2.067 2.067 0 0 0 -.598 -1.28l-4.047 -4.048l2.103 -1.412c.726 -.385 1.18 -1.278 1.053 -2.189a2.2 2.2 0 0 0 -1.701 -1.845l-13.524 -3.89a1 1 0 0 0 -1.236 1.24z"
d="M 3.039,4.277 6.943,17.84 c 0.185,0.837 0.92,1.516 1.831,1.642 l 0.17,0.016 a 2.2,2.2 0 0 0 1.982,-1.006 l 0.045,-0.078 1.4,-2.072 4.05,4.05 a 2.067,2.067 0 0 0 2.924,0 l 1.047,-1.047 c 0.388,-0.388 0.606,-0.913 0.606,-1.461 L 20.99,17.702 a 2.067,2.067 0 0 0 -0.598,-1.28 l -4.047,-4.048 2.103,-1.412 c 0.726,-0.385 1.18,-1.278 1.053,-2.189 A 2.2,2.2 0 0 0 17.8,6.928 L 4.276,3.038 A 1,1 0 0 0 3.04,4.278 Z"
id="path2" />
</svg>

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -3,7 +3,7 @@
[ext_resource type="Script" uid="uid://vhumsfntpqcl" path="res://gui/pointer/scripts/pointer.gd" id="1_1pe2k"]
[ext_resource type="Texture2D" uid="uid://bspffyprdywgc" path="res://gui/pointer/assets/cursors/pointer.svg" id="2_q4bvb"]
[ext_resource type="AudioStream" uid="uid://bym03qp4n6vep" path="res://gui/pointer/assets/sounds/click.wav" id="3_kj0cm"]
[ext_resource type="Texture2D" uid="uid://b3vg3tipd4boh" path="res://common/icons/hand-finger.svg" id="3_mw4ws"]
[ext_resource type="Texture2D" uid="uid://cl3wt3tbjiep0" path="res://gui/pointer/assets/cursors/pointer-action.svg" id="3_mw4ws"]
[ext_resource type="AudioStream" uid="uid://bhsew2amu3ydx" path="res://gui/pointer/assets/sounds/action_press_time.wav" id="3_tof6i"]
[ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://common/icons/bolt.svg" id="4_b4uwv"]
[ext_resource type="AudioStream" uid="uid://cs4y6sinpth8e" path="res://common/audio_manager/assets/sfx/recharge/recharge_capsule_1.wav" id="4_mw4ws"]
@@ -74,7 +74,7 @@ metadata/_custom_type_script = "uid://dj2pv1hiwjfv0"
process_mode = 3
script = ExtResource("1_1pe2k")
default_cursor = ExtResource("2_q4bvb")
hover_cursor = ExtResource("3_mw4ws")
action_cursor = ExtResource("3_mw4ws")
[node name="InspectorCanvasLayer" type="CanvasLayer" parent="." unique_id=561032710]
layer = 128

View File

@@ -13,7 +13,7 @@ const CARD_UP_PADDING = 50
const PRESS_TIME_DRAG := 0.15
@export var default_cursor: Texture2D
@export var hover_cursor: Texture2D
@export var action_cursor: Texture2D
var all_inspected: Array[Node]
var inspected: Node = null
@@ -54,7 +54,6 @@ func get_current_inspected() -> Node:
func _ready():
Input.set_custom_mouse_cursor(default_cursor)
Input.set_custom_mouse_cursor(hover_cursor, Input.CURSOR_POINTING_HAND)
%Action.visible = false
func _process(delta):
@@ -66,18 +65,26 @@ func _process(delta):
%Inspector.position = get_viewport().get_mouse_position()
if not action_disabled and not dragging_inspected and current_selected_item and SceneManager.actual_scene.scene_id == "REGION":
%ActionZone.radius = current_selected_item.usage_zone_radius * GameInfo.settings_data.zoom
%ActionZone.color = ZONE_ACTIVATED_COLOR if can_use_item else ZONE_DEACTIVATED_COLOR
else:
%ActionZone.radius = 0
# if not action_disabled and not dragging_inspected and current_selected_item and SceneManager.actual_scene.scene_id == "REGION":
# %ActionZone.radius = current_selected_item.usage_zone_radius * GameInfo.settings_data.zoom
# %ActionZone.color = ZONE_ACTIVATED_COLOR if can_use_item else ZONE_DEACTIVATED_COLOR
# else:
# %ActionZone.radius = 0
%ActionZone.queue_redraw()
# %ActionZone.queue_redraw()
update_card()
update_inspector(get_current_inspected())
var cursor := default_cursor
if not Pause.pause and player and not action_disabled:
if can_interact:
cursor = action_cursor
elif current_selected_item and current_selected_item.get_pointer():
cursor = current_selected_item.get_pointer()
Input.set_custom_mouse_cursor(cursor)
if player and dragging_inspected:
inspected.global_position = player.get_global_mouse_position()
@@ -226,7 +233,7 @@ func update_card():
%CardVisualiser.show()
func update_inspector(current_inspected: Node):
func update_inspector(current_inspected):
if current_inspected:
if inspected != current_inspected:
if inspected and inspected.has_method("inspect"):

View File

@@ -6,6 +6,7 @@ const SHIP_ICON = preload("res://common/icons/rocket.svg")
const START_ICON = preload("res://common/icons/device-floppy.svg")
const REGION_ICON = preload("res://common/icons/globe.svg")
const DESTINATION_ICON = preload("res://common/icons/flag-2.svg")
const DANGER_ICON = preload("res://common/icons/alert-triangle.svg")
const PREVIOUS_COLOR = Color("2364AAAA")
const CURRENT_COLOR = Color("e29f32")
@@ -54,6 +55,9 @@ func update(with_animation := true):
for m_i in range(len(modifiers)):
spawn_icon(modifiers[m_i].get_icon(), Vector2(i,-m_i - 1),color, 0.7)
if story_step.is_run_point_dangerous(i):
spawn_icon(DANGER_ICON, Vector2(i,-len(modifiers) - 1),color, 0.7)
spawn_icon(icon, Vector2(i,0),color)
ship_icon = spawn_icon(SHIP_ICON, Vector2(current_position, 1), CURRENT_COLOR, 1)

View File

@@ -21,9 +21,9 @@
[sub_resource type="Resource" id="Resource_r4e5h"]
script = ExtResource("3_r4e5h")
rain_value = 0.42404523
cloud_value = 0.20464431
wind_direction = Vector2(0.4359836, 0.8999546)
wind_force = 0.9393943
cloud_value = 0.4445428
wind_direction = Vector2(-0.63176113, -0.7751632)
wind_force = 0.92673165
fog_value = 0.5362279
ambiance_name = "ExteriorWindy"
type = 3
@@ -190,7 +190,8 @@ layer = 3
[node name="Entities" type="Node2D" parent="." unique_id=2132324579]
y_sort_enabled = true
[node name="Player" parent="Entities" unique_id=75851644 instance=ExtResource("5_ovqi1")]
[node name="Player" parent="Entities" unique_id=75851644 node_paths=PackedStringArray("region") instance=ExtResource("5_ovqi1")]
region = NodePath("../..")
[node name="RechargeStation" parent="Entities" unique_id=2068738444 instance=ExtResource("7_6d8m3")]
unique_name_in_owner = true

View File

@@ -0,0 +1,73 @@
extends Sprite2D
class_name PlantGrid
const GRID_SHIFT : int = roundi(Region.TILE_SIZE / 2.)
const GRID_SIZE : int = Region.TILE_SIZE
const POINT_RADIUS : int = 5
const POINT_COLOR : Color = Color.WHITE
const POINT_RANDOM_SHIFT = roundi(Region.TILE_SIZE / 2.)
const REFRESH_TIME : float = 2.
var refresh_timer : float = 0.
var region : Region
var noise : Noise
func _init(
_region : Region
):
region = _region
noise = FastNoiseLite.new()
noise.seed = region.data.region_seed
noise.noise_type = noise.TYPE_VALUE
func _process(delta):
refresh_timer += delta
if refresh_timer > REFRESH_TIME:
refresh_timer = 0
queue_redraw()
var current_item = GameInfo.game_data.player_data.inventory.get_item()
var target_opacity = (1.) if current_item and current_item.snap_usage_to_grid() else 0.
modulate.a = lerp(
modulate.a,
target_opacity,
0.1)
func _draw():
for p in get_grid_point():
draw_point(p)
func get_grid_point() -> Array[Vector2]:
var grid_points : Array[Vector2] = []
for x in range(-Region.CHUNK_TILE_SIZE, Region.CHUNK_TILE_SIZE * 2):
for y in range(-Region.CHUNK_TILE_SIZE, Region.CHUNK_TILE_SIZE * 2):
if (
region.is_coords_decontaminated([Vector2(x,y)])
and not region.is_coords_rocky([Vector2(x,y)])
):
grid_points.append(
get_point_for_tile(Vector2(x,y))
)
return grid_points
func get_point_for_tile(tile_pos: Vector2):
return get_world_pos_for_tile(tile_pos) + get_random_shift(tile_pos)
func get_world_pos_for_tile(tile_pos: Vector2):
return tile_pos*GRID_SIZE + Vector2.ONE * GRID_SHIFT
func get_random_shift(pos: Vector2):
return Vector2.RIGHT.rotated(noise.get_noise_2d(pos.x*100,pos.y*100) * 2*PI) * POINT_RANDOM_SHIFT * noise.get_noise_2d(pos.x*50,pos.y*50)
func draw_point(pos: Vector2):
draw_circle(
pos,
POINT_RADIUS,
POINT_COLOR
)

View File

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

View File

@@ -45,6 +45,7 @@ var data_last_updated = 0.
@onready var recharge_station : TruckRecharge = %RechargeStation
@onready var camera : RegionCamera = %Camera
var plant_grid : PlantGrid
# Cheat Code
# func _input(_e):
@@ -99,7 +100,9 @@ func _ready():
GameInfo.game_data.player_data.inventory.add_item(Pickaxe.new())
GameInfo.game_data.player_data.inventory.add_item(Fork.new())
GameInfo.game_data.player_data.inventory.add_item(ShipPortal.new())
plant_grid = PlantGrid.new(self)
add_child(plant_grid)
data.succeded.connect(finishing_region_animation)
@@ -310,6 +313,8 @@ func is_coords_decontaminated(tiles_coords : Array[Vector2i]):
var local_coord := TilesDiffData.get_local_coord(coord, chunk.chunk_coord)
if not chunk.decontamination_layer.is_decontamined(local_coord):
return false
else:
return false
return true
func is_coords_rocky(tiles_coords : Array[Vector2i]):
@@ -317,7 +322,9 @@ func is_coords_rocky(tiles_coords : Array[Vector2i]):
var chunk : Chunk = get_chunk_for_coord(coord)
if chunk:
var local_coord := TilesDiffData.get_local_coord(coord, chunk.chunk_coord)
if chunk.rock_layer.get_tile_type(local_coord) == RockLayer.TileType.ROCK:
if (
chunk.rock_layer.get_tile_type(local_coord) == RockLayer.TileType.ROCK
or chunk.rock_layer.get_tile_type(local_coord) == RockLayer.TileType.CRISTAL):
return true
return false

View File

@@ -2,8 +2,8 @@ extends Resource
class_name RegionParameter
const DEFAULT_ROCK_THRESHOLD = 0.3
const DEFAULT_DECONTAMINATION_THRESHOLD = 0.35
const DEFAULT_CRISTAL_THRESHOLD = 0.1
const DEFAULT_DECONTAMINATION_THRESHOLD = 0.1
const DEFAULT_CRISTAL_THRESHOLD = 0.3
const DEFAULT_CHARGE = 10
const DEFAULT_TALION_CELL_CHANCE : Array[int] = [0,0,0,1,1]
const DEFAULT_ENERGY_CELL_CHANCE : Array[int] = [1,2,2,2,3]

View File

@@ -452,7 +452,6 @@ size = Vector2i(1980, 1080)
[node name="Planet3d" parent="SubViewport" unique_id=926789923 instance=ExtResource("5_7a1qq")]
unique_name_in_owner = true
details = 20
noise = SubResource("FastNoiseLite_lwj2x")
[node name="Camera3D" type="Camera3D" parent="SubViewport" unique_id=806252928]

View File

@@ -188,6 +188,7 @@ VIDEO,Video,Vidéo
FULLSCREEN,Fullscreen,Plein écran
FOV,Fov,Fov
GAME,Game,Jeu
MOUSE_SENSIVITY,Mouse Sensivity in 3D scenes,Sensibilité de la souris dans les scènes en 3D
AUTO_PICKUP,Auto pickup seeds,Récolte automatique des graines
CONTROLS,Controls,Contrôles
MOVE_RIGHT,Move right,Déplacement à droite
@@ -314,7 +315,7 @@ TOXIC_MODIFIER_DESC_TEXT,Reduce all plant lifetime by 1,Réduit la durée de vie
SANDY,Sandy,Sableux
SANDY_MODIFIER_DESC_TEXT,Reduce plants influence radius,Réduit le rayon d'influence des plantes
RADIOACTIVE,Radioactive,Radioactif
RADIOACTIVE_MODIFIER_DESC_TEXT,Reduce the plant's base plant point by 1,Réduit les points de plantes de base des plantes de 1
RADIOACTIVE_MODIFIER_DESC_TEXT,Reduce the plant's base plant pPoint by 1,Réduit les points de plantes de base des plantes de 1
CONTAMINATED,Contaminated,Contaminée
CONTAMINATED_MODIFIER_DESC_TEXT,Decrease all plants seeds production by one,Diminue la production de graine de 1
MAGNETIC,Magnetic,Magnétique
1 keys en fr
188 FULLSCREEN Fullscreen Plein écran
189 FOV Fov Fov
190 GAME Game Jeu
191 MOUSE_SENSIVITY Mouse Sensivity in 3D scenes Sensibilité de la souris dans les scènes en 3D
192 AUTO_PICKUP Auto pickup seeds Récolte automatique des graines
193 CONTROLS Controls Contrôles
194 MOVE_RIGHT Move right Déplacement à droite
315 SANDY Sandy Sableux
316 SANDY_MODIFIER_DESC_TEXT Reduce plants influence radius Réduit le rayon d'influence des plantes
317 RADIOACTIVE Radioactive Radioactif
318 RADIOACTIVE_MODIFIER_DESC_TEXT Reduce the plant's base plant point by 1 Reduce the plant's base plant pPoint by 1 Réduit les points de plantes de base des plantes de 1
319 CONTAMINATED Contaminated Contaminée
320 CONTAMINATED_MODIFIER_DESC_TEXT Decrease all plants seeds production by one Diminue la production de graine de 1
321 MAGNETIC Magnetic Magnétique