Plugin Plugin Release ! Professions

MyMinecrafteur

●• Graphiste Novice Approuvé•●
12 Septembre 2011
1 508
167
88
logo.png
mca.png

mca.png

book.png
Description:

iProfessions est un plugin qui vous permet de créer des métiers sur votre serveur et de leur attribuer des compétences. Par exemple, un métier mineur qui serait le seul à pouvoir casser des blocs de fers, de redstone, d'or, ... Seuls les joueurs qui sont mineur peuvent casser ces blocs-ci ! Ainsi, vous pouvez créer une vraie économie dépendante des autres joueurs, et ça crée le besoin constant de demander des ressources à son voisins ! :p
Les skills sont classés en plusieurs catégories (Cassage de blocks, Utilisation d'objet, Craft d'item, Faire fondre des objets via le four, et d'autres sont à venir), vous pouvez donc entièrement créer et personnaliser votre métier en lui attribuant ses compétences. (Un forgeron qui serait le seul à pouvoir crafter des armes, un bucheron qui est le seul à pouvoir casser des buches de bois, ... Les possibilités sont infinis)
De plus, iProfessions intègre plusieurs autres petits modules que vous découvrerez. :)
book.png
Commandes:

  • /plearn <Tag's profession> (iprofessions.learn.<Tag>): Apprend un métier.
  • /pforget (iprofessions.forget): Oublie votre métier.
  • /psetuser <Player> <Tag's profession> (iprofessions.setuser): Modifie le métier de quelqu'un directement.
  • /pwhois [Player] (iprofessions.whois.other): Permet de voir le métier d'un joueur.
  • /pwhois (iprofessions.whois.self): Permet de voir son métier
D'autres permissions existent:
  • iprofessions.god: Permet au joueur de tout faire, quel que soit son métier, pratique pour les admins.
book.png
Installation &
Configuration:

Attention, iProfessions requiert PluginsBaker, vous pouvez aussi utiliser BeardStat pour profiter des pré-requis de professions.
Pour installer iProfessions, vous devez juste le placer dans votre dossier /plugins et l'activer pour qu'il génère les configurations.
iProfessions - version recommandée
Ouvrer le fichier config.yml, tout se passe la-dedans ! Le noeud players ne nous intéresse pas, il se remplira de lui-même, le plus important est de remplir professions qui contiendra toutes les professions de votre serveur. :)
Voici tout d'abord une configuration par défaut, qui montre un métier de mineur qui est le seul à pouvoir casser de la stone, à utiliser des oeils d'Endermen et à crafter des biscuits et qui devra avoir détruit 15 dirts (Imaginons, hein, ce n'est qu'un exemple. :D).
De plus, il faut avoir 50 argent iConomy pour apprendre le métier de mineur.
Les voici:
Code:
players: {} professions: miner: name: Mineur price: 50 required: - category: blockdestroy key: dirt require: 15 hasnot: Faut détruire plus de dirts skills: useItem: - id: 381,382,383 hasnot: Je ne sais pas utiliser cet objet breakBlock: - id: 1,2,35-14 hasnot: Ce bloc est trop dur craftItem: - id: 357 hasnot: Ce bloc est trop dur smeltItem: - id: 14 hasnot: Je ne sais pas faire fondre ce bloc.

Le [Tag] d'une profession est le nom de celui-ci mais compacté, cela ne doit-être que d'un seul mot et en minuscule (miner, lumber, forgeron, ...), il est utilisé dans les commandes, par exemple, /plearn <Tag>
Le [Name], quand à lui, c'est le vrai nom du métier, il peut avoir des majuscules, des espaces, ... Il est utilisé dans l'affichage dans le chat ("Vous avez appris le métier de Mineur de La Morhia").
Le noeud required contient tous les pré-requis du métier. [Category] et [Key] sont des mots qui définissent quels est le pré-requis. Il y a une tonne de couple de clés, un tableau sera disponible avec une liste non-exhaustive de ceux-ci. [Require] correspond au nombre de stats qu'il faudra avoir (Si [Key] vaut deaths, [Required] correspondra au nombres de morts qu'il faudra avoir).
[Price], prix pour apprendre le métier.
[HasNot] est un champ qui sera utilisé un peu partout dans le fichier de config. Il s'affiche quand le joueur n'a pas la chose demandée. (Dans les require, il s'affichera quand un joueur veut apprendre ce métier mais qu'il n'a pas encore ce pré-requis.)
Le noeud skills contiendra toutes les compétences de notre métier. Ils sont catégorisés en 4 groupes, UseItem, BreakBlock, CraftItem et SmeltItem, respectivement pour l'utilisation d'un objet, la destruction d'un bloc, le craft d'un objet et le fait de fondre un objet. C'est le même format pour tous les champs.
[Id] correspond à l'Id du block/item. Si par exemple je mettais l'Id du bloc de pierre dans une compétence de breakItem, ce métier sera le seul à pouvoir casser ce bloc !
[HasNot], encore une fois, s'affiche si un joueur qui n'est pas de ce métier essaie, par exemple, de casser un bloc de pierre. :)
Voila un schéma-type d'une profession, z'avez qu'à compléter les trucs. :)
http://pastebin.com/7NRQxj3m

Vous pouvez introduire le champs "parent: [...]" dans votre métier. Ce champ introduit le nouveau système d'héritage de métier. En effet, vous pouvez créer des spécialisation de métiers, qui ne pourront être appris qu'après avoir appris le premier métier, cela en fait une spécialisation !
Un exemple vaut mieux que 100 mots, voici un schéma ainsi que la configuration qui représente ce schéma pour bien comprendre le truc.
nQYJ
http://pastebin.com/gsABAUK3
Si le joueur veut être Mineur de diamant, il devra d'abord être Mineur (/plearn miner) et ensuite apprendre Mineur de diamant (/plearn diamond_miner). A noter que si il essaie de faire /plearn diamond_miner directement, il aura un message d'erreur.
Même si le joueur est Mineur de diamant, il conserve les skills de Mineur, il pourra donc toujours casser des minerais de charbon et de fer. Tout l’intérêt de l'héritage. :)
Bien sur, il est possible de faire un plus grand arbre de métier en faisant des spécialisations de spécialisations !
/!\ Dans la configuration, vous devez toujours mettre les professions parentes en premier, et puis les professions filles. Ceci permet de vous avertir au cas où vous auriez fait une faute dans le tag d'une profession parente. /!\

book.png
Utiliser les panneaux:

Vous pouvez utiliser les panneaux pour simplifier quelques opérations pour vos joueurs. Pour cela, munissez-vous de la permission iprofessions.sign.create, prenez un panneau et écrivez ceci:
Sur la première ligne, vous devez écrire [iProfessions].
La deuxième ligne dépend de ce que vous voulez faire:
  • Pour faire apprendre un métier, écrivez learn <tag's profession>. Vos joueurs doivent posséder la même permission que pour /plearn. :)
Source Bukkit.fr par PtitBiscuit