Hey,
From the version gave on the humble monthly Dec 2018 :
I'm lvl 10 with max XP, but I don't level up.
I think it is because I didn't take a new ability before leveling :/
J'ai mal recopié mon texte, le "scenepong" était en trop par rapport à un test désespéré de ma part. :)
Je ne comprends pas trop, j'ai tenté le
Sup.getActor("ScenePong").getChild("Score")
Sans succès (au passage je ne savais pas que les scenes étaient des acteurs également), il ne trouvait pas l'actor (null).
Puis j'ai effacé pour avoir :
Sup.getActor("Score")
Et ça a marché. C'est bizarre parce que c'est mot pour mot ce que j'avais d'écrit avant de modifier.
En tout cas merci bien, tu m'as bien aidé.
Je garde le principe de l'awake de côté :)
En fait le Actor est dans une Scene, il n'est jamais déclaré autrement que dans cette scene. Hors la scène, je dois la load uniquement à la fin. Je dois déclarer mon actor ailleurs ?
Un bout de code :
//en haut de mon code, déclaration des variables : let Score = Sup.getActor("Score"); //Behavior de l'élément qui déclenche le changement : class BalleBehavior extends Sup.Behavior { update(){ if (this.actor.getX() > 3.5){ //... Player2Score ++;TexteScore = Player1Score.toString + " : " + Player2Score.toString;
Sup.getActor("ScenePong/Score").getBehavior(ScoreBehavior).modifierScore(TexteScore); //testé aussi: //Score.textRenderer.setText(Player1Score.toString + " : " + Player2Score.toString);
} }
Merci de t'intéresser à mon cas déjà :)
Du coup, j'avais déjà essayé de faire les deux méthodes que tu me proposes, fort de l'intellisens de l'EDI.
Dans le premier cas, le débug m'annonce ne pas connaitre l'actor instancié (alors qu'il est présent dans la "Scene" le même nom, au caractère près.
Dans le deuxième cas : je n'ai pas pu testé. Je ne sais pas comment accéder a la fonction présente dans la behavior par un événement distant. Je précise mon cas : le score change quand il y a collision entre deux de mes actors. L'un des deux, le receveur en quelque sorte, renvoie l'instruction "changer le score" quand il est "touché". Je ne sais pas comment envoyer cet ordre. Ou alors il faut d'amblé que je me lance dans la mise en place d'évènements et que je mette un listener à disposition de mon scoreboard ?
Hello hello
Je suis en train de faire un petit jeu pour me roder au système et je pêche sur l'affichage du scoreboard.
Pour moi, en terme de code, le scoreboard est un actor attaché à un textrenderer. Je n'arrive pas à l'afficher malgré l'implémentation dans la Scene, et je n'arrive pas à modifier le texte. J'imagine sur le moyen le plus conventionnel et de créer un Behavior ScoreBoard à attacher à l'actor, mais dans ce cas je n'arrive pas à lancer la fonction que je met dans le behavior ^^
Merci d'avance pour votre aide.
Hello everyone.
I'm Uranne, a french developer on .NET languages, android and sometimes web languages. I found superpowers by reading Korben's blog.
I'm used to discover languages and make my own experiments but I'm also used to have issues for things that would be easy for others. I made myself even if it is now my job :)
I want to use superpower to discover the art of game making and for fun to, it remembers me the old time of "Game maker" :')