Rorti Posté(e) le 7 avril 2016 Posté(e) le 7 avril 2016 Bonjour/Bonsoir J'aimerais demandé s'il serait possible de m'aider à faire un Skript ? Voici ce dont il s'agit: Je voudrais que lorsqu'un joueur fasse la commande "/claim", automatiquement les blocks dans un rayon de 50*50*256 (rayon de 50 et 256 = bedrock à Air) du joueurs ce mettent à son nom pour que les autres joueurs ne puissent pas casser ces blocks. Et quand le joueur fait par exemple "/unclaim" cela supprime ça région qu'il avait définit auparavant. Merci de votre aide par avance. Cordialement.
Invité Posté(e) le 8 avril 2016 Posté(e) le 8 avril 2016 command /claim: description: Permet de claim un territoire. executable by: players trigger: if {chunk.%chunk at location of player%} is set: message "&cCe territoire est déjà claim !" stop loop block in radius 50 of player: if player cannot build at the loop-block: message "&cVous ne pouvez pas claim ce territoire !" stop add name of player to {land.%chunk at location of player%::*} set {chunk.%chunk at location of player%} to name of player set {chunk.%chunk at location of player%.%player%} to true message "&cVous venez de claim ce territoire !" add 1 to {claimedland.%player%} command /unclaim: description: Permet d'unclaim un territoire. executable by: players trigger: if {chunk.%chunk at location of player%} is not set: message "&cCe territoire n'est pas claim !" stop if {chunk.%chunk at location of player%} is not player: if {bypassland.%player%} is not true: message "&cCe territoire n'est pas à vous !" stop if {Claim-Mode— is "time": if {@Refund-Land} is true: add 1 to {landclaims.%{chunk.%chunk at location of player%}% remove 1 from {claimedland.%{chunk.%chunk at location of player%}% clear {land.%chunk at location of player%::*} clear {chunk.%chunk at location of player%} message "&cVous venez d'unclaim ce territoire !" stop command /bypass <text>: description: Permet d'activer le ByPass des claims/unclaims. executable by: players trigger: if arg 1 is "on": if player is op: set {bypassland.%player%} to true else: message "&cVous n'êtes pas opérateur !" if arg 1 is "off": if player is op: set {bypassland.%player%} to false else: message "&cVous n'êtes pas opérateur !"
Rorti Posté(e) le 8 avril 2016 Auteur Posté(e) le 8 avril 2016 command /claim: description: Permet de claim un territoire. executable by: players trigger: if {chunk.%chunk at location of player%} is set: message "&cCe territoire est déjà claim !" stop loop block in radius 50 of player: if player cannot build at the loop-block: message "&cVous ne pouvez pas claim ce territoire !" stop add name of player to {land.%chunk at location of player%::*} set {chunk.%chunk at location of player%} to name of player set {chunk.%chunk at location of player%.%player%} to true message "&cVous venez de claim ce territoire !" add 1 to {claimedland.%player%} command /unclaim: description: Permet d'unclaim un territoire. executable by: players trigger: if {chunk.%chunk at location of player%} is not set: message "&cCe territoire n'est pas claim !" stop if {chunk.%chunk at location of player%} is not player: if {bypassland.%player%} is not true: message "&cCe territoire n'est pas à vous !" stop if {Claim-Mode— is "time": if {@Refund-Land} is true: add 1 to {landclaims.%{chunk.%chunk at location of player%}% remove 1 from {claimedland.%{chunk.%chunk at location of player%}% clear {land.%chunk at location of player%::*} clear {chunk.%chunk at location of player%} message "&cVous venez d'unclaim ce territoire !" stop command /bypass <text>: description: Permet d'activer le ByPass des claims/unclaims. executable by: players trigger: if arg 1 is "on": if player is op: set {bypassland.%player%} to true else: message "&cVous n'êtes pas opérateur !" if arg 1 is "off": if player is op: set {bypassland.%player%} to false else: message "&cVous n'êtes pas opérateur !" Merci beaucoup pour la réponse, j'ai déjà codé le même type de code mais malheureusement ce n'est pas vraiament ce que je veux car ton code claim des chunks or moi j'aimerais que lorsque le joueur fait /claim cela prend tout les blocks autour de lui dans un rayon maximum de 50 blocks. Je sais pas si je suis assez claire... Mais merci de ta proposition tout de même.
Spartan9802 Posté(e) le 8 avril 2016 Posté(e) le 8 avril 2016 Bonjour, Le code proposé ne claims pas le chunk mais bien 50 blocs au tour du joueur.
Rorti Posté(e) le 8 avril 2016 Auteur Posté(e) le 8 avril 2016 Bonjour, Le code proposé ne claims pas le chunk mais bien 50 blocs au tour du joueur. Ah d'accord et donc si je veux changer le claim de 50 block autour du joueur par 100 il faut juste que je change le loop de 50 blocks par 100?
Spartan9802 Posté(e) le 8 avril 2016 Posté(e) le 8 avril 2016 Oui, ensuite plus le rayon serrât grand plus il y auras de lags ... C'est une bonne méthode pour de petit rayon.
Invité Posté(e) le 8 avril 2016 Posté(e) le 8 avril 2016 Oui désolé j'ai oublié de rpécisé que tu pouvais agrandir :)
Rorti Posté(e) le 8 avril 2016 Auteur Posté(e) le 8 avril 2016 Oui, ensuite plus le rayon serrât grand plus il y auras de lags ... C'est une bonne méthode pour de petit rayon. D'accord merci de l'information. Oui désolé j'ai oublié de rpécisé que tu pouvais agrandir :) Merci de l'info également. Par contre je viens de mettre ton code en place et j'ai tester et malheureusement j'ai une erreur.. Alors est ce que cela vient d'un addon manquant ou alors du code lui même? L'erreur en question: [ATTACH=full]1633[/ATTACH] Les version de mes plugins: - Skript 2.2 - skRayFall_v1.9.2 - RandomSKBeta ( Le dernier ) - SkQuery ( Celui qui s'est télécharger avec le Skript 2.2 ) Cordialement.
Doc Posté(e) le 9 avril 2016 Posté(e) le 9 avril 2016 Bonsoir, Le code proposé claim seulement un chunk (ou chunk par chunk si multi claim). Si je ne me trompe pas, le loop blocks in radius 50 of player: permet seulement de vérifier si le joueur peut build à l'endroit ou il veut claim. C'est un message d'avertissement. Rien de plus. Sinon, pourquoi avoir mis "add name of player to {land.%chunk at location of player%::*}" si ce n'est pas pour claim un chunk? Je me trompe peut être, mais aillant un skript fonctionnel de claim de chunk pour de la survie, cela m'étonne que ton système claim 50 blocs. Comme je l'ai dis, je me trompe peut être :) Bonne soirée.
Rorti Posté(e) le 11 avril 2016 Auteur Posté(e) le 11 avril 2016 Bonsoir, Le code proposé claim seulement un chunk (ou chunk par chunk si multi claim). Si je ne me trompe pas, le loop blocks in radius 50 of player: permet seulement de vérifier si le joueur peut build à l'endroit ou il veut claim. C'est un message d'avertissement. Rien de plus. Sinon, pourquoi avoir mis "add name of player to {land.%chunk at location of player%::*}" si ce n'est pas pour claim un chunk? Je me trompe peut être, mais aillant un skript fonctionnel de claim de chunk pour de la survie, cela m'étonne que ton système claim 50 blocs. Comme je l'ai dis, je me trompe peut être :) Bonne soirée. Effectivement après plusieurs testes, cela claim chunk par chunk...
Invité Posté(e) le 14 avril 2016 Posté(e) le 14 avril 2016 Oui ce n'est que chunk par chunk. Après, tu dois faire en sorte que la commande claim les (exemple) 50 chunks autour
Messages recommandés