Aller au contenu
Nashoba

Tuto Addon #5 - Créer un évent

Messages recommandés

Sommaire:

  1. Base de l'addon
  2. Créer un effet
  3. Créer une condition
  4. Créer une expression
  5. Créer un évent
  6. Créer un type

---------------------------

 

Avant de continuer, assurez-vous d'avoir suivi au moins les 2 premiers tutoriaux ou vous pourrez être perdus.

 

Créer un évent simple

 

 

Aujourd'hui on va voir comment créer un évent simple. Dans cette partie on aura pas besoin de créer de nouvelle classe, on va juste enregistrer l'évent « on ... » ainsi que les valeurs dedans (ex : event-player, event-location...).

 

Voici comment enregistrer votre évent :

 

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.
 

 

Pour le « Nom de votre évent », vous pouvez mettre ce que vous voulez.

 

Pour ClassBukkitDeVotreEvent.class, il faut remplacer ceci par la classe Bukkit de l'évent.

 

Pour « event », il faut remplacer par le code skript sans le « on ».

 

 

Par exemple on va recréer l'évent « on join ». Ça nous donne tout simplement :

 

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.
 

 

 

 

 

Le problème reste qu'on ne peut toujours pas récupérer les infos. Pour se faire on va enregistrer les « event values ». Encore une fois pas besoin de créer de classe spéciale, on met ce code juste après le Skript.registerEvent(...).

 

Voici à quoi ressemble le bout de code pour enregistrer une valeur d'évenement :

 

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.
 

 

La première chose à faire est de remplacer tous les ClassBukkitDeVotreEvent par la classe Bukkit qui contient votre événement.

 

Ensuite il faut définir le type d'objet que renvoie la valeur d’événement. Si on remplace tous les Object par Player, on pourra utiliser « event-player » en Skript. Si on remplace tous les Object par Location, on pourra utiliser « event-location » en Skript.

 

Pour finir la dernière chose à changer est le return. Il faut retourner l'objet en question, celui que vous voulez utiliser. Pour cela vous pourrez utiliser la variable e qui sera votre évent.

 

 

Reprenons notre exemple « on join ». Le code final (avec l'enregistrement + le return du joueur) donnera :

 

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.
 

 

 

Créer un évent complexe

 

 

Bientôt

Modifié par Nashoba
  • J'aime 2

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut^^ !

 

Merci beaucoup pour le tutoriel ! Ca m'a été très utile ! Mais, est-ce-qu'il est possible de créer un événement Skript via un événement personnalisé ? Je m'explique, j'ai crée un événement personnalisé (RegionCreateEvent (WorldGuard)). Voici la classe de mon événement :

 

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

 

Et voici le moment où j'appelle mon événement dans mon Main :

 

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

 

Est-ce-que quand je crée mon event Skript je peux faire ça ? :

 

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

 

Merci d'avance :p !

Partager ce message


Lien à poster
Partager sur d’autres sites

Tu refais la même chose (en rajoutant à nouveau le code pour l'évent value), avec la même classe pour l'évent mais tu change le type d'objet ^^

  • J'aime 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Les event values? Tu dois utiliser "event-%type de variable%". Exemples:

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai un problème avec les EventValues que je n'ais toujours pas réussi a résoudre, j'ai toujours une erreur dans ma console pourtant cela devrait fonctionner.

Voilà le code java:

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

Et voilà l'erreur dans ma console:

Contenu masqué

    Réagissez ou répondez à ce message afin de consulter le contenu masqué.

Voilà, en espérant que quelqu'un sache résoudre mon problème...

Partager ce message


Lien à poster
Partager sur d’autres sites
Le 14/08/2018 à 22:07, Nashoba a dit :

Il manque une class dans le plugin Skript. Tu as la dernière version ?

Bah j'ai le dernier build de Bensku je ne comprend vraiment pas cette erreur et je n'arrives pas a la corriger, j'ai même essayé avec l'ancien build de njol mais cela ne fonctionne pas ?

Ou alors il faut le compiler avec maven j'en sais rien...

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.