• Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Tuto Validé
 Comment configurer l'addons "Job rank System"
#1
Question 
Bonjour à tous, eh oui, qu'il est compliqué à comprendre et à configurer cet addons de rang.. mais pas de panique , je vais essayer aujourd'hui de vous expliquer dans les détails comment bien le configurer pour créer vos propres rangs

Nous allons tout d'abord commence par la parti principal de la configuration et la plus simple à comprendre:

Code :
//Disables progression if player is AFK
JobRanksConfig.DisableAFKProgress = true // Désactiver la progression de l'EXP du rank si la personne est afk (/afk activer) true = oui, false = non
//NOTE: These uses DarkRPs chatcommand system, which means it will always use / before the command so by default it would be -> /rpromote NICK RANKID REASON
// -> Providing no rankid will promote or demote the player 1 rank up/down

//Chatcommand to promote
JobRanksConfig.PromotionChatCommands = {"rpromote"} // Commande pour promote un joueur

//Chatcommand to demote
JobRanksConfig.DemotionChatCommands = {"rdemote"} // Commande pour demote un joueur

//Should ranks reset when you die?
JobRanksConfig.ResetRanksOnDeath = false // Es ce que la personne perd son rank et revient a celui de base lorsqu'il meurt ?



Code :
//HUD Jobranks
JobRanksConfig.HUD = true -- Activer ou désactiver le petit HUD du rank


Changer l'emplacement de ce HUD (en haut à droite)  [Image: WJWFQMv.png]


Code :
//Defined 0-100, 0 is as much left as it can and 100 is as much right as it can
JobRanksConfig.UIW = 100 -- //Défini de 0 à 100, 0 est autant à gauche qu'il peut et 100 est autant à droite qu'il le peut

//Defined 0-100, 0 is as much up as it can and 100 is as much down as it can
JobRanksConfig.UIH = 0 //Défini de 0 à 100, 0 est le plus haut possible et 100 est le plus bas possible


Maintenant que vous avez configuré la partie la plus facile de la configuration, passons aux choses un peu plus compliqués

À noter que nous allons utiliser la configuration de rang du créateur dans ce tuto, donc celle-ci :
Pour créer des rangs, rendez-vous à partir de la ligne 18-, vous y retrouverez ces lignes :

Code :
JBR_SetupRankTable(3, 9, 15, ".", nil, nil, false) -- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
JBR_SetupRank(1, 0, "Medic Trainee", nil, {Promote = false, Demote = false}, nil, {}, nil, false)
JBR_SetupRank(2, 1500, "Medic", nil, {Promote = false, Demote = false}, nil, {}, nil, false)
JBR_SetupRank(3, 3000, "Medical Scientist", nil, {Promote = false, Demote = false}, nil, {}, nil, false)
JBR_SetupRank(4, 6000, "Junior Doctor", nil, {Promote = false, Demote = false}, nil, {}, nil, false)
JBR_SetupRank(5, 12000, "Doctor", nil, {Promote = false, Demote = false}, nil, {}, nil, false)
JBR_SetupRank(6, 20000, "Plastic Surgeon", nil, {Promote = false, Demote = false}, nil, {}, nil, false)
JBR_SetupRank(7, 30000, "Brain Surgeon", nil, {Promote = false, Demote = false}, nil, {}, nil, false)
JBR_SetupRank(8, 45000, "Chief Physician", nil, {Promote = false, Demote = false}, nil, {}, nil, false)
JBR_SetupRank(9, 60000, "Hospital Manager", nil, {Promote = false, Demote = false}, nil, {}, nil, false)


Je vais d'abord vous expliquer comment crée un "tableau" de rang


Code :
JBR_SetupRankTable(Job, MaxRank, BonusSalary, PrefixSeparator, Warrant, Wanted, DisableProgression)

Job - ID unique pour chaque métier, c'est ce que vous configurez dans : JBR_AddJobToRankTable(JOB, JOBRANKTABLE_ID), par exemple JBR_AddJobToRankTable(TEAM_POLICE, 1) obligerait TEAM_POLICE à utiliser l'ID 1
MaxRank - Rang maximum atteignable
BonusSalary - Salaire bonus pour chaque rang, donc Montant*Rang, si le bonus est fixé à 15 et que vous êtes au rang 3, vous recevrez 45$ supplémentaires
PrefixSeparator - Ce qui doit être entre le préfixe et le nom, par exemple . serait Rct.Dydy ou _ serait Rct_Dydy
Mandat - Rang (ID) requis pour justifier, mis à nil pour désactiver
Wanted - Rang (ID) requis pour Wanted, mis à nil pour désactiver
DisableProgression - true/false, true ne permettra pas au joueur de progresser dans le temps de jeu uniquement via des promotions manuelles


Il vous suffit après d'ajouter cela pour créer un rang :


Code :
JBR_SetupRank(RankID, TimedRequired, "Nom", "Préfix", {Promote = false, Demote = false}, nil, {}, nil, false)

RankID - RankID doit commencer à partir de 1
TimeRequired - Le premier rang DOIT toujours avoir 0, les autres rangs doivent être supérieurs au précédent. Il compte la différence entre l'ANCIEN et le NOUVEAU rang (en termes d'EXP)
Nom - Nom du rang
Préfix - Préfixe avant le nom du joueur (exemple Rct.Dydy)


Si vous avez bien suivi, pour ajouter vos métiers vous devez donc vous rendre à la ligne suivante (ligne 222 par défaut) :

Code :
JBR_AddJobToRankTable(JOB, JOBRANKTABLE_ID)

Job - TEAM du job (exemple TEAM_POLICE)
JOBRANKTABLE_ID - ID unique du métier, que vous utiliserez si vous avez besoin de définir quelque chose à ce job

Exemple de tout ce que je viens d'expliquer : 

Je commence par définir mon métier a un rang ID
Ensuite je commence à créer mon "tableau" de rang


Code :
JBR_AddJobToRankTable(TEAM_POLICE, 1)

JBR_SetupRankTable(1, 2, 15, "-", 1, 1, false) -- THIS MUST ALWAYS BE FIRST OR IT WILL SETUP FOR THE JOBRANK THAT WAS DEFINED BEFORE THIS
JBR_SetupRank(1, 0, "Recrue", "Rct", {Promote = false, Demote = false}, nil, {}, nil, false)
JBR_SetupRank(2, 2000, "Supérieur", "Sup", {Promote = true, Demote = true}, nil, {}, nil, false)


Donc maintenant quand je me mettrais TEAM_POLICE, j'aurais le rang "Recrue" avec pour préfixe "Rct" donc "Rct-Dydy" et au bout de 2000 exp atteins je passerais Supérieur, j'aurais le préfixe "Sup" et je pourrais Promote/Demote, à vous ensuite de créer plusieurs rangs, en pensant a changer l'idée du rang, si par exemple je veux rajouter un troisième rang, je doit changer l'ID du rang tout au début

JBR_SetupRank(3, .... )

Nous pouvons donc commencer, je vais vous expliquer cela de haut en bas :


Restricte un métier a un rang

Code :
JBR_SetupRestrictedJob(TEAM_CHIEF, {[TEAM_POLICE] = 8})

Dans cette ligne, la fonction principale sera de réserver un métier à un certain rank, dans l'exemple que le créateur nous donnes:
La TEAM CHIEF est restricte, et pour l'atteindre il faut que dans votre rang dans la TEAM_POLICE soit égal ou supérieur a 8

Et donc si on regarde au-dessus, dans notre liste de rang,

Code :
JBR_SetupRank(8, 45000, "Inspector", "Insp", {Promote = true, Demote = true}, {Health = 40, Armor = 40}, {}, Material("jobranks/police/rank8.png"), false)


l'id du RANK 8, est le rang "Inspector" donc si vous n'êtes pas "Inspector" où supérieur a Inspector, la TEAM_CHIEF est restricte pour vous


Les métiers ayant la permission de promote/demote


Code :
JBR_SetupJobPermissionList(TEAM_POLICE, {[TEAM_POLICE] = true})

Dans cette ligne, nous pouvons comprendre que la TEAM_POLICE a l'accès à promote/demote les personnes de la TEAM_POLICE

Mettre un model a un rang spécial


Code :
JBR_SetupRankModel(RankID, ModelTbl)

Je ne vous conseille pas de toucher à ces lignes, car si vous y touchez, les playermodels que vous avez définis dans votre jobs.lua ne vont pas être pris en compte.

Ajouter une arme a un rang


Code :
JBR_AddLoadout(5, {"weapon_pumpshotgun2"})

Dans cette ligne, nous comprenons que l'ID métier 5, et tous les rangs au-dessus reçoivent un fusil à pompe à chaque spawn.

Ajouter une entité a un rang


Code :
JBR_AddEntity(5, {"money_printer"})

Dans cette ligne, nous comprenons que l'ID métier 5, et tous les rangs au-dessus ont accès à l'entité printer.

Ajouter un shipment a un rang


Code :
JBR_AddShipment(5, {"weapon_pumpshotgun2"})

Dans cette ligne, nous comprenons que l'ID métier 5, et tous les rangs au-dessus ont accès au shipment fusil à pompe.

Ajouter des rang similaire a plusieurs métier

Nous allons utiliser cette ligne (ligne 222 par défaut):

Code :
JBR_CopyRankTable(1, 2)


Cela nous dit que les métiers avec le rankID 1 & 2 possède les mêmes rangs.

Voilà, c'est la fin de ce tuto concernant l'addons Job rank System, ça a été un tuto très long à écrire, et surtout à expliquer, et j'espère d'ailleurs que vous allez réussir à créer vos propres rangs, si ce n'est pas le cas, vous pouvez venir demander de l'aide sur le Discord de Zkillu, et ça sera un réel plaisir de vous aider!
Cordialement, dydy.
  Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)