Re: Sauvegarder des propriétés : modifier un script python via le GE

Posté par bzh_nicolas le 10/7/2011 10:38:29
A la lecture de tes posts, je pense que tu n'as pas bien compris comment fonctionne python.
Python est un langage de script interprété ce qui signifie qu'il n'est pas compilé. Il est exécuté à partir du fichier texte contenant le code.

Mais quand le code est exécuté, python ne modifie pas le fichier texte à la volée. Le code du fichier que tu exécutes à un instant T est chargé en mémoire et transformé par l'interpréteur (en réalité python est semi-interprété comme JAVA). Lorsque tu changes la valeur d'une variable durant l'exécution par exemple en faisant :
x=y+1
Elle ne se modifie pas dans ton fichier texte mais dans la mémoire du PC.

Pour ton problème, si ton niveau courant est contenu dans une variable, il ne faut pas modifier le fichier python qui déclare cette variable.
Il faut, comme on te l'a conseillé, sauver cette valeur dans un autre fichier et la charger au démarrage. Plusieurs raisons à cela :
- Si tu modifies directement le fichier, comment je fais moi si je veux recommencer à 0 le jeu et que tu n'as pas prévu une fonction qui remette tout aux valeurs d'origine.
- Bonjour la difficulté, si tu modifies les variables, pour trouver les problèmes à l'exécution.

Pour ton système de sauvegarde automatique, il suffit de déclencher la sauvegarde au moment ou l'événement "niveau terminé" se déclenche

Cette contribution était de : http://blenderclan.tuxfamily.org/html/newbb/viewtopic.php?forum=3&topic_id=31355&post_id=384553