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

@@ -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