Files
seeding-planets/entities/plants/scripts/plant_mutation/ancient_mutation.gd
Zacharie Guet 7b09f2ba7c Dev de la démo
* Modification de l'apparence de l'UI des dialogues
* Changement de l'ordre de déblocage des mutations
* Ajout d'une confirmation pour l'abandon
* Ajout de la scène de fin avec la base Boréa, en tant que fin de démo
* Modification des icône de durée de vie, temps de pousse, et de mort
* Ajout d'un icône au dessus du joueur quand il n'a plus d'énergie
* Amélioration des dialogues du jeu
* Changement du modèle du téléphone
* Ajout de cellule d'énergie et de cellule de talion trouvable sur la carte
* Il est à nouveau possible de se recharger après la fin d'une région
* Buff des mutations ancien sociale et solide
* Modification de la mutation fertile (ne donne de gain de graine qu'à la maturation)
* Ajout d'une récupération automatique des graines
* Ajout de deux cartons de tutoriel ainsi qu'une option pour les revoir dans l'aide de jeu
* Amélioration générale du tutoriel
* Ajout d'un écran titre digne de ce nom
* Lors de l'arrivée à destination, ne téléporte plus le joueur sur une map vide, mais directement dans les lieux de cinématique
* Ajout graphique de plus de pattern de mousse et de roche
* Le talion apparait maintenant sur toute la carte
* La roche peut désormais apparaitre sur la zone de départ
* Ajout dud modificateur de région Canyon
* Equilibrage général
* Fix de bugs en tout genre
2026-05-28 10:18:36 +02:00

35 lines
949 B
GDScript

@tool
extends PlantMutation
class_name AncientMutation
const DEFAULT_DAY_FACTOR = 3
func get_icon() -> Texture:
return preload("res://common/icons/wood.svg")
func get_mutation_id() -> String:
return "ANCIENT"
func get_mutation_name() -> String:
return tr("ANCIENT")
func get_mutation_description() -> String:
return tr("ANCIENT_EFFECT_TEXT").format(
{
"score_increase": get_score_increase(),
"score_icon": Text.bbcode_icon(Plant.SCORE_ICON),
"day_factor": get_day_factor(),
"duration_icon": Text.bbcode_icon(Plant.DURATION_ICON),
}
)
func get_day_factor():
return max(1, DEFAULT_DAY_FACTOR - level)
func get_score_increase():
return max(1, level - DEFAULT_DAY_FACTOR + 1)
func mutate_score(data : PlantData, score) -> int:
if data.get_state() != PlantData.State.MATURE:
return score
return score + floori(data.day / get_day_factor())