CRÉEZ VOTRE MONDE
Scriptage
UnityEvent
4min
unity fournit des unityevents pour faciliter l'utilisation des événements et des délégués c# par les utilisateurs les unityevents sont un moyen de transmettre des arguments entre différents objets ou de transmettre un message lorsque certaines conditions sont remplies pour utiliser unityevent dans zepetoscript, vous devez le déclarer dans le format suivant tout d'abord, ajoutez une commande d'importation comme indiqué ci dessous pour utiliser la classe unityevent typescript import { unityevent } from 'unityengine events'; voir un exemple de code de couplage pour un unityevent event import { zepetoscriptbehaviour } from 'zepeto script'; import { unityevent } from 'unityengine events'; import { button } from 'unityengine ui'; export default class event extends zepetoscriptbehaviour { public btn button; private mevent unityevent; start() { // crée une nouvelle instance de unityevent et l'assigne à mevent this mevent = new unityevent(); // ajoute un nouvel écouteur à mevent cet écouteur exécute la méthode ping lorsque mevent est appelé this mevent addlistener(() => this ping()); // vérifie si un bouton est cliqué et si mevent n'est pas nul this btn onclick addlistener(() => { if (this mevent != null) { // si la condition ci dessus est vraie, invoque mevent this mevent invoke(); } }); } ping() { console log('ping'); } } description du script dans l'exemple ci dessus, un unityevent nommé ‘mevent’ est invoqué chaque fois qu'un bouton est pressé, et il exécute la méthode ‘ping’ lorsque ‘mevent’ est appelé par conséquent, chaque fois que le bouton est pressé, un message 'ping' est imprimé dans la console si l'événement auquel vous êtes sur le point de vous connecter a des paramètres, vous devez ajouter une commande d'importation unityevent comme indiqué ci dessous typescript import { unityevent$1 } from 'unityengine events'; 👍 conseils unityevent$1 est la version générique de unityevent par exemple, si vous souhaitez créer un événement qui accepte une valeur entière, vous pouvez utiliser unityevent$1\<int> veuillez noter que le type de paramètre de unityevent$1 suit c# un exemple de code lors de l'utilisation de unityevent$1 avec des paramètres est le suivant event import { zepetoscriptbehaviour } from 'zepeto script'; import { unityevent$1 } from 'unityengine events'; import { input } from 'unityengine'; export default class event extends zepetoscriptbehaviour { private meventint unityevent$1\<int>; private countnum number; start() { this meventint = new unityevent$1\<int>(); this meventint addlistener(num => this count(num)); this countnum = 0; } update() { if ((input anykeydown) && (this meventint != null)) { this meventint invoke(this countnum); ++this countnum; if (this countnum > 100) { this countnum = 0; } } } count(num) { console log(`count ${num}`); } } vous pouvez en apprendre davantage sur les unityevents en cliquant sur le lien ci dessous 📘 unityevents https //docs unity3d com/kr/530/scriptreference/events unityevent html https //docs unity3d com/kr/530/scriptreference/events unityevent html