Re: Python - l'instruction return

Posté par Redstar le 23/3/2018 18:13:29
Oui, je suis d'accord avec toi. Mais là, je suis dans un essais, c'est pour tester avant de mettre ça dans mon vrai code. Mais en ayant la même architecture de mon projet pour être sûr que ça marchera comme prévu.

Citation :

...doit s'occuper d'une seule tâche. Plus le code est découpé...


Je l'ai bien compris, ça. C'est c'est pas toujours évident de pouvoir séparer certaines choses parce que tu as des dépendances par-ci et par-là.

Je t'invite à écumer en diagonale la version 0.3.2 de mon projet, comme ça, tu pourra me dire avec un cas concret sous la main, là où j'ai mal agencés mes affaires.

Citation :

....c'est qu'il assigne une variable globale bge.logic.getCurrentScene().post_draw....


'Pas d'accord: cette "chose" permet l'affichage du texte. D’où vois-tu que c'est une variable ?

Si je ne me trompe pas:
- BGE est un module
- Logic est... une classe ? une instance ? Je me suis pas posé la question.
- getCurrentScene() c'est une instruction, pour moi
- post_draw c'est une instruction, pour moi

Moi, je constates une action, pas un paramétrage.

Citation :
Pourquoi dans le dictionnaire ? Pourquoi est-ce que ce Text devrait stocker ses données dans une variable globale ?


Parce que, dans mon projet, mon dictionnaire communique avec toutes les scènes: le HUD, le personnage et l’environnement (le terrain, donc) ou devrais-je dire l'inverse. Je te renvoies au code de mon projet pour plus de détail.

Qui plus est que, si je ne me trompe pas, ce dictionnaire n'est pas renouvelé mais lié (enfin, je n'en sait rien en fait).

Le dictionnaire est crée dans un autre script, je n'ai pas d'erreur python.

Tien, voici un petit script de ma scène "barre chargement".

Encore une fois, c'est un test grandeur nature.

Donc, le fichier blend ou se trouve ce script est chargé dans ma scène principale (là ou je fais "play") et sert à donner l'état de chargement du jeu. Il est supprimé par la suite.

Comme tu le devinera mis en commentaire, des signaux partent de ma scène principale, communique via le dictionnaire et "barre chargement" pompe l'info depuis le dico pour se mettre à jour.

J'ai dû séparer cette scène du reste de mon jeu car, comme je passe de blend en blend, cette scène revient en début de partie, c'est pour éviter de modifier dans chaque blend un duplicata de celui-ci.

Vu que je peux lier "barre chargement" aux autres blends, les modifications dans l'un se répercute dans les autres blends.

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