Logo
← Retour aux blogs
Comment faire pour que les joueurs changent de métier à leurs mort sur DarkRP

Comment faire pour que les joueurs changent de métier à leurs mort sur DarkRP

Salut à toi ! Dans ce tutoriel, tu vas découvrir comment forcer les joueurs à changer de métier lorsqu’ils meurent sur un serveur DarkRP. Que ce soit pour éviter l’abus de certains rôles (comme le Maire) ou tout simplement pour apporter plus de réalisme, cette configuration peut s’avérer très utile.

1. Configuration initiale du serveur

Avant tout, assure-toi que ton serveur DarkRP est correctement configuré. Si tu n’as pas encore choisi ton hébergeur ou si tu souhaites un hébergement plus performant et sécurisé, le service garry’s host t’apportera une excellente stabilité, un anti-DDoS efficace et un support 7j/7.

Création ou modification d’un métier existant

Pour illustrer, nous allons d’abord prendre un métier basique, du type Policier (différent du Maire). Si tu souhaites créer un nouveau métier, fais-le comme suit :

TEAM_POLICE = DarkRP.createJob("Policier", { color = Color(25, 25, 170, 255), model = { "models/player/nypd/male_02.mdl", "models/player/nypd/male_04.mdl", "models/player/nypd/male_05.mdl", "models/player/nypd/male_07.mdl", "models/player/nypd/male_09.mdl" }, description = [[Tu es un policier]], weapons = {"weapon_cuff_police", "arrest_stick", "unarrest_stick", "stunstick", "door_ram", "weaponchecker", "weapon_fists", "m9k_sig_p229r", "weapon_arc_atmcard", "policebadge", "weapon_stungun"}, command = "police", max = 5, salary = 75, admin = 0, vote = true, hasLicense = true, category = "Civil Protection" })

Une fois ce métier défini, tu peux adapter la description, la couleur, le nombre maximum de joueurs (max), etc., selon tes besoins.

2. Forcer le changement de métier à la mort

Pour imposer un changement de métier, nous allons exploiter la fonction PlayerDeath dans la définition de chaque métier. Voici comment procéder pour le Policier :

TEAM_POLICE = DarkRP.createJob("Police Nationale", { color = Color(25, 25, 170, 255), model = { "models/player/nypd/male_02.mdl", "models/player/nypd/male_04.mdl", "models/player/nypd/male_05.mdl", "models/player/nypd/male_07.mdl", "models/player/nypd/male_09.mdl" }, description = [[Tu es un policier]], weapons = {"weapon_cuff_police", "arrest_stick", "unarrest_stick", "stunstick", "door_ram", "weaponchecker", "weapon_fists", "m9k_sig_p229r", "weapon_arc_atmcard", "policebadge", "weapon_stungun"}, command = "police", max = 5, salary = 75, admin = 0, vote = true, hasLicense = true, category = "Civil Protection", PlayerDeath = function(ply, weapon, killer) ply:teamBan() ply:changeTeam(GAMEMODE.DefaultTeam, true) end })

Grâce à cette fonction, lorsque ton Policier meurt, il est banni de son équipe actuelle et réattribué au métier par défaut (par exemple, le Citoyen). Ainsi, l’ancienne équipe ne peut pas être reprise immédiatement, ce qui équilibre le jeu.

3. Fonction spécifique pour le Maire

Dans DarkRP, le rôle de Maire est souvent crucial. Si tu souhaites forcer le joueur Maire à revenir Citoyen et informer tous les joueurs de son décès, il suffit d’ajouter la fonction PlayerDeath comme suit :

TEAM_MAYOR = DarkRP.createJob("Maire", { color = Color(150, 20, 20, 255), model = { "models/obama/obama.mdl", "models/hitler.mdl" }, description = [[]], weapons = {"weapon_fists","weapon_arc_atmcard"}, command = "mayor", max = 1, salary = 150, admin = 0, vote = true, hasLicense = true, mayor = true, category = "Civil Protection", PlayerDeath = function(ply) if ply:Team() == TEAM_MAYOR then ply:changeTeam( TEAM_CITIZEN, true ) for k,v in pairs( player.GetAll() ) do DarkRP.notify(v, 1, 4, "Le Maire est décédé") end end end, })

Ici, en plus de forcer le changement de métier, une notification est envoyée à tous les joueurs pour les informer de la disparition du Maire. C’est une excellente manière de rendre les événements plus immersifs et d’encourager un nouveau vote ou une nouvelle élection.

4. Bonus : Ajouter de l’armure

Tu souhaites donner un petit avantage à tes rôles spéciaux ? Tu peux configurer une valeur d’armure grâce à la fonction PlayerLoadout :

PlayerLoadout = function(ply) ply:SetArmor(150) end,

Grâce à cette commande, le métier concerné disposera d’une armure à chaque réapparition. Ajuste la valeur selon le niveau de difficulté que tu souhaites.

Conclusion

Et voilà ! Tu sais désormais comment forcer le changement de métier à la mort des joueurs sur DarkRP. Ces petits ajustements peuvent considérablement améliorer l’équilibre et la qualité de jeu de ton serveur. N’oublie pas que pour tirer pleinement parti de ces configurations et profiter d’une protection anti-DDoS, d’un support 7j/7 et de performances optimales, garry’s host est là pour t’accompagner dans l’hébergement de ton serveur DarkRP. Bon jeu et amuse-toi bien sur ton serveur !

gmod

Héberger votre serveur Garry's Mod

Des performances optimales pour votre communauté

  • Anti-DDoS inclus
  • Installation en 5 min
  • Support 24/7
Commencer maintenant