Aller au contenu

Messages recommandés

Posté(e)

Bonjour / Bonsoir !

Je viens vers vous pour vous demandez un skript de Don. 

Description :

- Commande /createdon <pseudo> :
Exécutable sans permissions.
Cela nous ouvre un coffre simple appeler : "&eDons pour &6(Pseudo)"
On peut y mettre du stuff

- Commande /don :
Exécutable par les joueurs avec la permissions : "don.open"
Ouvre un double coffre nommé "&eDon de &6(Nom du Joueur)" avec la tête des joueurs qui on éxécuter la commande : "/createdon"
 

Exemple (Si vous avez mal compris :D) :

Fan : /createdon Miro:
Fan met son full diams

Miro : /don
Clique sur la tête de Fan et récupère le Stuff !

Merci énormément au personnes qui ont relevé le défi 

PS : Je suis pas très fort du coup je n'es pas réussis a le faire

Posté(e) (modifié)

version skript, minecraft
sk query et tuske stp 
(/ver Skript)

BTW si quelqu'un vois ce topic, je suis en train de le faire donc vous fatiguez pas

 

 

Modifié par KaraDev
  • Haha 1
Posté(e) (modifié)

j'ai besoin de tes versions stp car j'ai bientôt finis, j'essaye de faire un code qui s’adapte à toutes les versions mais bon xDD

JE T'EN SUPPLIE NE ME DIT PAS QUE TU ES EN 1.7.10

Modifié par KaraDev
  • J'aime 1
Posté(e)
Il y a 4 heures, KaraDev a dit :

j'ai besoin de tes versions stp car j'ai bientôt finis, j'essaye de faire un code qui s’adapte à toutes les versions mais bon xDD

JE T'EN SUPPLIE NE ME DIT PAS QUE TU ES EN 1.7.10

Nan tkt fais la versions que tu veut mais je suis en 1.8.9

Posté(e)

j'ai pas pu testé avec deux compte malheureusement, si tu rencontre un problème dit le moi et je corrigerais direct, j'ai expliquer vite fait le code avec des commentaires sauf la fin car j'avais la flemmes, j'ai fait en sorte que le joueur receveur ne puisse pas utiliser le coffre de donation comme un réelle coffre, si tu veux je te l’enlèverai si ça te gène, pareille si le joueur n'a pas assez de stockage j'ai fais en sorte de pouvoir faire une re-sauvegarde pour qu'il puisse après le reprendre, j'ai bloqué le faites de pouvoir faire un don à soit même (pour cette histoire de coffre du coup et j'ai aussi enlever la possibilité de pouvoir faire deux dons à la même personne car ça complique le skript pour rien, si tu as un soucis dit moi tout de suite 🙂 (si tu en as un bien plus tard, bah rip :x)
Ps: j'ai fait des messages très très simple, à toi de les changer si ça t'amuse
à part ça:
Skript: 2.2-dev36

MundoSk: 1.8.5 (je doute que tu en ai besoin)

SkDragon: 0.14.666 (je doute que tu en ai besoin)

SkUtilities: 0.9.2 (je doute que tu en ai besoin)

SkQuery (-Lime): 3.6.2-Lime (important)

Skript-mirror: 1.0.0 (je doute que tu en ai besoin)

Skellett: 1.9.6 (je doute que tu en ai besoin)

Tuske: 1.8.2-Pikachu-Patch-3 (important)

SkStuff: 1.6.4.1 (je doute que tu en ai besoin)

SkRayFall: 1.9.14 (je doute que tu en ai besoin)

add-ons importants: SkQuery, Tuske

Skript au dessus de dev35 si possible, sinon essaye quand même

Version testée: 1.8.8

 

options:
    size: 6 #taille du gui de don
    last: 53 #faire size * 9 - 1, cette case la est la dèrnière et sera bloqu" pour le bon fonctionnement du skript (et son optimisation)
    commandcreate: createdon #commande pour envoyer un don à une personne !
    command: don #commande basique pour voir les dons attribué au joueur

command /{@commandcreate} <offline player>: #offline player car je ne savais pas si le joueur devait être online, et j'ai pensé que non c'était mieux comme ça.
    trigger:
        if arg 1 isn't player:
            #if arg 1 is "clear": #commande de clear de variables en cas de bug, n'oublie pas si tu l'utilise de refaire les tabs
                #delete {DonHead::*}
                #delete {DonFor::*} #il n'y a que 2 variables fixes enregistré dans le skript
                #stop
            if {DonHead::%arg-1%::%player%} isn't set:                                                          #<----
                open virtual chest inventory with size {@size} with name "&eDon pour &6%arg-1%" to player
                format gui slot {@last} of player with barrier named "&4&lX" to do nothing
            else:
                send "&7tu as déjà fait un don à %arg-1%, tu ne peux en faire qu'un jusqu'à qu'il soit vidé" #<---
        else:
            send "&7tu ne peux pas te faire un don à toi même"


on inventory close: #quand il quite l'inventaire
    if event-inventory's name contains "&eDon pour": #si le gui est le premier nommé "Don pour %player%"
        set {_Name} to uncolored event-inventory's name
        set {_Name::*} to {_Name} split at " " #recupération du nom du receveur de dons
        set {_slot} to 0
        loop ({@last}-1) times:                                         #
            if slot {_slot} of player's current inventory isn't empty:  #
                add 1 to {_testempty}
                add 1 to {_slot}
            else:
                if slot {_slot} of player's current inventory is a stained_glass_pane:15 named "&6Anti-Coffre":
                    add 1 to {_testempty}

                    add 1 to {_slot}                                                             #
        if {_testempty} >= {@last}:                                     #si le don est vide:
            send "&7Le Don était vide, alors nous l'avons supprimé"
            delete {DonHead::%{_Name::3}%::%player%}                    #on enlève son don (au cas ou)
            stop

        if {DonHead::%{_Name::3}%::%player%} isn't set:                 #si l'envoyeur n'a pas déjà un don pour le receveur
            set {DonHead::%{_Name::3}%::%player%} to player             #ajout de la tête du donateur pour le receveur dans son gui
            set {_Slot} to 0
            loop ({@last}-1) times:
                set {DonFor::%{_Name::3}%::%player%::%{_Slot}%} to slot {_Slot} of player's current inventory #sauvegarde du don
                add 1 to {_Slot}
            send "&7le don à été fait !"
        else:                                                          #si il lui a déjà fait un don (sécurité, cela à déjà été vérifié)
            send "&7tu as déjà fait un don à %{_Name::3}%, tu ne peux en faire qu'un jusqu'à qu'il soit vidé par le receveur de ce don"
    else if event-inventory's name contains "&eDons de": #le "s" est important il permet de différencier les 3 différents gui entre eux
        stop


    else if event-inventory's name contains "&eDon de": #si le gui est le 3ème, celui déjà donner que le receveur ouvre
        set {_Name} to uncolored name of slot {@last} of player's current inventory #récupération du nom de l'envoyeur, d'où la privation du 53ème slot; je n'ai pas trouvé de meilleur moyen
        set {_slot} to 0

        loop ({@last}-1) times:
            if slot {_slot} of player's current inventory is empty:

                add 1 to {_testempty}

                add 1 to {_slot}
            else:
                if slot {_slot} of player's current inventory is a stained_glass_pane:15 named "&6Anti-Coffre":
                    add 1 to {_testempty}

                    add 1 to {_slot}
        if {_testempty} >= ({@last}-1):
            send "&7Le Don était vide, alors nous l'avons supprimé" #si le don est vide, que le receveur la vidé, alors on le supprime, sinon on le resauvegarde pour qu'il puisse le reprendre plus tard si il n'a plus de place
            delete {DonHead::%player%::%{_Name}%}
            delete {DonFor::%player%::%{_Name}%::%{_Slot}%}
            stop

        else:
            send "%{_testempty}%"
            set {_Slot} to 0
            loop ({@last}-1) times:
                set {DonFor::%player%::%{_Name}%::%{_Slot}%} to slot {_Slot} of player's current inventory
                
                add 1 to {_Slot}

            send "&7le don est sauvegardé temps que tu ne l'aura pas vidé entièrement"      #resauvegarde si le joueur n'a plus de place

command /{@command}:
    permission: don.open
    trigger:
        if {DonHead::%player%::*} is set:
            open virtual chest inventory with size {@size} with name "&eDons de &6%player%" to player #ouverture du 2ème gui avec les têtes, LE S EST IMPORTANT POUR LES DIFFERENCIER
            set {_nb} to 0
            loop {DonHead::%player%::*}:
                set {_head} to "%loop-value%" parsed as player #récupérations des donateurs
                format gui slot {_nb} of player with skull of "%{_head}%" parsed as offline player named "&6%{_head}%" to run: #affichage de leurs têtes
                    
                    open virtual chest inventory with size {@size} with name "&eDon de &6%player%" to player #ouverture du 3ème gui
                    set {_Name} to uncolored event-inventory's name
                    set {_Name::*} to {_Name} split at " "
                    set {_head} to uncolored {_Name::3} #récupération et sécurisation du nom du donateur
                    format gui slot {@last} of player with skull of "%{_head}%" parsed as offline player named "&6%{_head}%" to do nothing #affichage du donateur dans le gui, pour le récupéré (voir ligne 51)
                    set {_count} to 0
                    loop ({@last}-1) times:
                        
                        set slot {_count} of current inventory of player to {DonFor::%player%::%{_head}%::%{_count}%} #restauration du gui
                        
                        add 1 to {_count}
                    set {_nb2} to 0
                    while name of player's current inventory contains "&eDon de":
                        chance of 15%:
                            wait 2 ticks
                        if slot {_nb2} of player's current inventory is empty:
                            format gui slot {_nb2} of player with stained_glass_pane:15 named "&6Anti-Coffre" to do nothing
                            add 1 to {_nb2}
                        else:
                            add 1 to {_nb2}
                        if {_nb2} >= 54:
                            set {_nb2} to 0
                    
                add 1 to {_nb}
            while {_start} isn't set:
                if slot {_nb} of player's current inventory is empty:
                    format gui slot {_nb} of player with stained_glass_pane:15 named "&6" to do nothing
                    add 1 to {_nb}
                else:
                    add 1 to {_nb}
                if {_nb} >= 54:
                    set {_start} to "start"
        else:
            send "&7aucun don pour toi."

 

  • J'aime 1
Posté(e)
Il y a 23 heures, KaraDev a dit :

j'ai pas pu testé avec deux compte malheureusement, si tu rencontre un problème dit le moi et je corrigerais direct, j'ai expliquer vite fait le code avec des commentaires sauf la fin car j'avais la flemmes, j'ai fait en sorte que le joueur receveur ne puisse pas utiliser le coffre de donation comme un réelle coffre, si tu veux je te l’enlèverai si ça te gène, pareille si le joueur n'a pas assez de stockage j'ai fais en sorte de pouvoir faire une re-sauvegarde pour qu'il puisse après le reprendre, j'ai bloqué le faites de pouvoir faire un don à soit même (pour cette histoire de coffre du coup et j'ai aussi enlever la possibilité de pouvoir faire deux dons à la même personne car ça complique le skript pour rien, si tu as un soucis dit moi tout de suite 🙂 (si tu en as un bien plus tard, bah rip :x)
Ps: j'ai fait des messages très très simple, à toi de les changer si ça t'amuse
à part ça:
Skript: 2.2-dev36

MundoSk: 1.8.5 (je doute que tu en ai besoin)

SkDragon: 0.14.666 (je doute que tu en ai besoin)

SkUtilities: 0.9.2 (je doute que tu en ai besoin)

SkQuery (-Lime): 3.6.2-Lime (important)

Skript-mirror: 1.0.0 (je doute que tu en ai besoin)

Skellett: 1.9.6 (je doute que tu en ai besoin)

Tuske: 1.8.2-Pikachu-Patch-3 (important)

SkStuff: 1.6.4.1 (je doute que tu en ai besoin)

SkRayFall: 1.9.14 (je doute que tu en ai besoin)

add-ons importants: SkQuery, Tuske

Skript au dessus de dev35 si possible, sinon essaye quand même

Version testée: 1.8.8

 


options:
    size: 6 #taille du gui de don
    last: 53 #faire size * 9 - 1, cette case la est la dèrnière et sera bloqu" pour le bon fonctionnement du skript (et son optimisation)
    commandcreate: createdon #commande pour envoyer un don à une personne !
    command: don #commande basique pour voir les dons attribué au joueur

command /{@commandcreate} <offline player>: #offline player car je ne savais pas si le joueur devait être online, et j'ai pensé que non c'était mieux comme ça.
    trigger:
        if arg 1 isn't player:
            #if arg 1 is "clear": #commande de clear de variables en cas de bug, n'oublie pas si tu l'utilise de refaire les tabs
                #delete {DonHead::*}
                #delete {DonFor::*} #il n'y a que 2 variables fixes enregistré dans le skript
                #stop
            if {DonHead::%arg-1%::%player%} isn't set:                                                          #<----
                open virtual chest inventory with size {@size} with name "&eDon pour &6%arg-1%" to player
                format gui slot {@last} of player with barrier named "&4&lX" to do nothing
            else:
                send "&7tu as déjà fait un don à %arg-1%, tu ne peux en faire qu'un jusqu'à qu'il soit vidé" #<---
        else:
            send "&7tu ne peux pas te faire un don à toi même"


on inventory close: #quand il quite l'inventaire
    if event-inventory's name contains "&eDon pour": #si le gui est le premier nommé "Don pour %player%"
        set {_Name} to uncolored event-inventory's name
        set {_Name::*} to {_Name} split at " " #recupération du nom du receveur de dons
        set {_slot} to 0
        loop ({@last}-1) times:                                         #
            if slot {_slot} of player's current inventory isn't empty:  #
                add 1 to {_testempty}
                add 1 to {_slot}
            else:
                if slot {_slot} of player's current inventory is a stained_glass_pane:15 named "&6Anti-Coffre":
                    add 1 to {_testempty}

                    add 1 to {_slot}                                                             #
        if {_testempty} >= {@last}:                                     #si le don est vide:
            send "&7Le Don était vide, alors nous l'avons supprimé"
            delete {DonHead::%{_Name::3}%::%player%}                    #on enlève son don (au cas ou)
            stop

        if {DonHead::%{_Name::3}%::%player%} isn't set:                 #si l'envoyeur n'a pas déjà un don pour le receveur
            set {DonHead::%{_Name::3}%::%player%} to player             #ajout de la tête du donateur pour le receveur dans son gui
            set {_Slot} to 0
            loop ({@last}-1) times:
                set {DonFor::%{_Name::3}%::%player%::%{_Slot}%} to slot {_Slot} of player's current inventory #sauvegarde du don
                add 1 to {_Slot}
            send "&7le don à été fait !"
        else:                                                          #si il lui a déjà fait un don (sécurité, cela à déjà été vérifié)
            send "&7tu as déjà fait un don à %{_Name::3}%, tu ne peux en faire qu'un jusqu'à qu'il soit vidé par le receveur de ce don"
    else if event-inventory's name contains "&eDons de": #le "s" est important il permet de différencier les 3 différents gui entre eux
        stop


    else if event-inventory's name contains "&eDon de": #si le gui est le 3ème, celui déjà donner que le receveur ouvre
        set {_Name} to uncolored name of slot {@last} of player's current inventory #récupération du nom de l'envoyeur, d'où la privation du 53ème slot; je n'ai pas trouvé de meilleur moyen
        set {_slot} to 0

        loop ({@last}-1) times:
            if slot {_slot} of player's current inventory is empty:

                add 1 to {_testempty}

                add 1 to {_slot}
            else:
                if slot {_slot} of player's current inventory is a stained_glass_pane:15 named "&6Anti-Coffre":
                    add 1 to {_testempty}

                    add 1 to {_slot}
        if {_testempty} >= ({@last}-1):
            send "&7Le Don était vide, alors nous l'avons supprimé" #si le don est vide, que le receveur la vidé, alors on le supprime, sinon on le resauvegarde pour qu'il puisse le reprendre plus tard si il n'a plus de place
            delete {DonHead::%player%::%{_Name}%}
            delete {DonFor::%player%::%{_Name}%::%{_Slot}%}
            stop

        else:
            send "%{_testempty}%"
            set {_Slot} to 0
            loop ({@last}-1) times:
                set {DonFor::%player%::%{_Name}%::%{_Slot}%} to slot {_Slot} of player's current inventory
                
                add 1 to {_Slot}

            send "&7le don est sauvegardé temps que tu ne l'aura pas vidé entièrement"      #resauvegarde si le joueur n'a plus de place

command /{@command}:
    permission: don.open
    trigger:
        if {DonHead::%player%::*} is set:
            open virtual chest inventory with size {@size} with name "&eDons de &6%player%" to player #ouverture du 2ème gui avec les têtes, LE S EST IMPORTANT POUR LES DIFFERENCIER
            set {_nb} to 0
            loop {DonHead::%player%::*}:
                set {_head} to "%loop-value%" parsed as player #récupérations des donateurs
                format gui slot {_nb} of player with skull of "%{_head}%" parsed as offline player named "&6%{_head}%" to run: #affichage de leurs têtes
                    
                    open virtual chest inventory with size {@size} with name "&eDon de &6%player%" to player #ouverture du 3ème gui
                    set {_Name} to uncolored event-inventory's name
                    set {_Name::*} to {_Name} split at " "
                    set {_head} to uncolored {_Name::3} #récupération et sécurisation du nom du donateur
                    format gui slot {@last} of player with skull of "%{_head}%" parsed as offline player named "&6%{_head}%" to do nothing #affichage du donateur dans le gui, pour le récupéré (voir ligne 51)
                    set {_count} to 0
                    loop ({@last}-1) times:
                        
                        set slot {_count} of current inventory of player to {DonFor::%player%::%{_head}%::%{_count}%} #restauration du gui
                        
                        add 1 to {_count}
                    set {_nb2} to 0
                    while name of player's current inventory contains "&eDon de":
                        chance of 15%:
                            wait 2 ticks
                        if slot {_nb2} of player's current inventory is empty:
                            format gui slot {_nb2} of player with stained_glass_pane:15 named "&6Anti-Coffre" to do nothing
                            add 1 to {_nb2}
                        else:
                            add 1 to {_nb2}
                        if {_nb2} >= 54:
                            set {_nb2} to 0
                    
                add 1 to {_nb}
            while {_start} isn't set:
                if slot {_nb} of player's current inventory is empty:
                    format gui slot {_nb} of player with stained_glass_pane:15 named "&6" to do nothing
                    add 1 to {_nb}
                else:
                    add 1 to {_nb}
                if {_nb} >= 54:
                    set {_start} to "start"
        else:
            send "&7aucun don pour toi."

 

Je ne peux actuellement pas tester le skript mais je crois en toi 🙂 peut tu me donner un moyen de contacter si tu ne le veut pas libre a toi de ne pas me le donner. (PS : Au cas où il y aurais des problèmes)

Invité
Ce sujet ne peut plus recevoir de nouvelles réponses.
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.