ajout d'une animation de recharge et réparation du crash au chargement de chunk

This commit is contained in:
2026-01-16 12:28:36 +01:00
parent 74d2d0de3a
commit ff4feacea3
25 changed files with 431 additions and 236 deletions

View File

@@ -125,28 +125,9 @@ class TakeSeedStep extends Step:
class PlantSeedStep extends Step:
func generate_indicators(p: Player, planet : Planet) -> Array[InGameIndicator]:
var closest_decontamination = null
var limit_distance = 1000
var actual_distance = 100
var player_tile = Math.get_tile_from_pos(p.global_position)
while closest_decontamination == null and actual_distance < limit_distance:
for x in range(actual_distance):
for y in range(actual_distance):
var coord = Vector2i(x,y) - Vector2i.ONE * floori(actual_distance/2.) + player_tile
if planet.decontamination_layer.is_decontamined(coord):
if closest_decontamination == null or player_tile.distance_to(coord) < player_tile.distance_to(closest_decontamination):
closest_decontamination = coord
actual_distance += 100
if closest_decontamination:
var indicator = generate_indicator(tr("PLANT_THE_SEED_IN_DECONTAMINED_ZONE"))
indicator.follow_game_position(closest_decontamination * Planet.TILE_SIZE + Vector2i.ONE * floori(Planet.TILE_SIZE/2.))
return [indicator]
return []
var indicator = generate_indicator(tr("PLANT_THE_SEED_IN_DECONTAMINED_ZONE"))
indicator.follow_game_position(Planet.CHUNK_TILE_SIZE/2. * Planet.TILE_SIZE * Vector2.ONE)
return [indicator]
func is_step_over(_p : Player, planet : Planet) -> bool:
for entity in planet.entity_container.get_children():