Bulgui_553 Posté(e) le 23 février 2022 Posté(e) le 23 février 2022 Version de Minecraft : 1.18.1 Version de Skript : 2.6.1 Type du skript : Skript de faction simple avec seulement 2-3 fonctionnalités seulement Description du script : Bonjour, serait-il possible d'obtenir de l'aide sur un skript de faction ; nous aimerions ces fonctionnalités : - Claim (Avec limite en fonction du nombre de joueurs…) -Invitation / Exclusion / Création de faction… -Banque commune à la faction compatible avec un autre skript ou plugin d'économie -... Et c'est tout Merci d'avance pour vos réponses, et bonne soirée
LOUDO Posté(e) le 25 février 2022 Posté(e) le 25 février 2022 Le 23/02/2022 à 19:47, Bulgui_553 a dit : Version de Minecraft : 1.18.1 Version de Skript : 2.6.1 Type du skript : Skript de faction simple avec seulement 2-3 fonctionnalités seulement Description du script : Bonjour, serait-il possible d'obtenir de l'aide sur un skript de faction ; nous aimerions ces fonctionnalités : - Claim (Avec limite en fonction du nombre de joueurs…) -Invitation / Exclusion / Création de faction… -Banque commune à la faction compatible avec un autre skript ou plugin d'économie -... Et c'est tout Merci d'avance pour vos réponses, et bonne soirée Salut, le claim c'est pour créer la faction ?
Bulgui_553 Posté(e) le 26 février 2022 Auteur Posté(e) le 26 février 2022 Il y a 16 heures, LOUDO a dit : Salut, le claim c'est pour créer la faction ? Oui, quand les gens possède une faction, il peuvent claim !
LOUDO Posté(e) le 26 février 2022 Posté(e) le 26 février 2022 il y a 22 minutes, Bulgui_553 a dit : Oui, quand les gens possède une faction, il peuvent claim ! Oui mais claim quoi exactement?
Bulgui_553 Posté(e) le 26 février 2022 Auteur Posté(e) le 26 février 2022 Il y a 8 heures, LOUDO a dit : Oui mais claim quoi exactement? Bonsoir, Oui, désolé ! Et bien, il pourrait, en claimant, empêcher les autres joueurs (N'étants pas dans leur faction) de casser et poser des blocks, d'ouvrir les coffres (J'utilise actuellement BlockLocker pour les coffres en individuels - En gros, dans un claim, seulement les joueurs de la faction pourraient ouvrir les coffres, et en plus, il pourraient lock les coffres que pour eux) ), d'allumer des tnt... Option pour activer / désactiver utilisation de leviers, plaques de pressions… si possible. Bonne soirée,
LOUDO Posté(e) le 27 février 2022 Posté(e) le 27 février 2022 Il y a 13 heures, Bulgui_553 a dit : Bonsoir, Oui, désolé ! Et bien, il pourrait, en claimant, empêcher les autres joueurs (N'étants pas dans leur faction) de casser et poser des blocks, d'ouvrir les coffres (J'utilise actuellement BlockLocker pour les coffres en individuels - En gros, dans un claim, seulement les joueurs de la faction pourraient ouvrir les coffres, et en plus, il pourraient lock les coffres que pour eux) ), d'allumer des tnt... Option pour activer / désactiver utilisation de leviers, plaques de pressions… si possible. Bonne soirée, Ok c'est bon je pense avoir compris le concept, je te fais ça 1
Bulgui_553 Posté(e) le 27 février 2022 Auteur Posté(e) le 27 février 2022 il y a une heure, LOUDO a dit : Ok c'est bon je pense avoir compris le concept, je te fais ça Merci !
LOUDO Posté(e) le 27 février 2022 Posté(e) le 27 février 2022 (modifié) Le 27/02/2022 à 12:02, Bulgui_553 a dit : Merci ! Salut, voilà Dépendance requise: Json.sk Citation options: prefix: &c&lFaction &8» limit_default: 20 create_faction: &7Vous devez déjà créer une faction pour réaliser cette commande. Pour en créer un, il suffit simplement de faire ||&ccette commande||ttp:&7Clique pour le mettre dans le chat||sgt:/faction create [nom] temps_expire_invite: 60 # secondes cooldown_claim: 600 # secondes function convert_time(s: number) :: text: set {_h} to {_s}/3600 set {_h} to rounded down {_h} set {_m} to ({_s}-{_h}*3600)/60 set {_m} to rounded down {_m} set {_s} to ({_s} - {_h} * 3600) - {_m} * 60 set {_s} to rounded down {_s} if {_h} = 0: set {_h} to "" else: set {_h} to "%{_h}% heures et " if {_m} = 0: set {_m} to "" else: set {_m} to "%{_m}% minutes et " set {_s} to "%{_s}% secondes" return "%{_h}%%{_m}%%{_s}%" on skript stop: loop all offline players: if {faction::%loop-value's uuid%::cooldown} is set: clear {faction::%loop-value's uuid%::cooldown} command /faction [<text=help>] [<text>]: trigger: if arg 1 is "help": send "&7&m---------------------------------------------" send "&c/faction &7&ocreate [nom] &r&7- Créer votre faction" send "&c/faction &7&olimit [nombre] &r&7- Mettre un nombre limité de joueurs dans votre faction" send "&c/faction &7&odisband &r&7- Supprimer votre faction" send "&c/faction &7&oinvite &r&7- Inviter un joueur dans votre faction" send "&c/faction &7&opromote &r&7- Promote un joueur de votre faction en tant que chef" send "&c/faction &7&oleave &r&7- Quittez une faction" send "&c/faction &7&ochat [message] &r&7- Parler à sa faction" send "&c/faction &7&okick [player] &r&7- Exclure un joueur de votre faction" send "&c/faction &7&oclaim &r&7- Claim votre base de faction (Attention, cela supprime le dernier claim)" send "&7&m---------------------------------------------" if arg 1 is "create": if arg 2 is set: if {faction::%player%::faction::*} is not set: if size of {faction::global::*} = 0: set {_} to "no" else: loop {faction::global::*}: if loop-value = arg 2: set {_} to "yes" else: set {_} to "no" if {_} is "no": set {faction::%player%::faction::name} to arg 2 set {faction::%{faction::%player%::faction::name}%::faction::chef} to player set {faction::%{faction::%player%::faction::name}%::faction::limit} to {@limit_default} add player to {faction::%{faction::%player%::faction::name}%::faction::players::*} add arg 2 to {faction::global::*} send "{@prefix} &7Vous venez de créer votre faction &c%arg 2% &7!" send "{@prefix} &7La limite max de joueurs à été défini par défaut sur &c{@limit_default}&7. Vous pouvez changez ceci à tout moment." to player else: send "{@prefix} &7Ce nom est déjà utilisé malheureusement :(" else: send "{@prefix} &7Vous avez déjà créée ou rejoint une faction !" else: send "{@prefix} &7Veuillez mettre un nom" if arg 1 is "limit": if {faction::%player%::faction::*} is set: if {faction::%{faction::%player%::faction::name}%::faction::chef} = player: set {_number} to arg 2 parsed as number if {_number} is not a number: send "{@prefix} &7Vous devez mettre un nombre !" else if {_number} < 0: send "{@prefix} &7Votre limite de joueurs ne doit pas être négatif !" else: set {faction::%{faction::%player%::faction::name}%::faction::limit} to {_number} send "{@prefix} &7Votre limite de joueurs à été limité à &c%{_number}% &7avec succès !" else: send "{@prefix} &7Vous n'êtes pas le chef de la faction &c%{faction::%player%::faction::name}%" else: json("%player%", "{@prefix} {@create_faction}") if arg 1 is "disband": if {faction::%player%::faction::*} is set: if {faction::%{faction::%player%::faction::name}%::faction::chef} = player: send "{@prefix} &7Vous venez de dissoudre la faction &c%{faction::%player%::faction::name}% &7avec succès !" loop blocks within {faction::claim::%{faction::%player%::faction::name}%}: clear {faction::claim::%location of loop-block%} if {faction::claim::%chunk at loop-block%} is set: clear {faction::claim::%chunk at loop-block%} remove {faction::%player%::faction::name} from {faction::global::*} clear {faction::%{faction::%player%::faction::name}%::faction::*} clear {faction::%player%::faction::*} else: send "{@prefix} &7Vous n'êtes pas le chef de la faction &c%{faction::%player%::faction::name}%" else: json("%player%", "{@prefix} {@create_faction}") if arg 1 is "invite": if arg 2 is set: if {faction::%player%::faction::*} is set: set {_receivied} to arg 2 parsed as player if {faction::%{_receivied}%::faction::name} != {faction::%player%::faction::name}: if {_receivied} is offline: send "{@prefix} &7Ce joueur est hors ligne." else: if (size of {faction::%player%::faction::players::*}) < {faction::%{faction::%player%::faction::name}%::faction::limit}: if {faction.invite::%{_receivied}%::timer} is not set: set {faction.invite::%{_receivied}%::timer} to {@temps_expire_invite} set {faction.invite::%{_receivied}%::name} to {faction::%player%::faction::name} set {faction.invite::%{_receivied}%::sender} to player send "{@prefix} &7Vous avez invité à rejoindre votre faction à &c%{_receivied}%. &7La demande expire dans &c&l%{faction.invite::%{_receivied}%::timer}% secondes" to player send "{@prefix} &c%player% &7vous a invité à rejoindre sa faction &c%{faction::%player%::faction::name}%" to {_receivied} json("%{_receivied}%", "&aAcceptez||ttp:&aCliquez pour accepter||cmd:/faction accept|| &7ou|| &cRefusez &7?||ttp:&cCliquez pour refuser||cmd:/faction refuse|| &7La demande expire dans &c&l{@temps_expire_invite} secondes") while {faction.invite::%{_receivied}%::timer} > 0: remove 1 from {faction.invite::%{_receivied}%::timer} if {faction.invite::%{_receivied}%::timer} = 0: send "{@prefix} &7Votre invitation à &c%arg 2% &7vient d'expirer !" to player send "{@prefix} &7L'invitation de &c%{faction.invite::%{_receivied}%::sender}% &7vient d'expirer !" to {_receivied} clear {faction.invite::%{_receivied}%::*} wait 1 second else: send "{@prefix} &7Vous avez déjà invité &c%{_receivied}% &7à rejoindre votre faction. La demande expire dans &c&l%{faction.invite::%{_receivied}%::timer}% secondes" else: send "{@prefix} &7Il n'y a plus de places !" else: send "{@prefix} &c%{_receivied}% &7est déjà dans votre faction." else: json("%player%", "{@prefix} {@create_faction}") else: send "{@prefix} &7Veuillez mettre un joueur en ligne" if arg 1 is "accept": if {faction::%player%::faction::name} is not set: if {faction.invite::%player%::*} is set: if {faction::%player%::faction::*} is set: make player execute command "/faction leave" set {faction::%player%::faction::name} to {faction::%{faction.invite::%player%::sender}%::faction::name} send "{@prefix} &7Vous venez de rejoindre la faction &c%{faction.invite::%player%::name}%" to player send "{@prefix} &c%player% &7a accepté votre demande demande d'invitation de faction." to {faction.invite::%player%::sender} send "{@prefix} &c%player% &7a rejoint la faction ! &c%size of {faction::%{faction::%player%::faction::name}%::faction::players::*}%&7/&c%{faction::%{faction::%player%::faction::name}%::faction::limit}%" to {faction::%{faction::%player%::faction::name}%::faction::players::*} add player to {faction::%{faction.invite::%player%::name}%::faction::players::*} clear {faction.invite::%player%::*} else: send "{@prefix} &7Vous n'avez pas reçu d'invitation" else: send "{@prefix} &7Vous avez déjà rejoint une faction." if arg 1 is "refuse": if {faction::%player%::faction::name} is not set: if {faction.invite::%player%::*} is set: send "{@prefix} &7Vous avez refusé l'invitation de &c%{faction.invite::%player%::sender}% &7pour rejoindre la faction &c%{faction.invite::%player%::name}%" to player send "{@prefix} &c%player% &7a refusé votre demande demande d'invitation de faction." to {faction.invite::%player%::sender} clear {faction.invite::%player%::*} else: send "{@prefix} &7Vous n'avez pas reçu d'invitation" else: send "{@prefix} &7Vous avez déjà rejoint une faction." if arg 1 is "promote": if arg 2 is set: if {faction::%player%::faction::*} is set: if {faction::%{faction::%player%::faction::name}%::faction::chef} is player: set {_arg2} to arg 2 parsed as offline player set {faction::%{faction::%player%::faction::name}%::faction::chef} to {_arg2} send "{@prefix} &7Vous avez promu &c%{_arg2}% &7comme chef de la faction" to player send "{@prefix} &7Vous avez été promu par &c%player% &7comme chef de la faction" to {_arg2} else: json("%player%", "{@prefix} {@create_faction}") else: send "{@prefix} &7Veuillez mettre un joueur" if arg 1 is "kick": if arg 2 is set: if {faction::%player%::faction::*} is set: set {_arg2} to arg 2 parsed as offline player if "%{faction::%{faction::%player%::faction::name}%::faction::players::*}%" contains "%{_arg2}%": remove {_arg2} from {faction::%{faction::%player%::faction::name}%::faction::players::*} clear {faction.invite::%{_arg2}%::sender} clear {faction::%{_arg2}%::faction::*} send "{@prefix} &7Vous venez d'exclure &c%{_arg2}% &7de votre faction" send "{@prefix} &c%{_arg2}% &7a été exlclu de la faction ! &c%size of {faction::%{faction::%player%::faction::name}%::faction::players::*}%&7/&c%{faction::%{faction::%player%::faction::name}%::faction::limit}%" to {faction::%{faction::%player%::faction::name}%::faction::players::*} if {_arg2} is online: send "{@prefix} &c%player% &7vient de vous exclure de sa faction." to {_arg2} else: send "{@prefix} &c%arg 2% &7n'est pas dans votre faction" else: json("%player%", "{@prefix} {@create_faction}") else: send "{@prefix} &7Veuillez mettre un joueur" if arg 1 is "leave": if {faction::%player%::faction::*} is set: send "{@prefix} &7Vous venez de quitter la faction &c%{faction::%player%::faction::name}%" remove player from {faction::%{faction::%player%::faction::name}%::faction::players::*} send "{@prefix} &c%player% &7a quitté la faction ! &c%size of {faction::%{faction::%player%::faction::name}%::faction::players::*}%&7/&c%{faction::%{faction::%player%::faction::name}%::faction::limit}%" to {faction::%{faction::%player%::faction::name}%::faction::players::*} if size of {faction::%{faction::%player%::faction::name}%::faction::players::*} <= 0: make player execute command "/faction disband" if {faction::%{faction::%player%::faction::name}%::faction::chef} is player: set {_player} to random element of {faction::%{faction::%player%::faction::name}%::faction::players::*} set {faction::%{faction::%player%::faction::name}%::faction::chef} to {_player} set {_player} to "%{_player}%" parsed as player send "{@prefix} &7Vous avez été promu par &c%player% &7comme chef de la faction" to {_player} clear {faction::%player%::faction::*} else: json("%player%", "{@prefix} {@create_faction}") if arg 1 is "claim": if {faction::%player%::faction::*} is set: if {faction::%{faction::%player%::faction::name}%::faction::chef} = player: if {faction::%player's uuid%::cooldown} is not set: if {faction::claim::%chunk at player%} is not set: set {_} to "yes" else: send "{@prefix} &7Cette endroit a déjà été claim par la faction &c%{faction::claim::%chunk at player%}%" stop if {_} = "yes": send "{@prefix} &7Procédure en cours..." if {faction::claim::%{faction::%player%::faction::name}%} is set: loop blocks within {faction::claim::%{faction::%player%::faction::name}%}: clear {faction::claim::%location of loop-block%} clear {faction::claim::%{faction::claim::%{faction::%player%::faction::name}%}%} loop blocks within chunk at player: if loop-value = air: add 1 to {_count} if {_count} > 4500: stop loop else: if {_count} > 0: remove 1 from {_count} set {faction::claim::%location of loop-block%} to {faction::%player%::faction::name} set {faction::claim::%{faction::%player%::faction::name}%} to chunk at player set {faction::claim::%chunk at player%} to {faction::%player%::faction::name} set {faction::%player's uuid%::cooldown} to {@cooldown_claim} send "{@prefix} &7Vous venez de claim votre base !" while {faction::%player's uuid%::cooldown} > 0: wait 1 second remove 1 from {faction::%player's uuid%::cooldown} if {faction::%player's uuid%::cooldown} = 0: clear {faction::%player's uuid%::cooldown} stop loop else: send "{@prefix} &7Cette endroit a déjà été claim par la faction &c%{_faction}%" else: set {_cooldown} to convert_time({faction::%player's uuid%::cooldown}) send "{@prefix} &7Vous ne pouvez pas claim une base avant &c%{_cooldown}%&7." else: send "{@prefix} &7Vous n'êtes pas le chef de la faction &c%{faction::%player%::faction::name}%" else: json("%player%", "{@prefix} {@create_faction}") if arg 1 is "chat": if arg 2 is set: if {faction::%player%::faction::*} is set: send "&6[&cFaction&6] &c%player% &8» &7%arg 2%" to {faction::%{faction::%player%::faction::name}%::faction::players::*} else: json("%player%", "{@prefix} {@create_faction}") else: send "{@prefix} &7Veuillez mettre un message" if arg 1 is "list": if {faction::%player%::faction::*} is set: send "&7Liste des joueurs dans votre faction &c%size of {faction::%{faction::%player%::faction::name}%::faction::players::*}%&7/&c%{faction::%{faction::%player%::faction::name}%::faction::limit}%" loop {faction::%{faction::%player%::faction::name}%::faction::players::*}: if {faction::%{faction::%player%::faction::name}%::faction::chef} is loop-value: set {_cr} to "&7(Chef)" else: set {_cr} to "" send "&c- &7%loop-value% %{_cr}%" else: json("%player%", "{@prefix} {@create_faction}") on break: if {faction::claim::%location of event-block%} is set: if {faction::claim::%location of event-block%} != {faction::%player%::faction::name}: cancel event send "{@prefix} &7Cette zone à été claim par la faction &c%{faction::claim::%location of event-block%}%" to player on place: if {faction::claim::%location of event-block%} is set: if {faction::claim::%location of event-block%} != {faction::%player%::faction::name}: cancel event send "{@prefix} &7Cette zone à été claim par la faction &c%{faction::claim::%location of event-block%}%" to player on rightclick on chest: if {faction::claim::%location of event-block%} is set: if {faction::claim::%location of event-block%} != {faction::%player%::faction::name}: cancel event send "{@prefix} &7Cette zone à été claim par la faction &c%{faction::claim::%location of event-block%}%" to player on explode: loop exploded blocks: if {faction::claim::%location of loop-block%} is set: cancel event Si il y a un problème, dit moi Modifié le 6 mars 2022 par LOUDO 1
Bulgui_553 Posté(e) le 1 mars 2022 Auteur Posté(e) le 1 mars 2022 Le 27/02/2022 à 16:13, LOUDO a dit : Salut, voilà Dépendance requise: Json.sk et TusKe Si il y a un problème, dit moi Salut ! Merci ! Mais la commande /faction ne fonctionne pas…. J'arrive pourtant bien à reload le skript, sans erreur… Une idée ? bonne soirée,
LOUDO Posté(e) le 1 mars 2022 Posté(e) le 1 mars 2022 Il y a 2 heures, Bulgui_553 a dit : Salut ! Merci ! Mais la commande /faction ne fonctionne pas…. J'arrive pourtant bien à reload le skript, sans erreur… Une idée ? bonne soirée, Passe discord si tu veux bien LOUDO#6125
LOUDO Posté(e) le 6 mars 2022 Posté(e) le 6 mars 2022 Le sujet à été réglé sur discord, le message a été mis à jour. Ce sujet est résolu 2
Joriis Posté(e) le 6 mars 2022 Posté(e) le 6 mars 2022 Le sujet a été résolu. Il a donc été verrouillé. Cordialement, l'équipe.
Messages recommandés