Nashoba Posté(e) le 18 septembre 2016 Posté(e) le 18 septembre 2016 (modifié) Sommaire: Base de l'addon Créer un effet Créer une condition Créer une expression Créer un évent Créer un type --------------------------- Avant de commencer, assurez-vous d'avoir suivi les 2 premiers tutoriaux sinon vous serez perdu ^^ Créer une condition Pour créer une condition, c'est très similaire à un effet. Voici le code de base : package votre.package; import javax.annotation.Nullable; import org.bukkit.event.Event; public class VotreClass extends Condition { @SuppressWarnings("unchecked") @Override public boolean init(Expression<?>[] expr, int i, Kleenean kl, ParseResult pr) { return true; } @Override public String toString(@Nullable Event e, boolean b) { return null; } @Override public boolean check(Event e) { return true; } } Pour remplir la condition init(), si vous avez suivi cette partie dans « Créer un effet » vous devez savoir faire, sinon je vous renvoie à cette partie. La fonction toString(), pareil. Pour la fonction check(), elle doit renvoyer true ou false. Si vous renvoyez false, la condition ne sera pas passée, si vous renvoyer true, elle sera bonne. Dans cette fonction vous pouvez ajouter tout le code que vous voulez mais au final, vous devez renvoyer true ou false. Exemple : Une condition qui test si un nombre est pair. package votre.package; import javax.annotation.Nullable; import org.bukkit.event.Event; public class CondNombrePair extends Condition { private Expression<Number> nombre; @SuppressWarnings("unchecked") @Override public boolean init(Expression<?>[] expr, int i, Kleenean kl, ParseResult pr) { nombre = (Expression<Number>) expr[0]; return true; } @Override public String toString(@Nullable Event e, boolean b) { return "nombre pair"; } @Override public boolean check(Event e) { if(number.getSingle(e).intValue() % 2 == 0) { return true; } else { return false; } } } Pour enregistrer votre pattern, utilisez le code suivant : Skript.registerCondition(VotreClass.class, pattern); Pour mon exemple j'obtiens : Skript.registerCondition(CondNombrePair.class, "%number% is even"); Modifié le 26 juillet 2018 par Nashoba
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant