Reame update for devs & other

- Mise à jour du ReadMe pour les développeurs voulant rajouter des rôles.
- Modification d'une partie du code pour permettre de tester un rôle dans modifier le ressourcepack.
This commit is contained in:
leomelki 2020-03-18 13:44:22 +01:00
parent 99551f3ff2
commit 23b6667343
2 changed files with 33 additions and 1 deletions

View file

@ -7,6 +7,10 @@
- [Crédits](#crédits)
- [Aide](#aide)
- [Questions fréquentes](#questions-fréquentes)
- [Indications pour les développeurs](#indications-développeurs)
- [Ajouter des rôles](#ajouter-rôles)
- [Publier un rôle](#publier-rôle)
- [Quelques classes utiles](#classes-utiles)
## À propos
@ -62,4 +66,30 @@ Il suffit d'ouvrir le fichier `plugins\LoupGarou\config.yml` et de supprimer les
- Puis-je mettre plusieurs fois le même rôle dans une seule partie ?
Cela est possible pour les rôles `Loup-Garou`, `Villageois` et `Chasseur`.
D'autres rôles peuvent aussi marcher mais n'ont pas été testés avec plusieurs joueurs ayant ce rôle dans une seule partie. C'est à vos risques et périls.
D'autres rôles peuvent aussi marcher mais n'ont pas été testés avec plusieurs joueurs ayant ce rôle dans une seule partie. C'est à vos risques et périls.
##Indications pour les développeurs
Ce plugin LoupGarou ayant été modifiés de nombreuses fois, parfois dans des timings tendus, le code n'est pas très propre.
De plus, il n'est pas documenté.
Cependant, si l'envie vous prend de modifier ou d'utiliser la totalité ou une partie du code présent dans cette repo, merci de créditer `leomelki` et `Shytoos`.
###Ajouter des rôles
Ce plugin de Loup-Garou est organisé autour d'un système d'évènements, disponnibles dans le package `fr.leomelki.loupgarou.events`.
N'ayant pas le temps de les documenter, vous devriez comprendre vous-même quand ils sont appelés.
Pour vous aider à créer des rôles, copiez des rôles ayant déjà été créés pour ainsi les modifier.
⚠️ Ce projet a été créé de façon à ce que les rôles soient - presque - totalement indépendants du reste du code (LGGame, LGPlayer...).
Merci de garder ça en tête lors du développement de nouveaux rôles : utilisez un maximum les évènements et, s'il en manque, créez les !
####Quelques classes utiles
`LGGame` : Contient le coeur du jeu, à modifier le minimum possible !
`LGPlayer` : Classe utilisée pour interragir avec les joueurs et stocker leurs données, à modifier le minimum possible !
`LGVote` : Système gérant les votes
`RoleSort`: Classement de l'apparition des rôles durant la nuit.
###Publier un rôle
Si vous arrivez à créer un rôle, je vous invite à faire une demande de publication dans cette repo afin de les faire partager à l'ensemble de la communauté !

View file

@ -46,6 +46,8 @@ public class LGCustomItems {
Collections.sort(constraints);
HashMap<String, Material> mapps = mappings.get(player.getRole().getClass());
if(mapps == null)
return Material.AIR;//Lors du développement de rôles.
StringJoiner sj = new StringJoiner("_");
for(String s : constraints)
sj.add(s);