Repository navigation
Creer un perk
Antidino35 edited this page Oct 28, 2026
·
1 revision
- Crée
src/main/resources/perks/mon_perk.yml(item, craft,level,values,description). - Ajoute le fichier dans
ConfigPerkManager.FILES. - Ajoute un identifiant dans
PerkTypeId:public static final String MON_PERK = "mon_perk_perk";
- Enregistre-le dans
PerkManager.registerDefaults():// Perk à attributs (bonus/malus dans le YAML) registerPerk(new AttributePerk(PerkTypeId.MON_PERK, plugin, configPerkManager.get("mon_perk.yml"))); // ou perk passif dont l'effet est codé dans PerkTasks / PerkEffectListener registerPerk(new PassivePerk(PerkTypeId.MON_PERK, plugin, configPerkManager.get("mon_perk.yml")));
- Ajoute-le dans une rareté de
rarity.yml.
- Crée une classe dans
modules/perk/type/qui étendAbstractPerk(onApply/onRemove). -
Effet événementiel : écris-le dans
PerkEffectListeneret teste le perk avecperkManager.getPerkLevel(...)/hasPerk(...). -
Effet continu : ajoute-le dans
PerkTasks.run()(toutes les 4 ticks) sans oubliercleanup(). - Lis les valeurs avec
perk.getValue("nom", niveau, valeurParDefaut).
- Textes en MiniMessage.
- Accès base de données hors du thread principal (
runTaskAsynchronously). - Teste toujours avec
/perk reloadaprès un changement de YAML ou de recette.
Développé par Antidino • Vertex Studio • Dépôt GitHub
⚔️ SMPplugin
🚀 Démarrer
📖 Référence
🛠️ Développeur
❓ Aide