Aller au contenu
  • 0

bloquer les livres skil touch


Question

Posté(e) (modifié)

Bonjour, Bonsoir, j'ai mon serveur MC en 1.8.8, & Skript  2.2-dev36.

Le but est de bloquer totalement l'enchantement skiltouch

J'ais bloquer l'enchantement skiltouch mais je n'arrive pas a bloquer les livre skiltouch que l'on peut récupérer dans le monde Minecraft 

donc jais mis en place juste si on a un objet enchanter skiltouch sa supprime les enchantement mais sa les supprime tousse lia t'il un solution pour sois bloquer la récupération des livres ou sois de retirer juste l'enchantement skiltouch des objet 

 

Voicis mon code :

	on click:
    if tool of the player is enchanted with Silk Touch 1:
        disenchant the player's tool
	
on enchant:
    set {_item} to event-item
    wait 1 ticks
    if event-item is enchanted with Silk Touch 1:
        disenchant {_item}
        message "&c L'enchantement Silk Touch est bloquer"
	        
on inventory click:
    if slot clicked slot of player is a enchanted_book of silk touch 1:
        cancel event
	

bonne soirée 

merci d'avance

Ps: désoler pour l'orthographe 

 

Modifié par TheRemiDev
Ajout des balises de code

16 réponses à cette question

Messages recommandés

  • 0
Posté(e) (modifié)

Salut, tu veut bloquer l'enchant pour que ne pas pouvoir le mettre dans une enclume par exemple ? Si oui (quand tu va fusionner)

 

TuSke

[on] anvil [item] (combine|merge) 

event-player, event-inventory

Skelett

[on] ([item] anvil prepare|prepare [item] anvil)

Quand tu va le déplacer, je crois ^^'l

 

Modifié par > NoaGamingFR
  • 0
Posté(e)
il y a 25 minutes, Christian a dit :

bin comment bloquer le livre skil touch avec ce que tu ma donner 

Ah, tu veut carrèment empêcher la pêche de ce livre, l'enchant etc ? Pas possible je crois :x (pour la pêche), sinon on enchant:

  • 0
Posté(e)
il y a 3 minutes, > NoaGamingFR a dit :

Ah, tu veut carrèment empêcher la pêche de ce livre, l'enchant etc ? Pas possible je crois :x (pour la pêche), sinon on enchant:

non engros sois je veut qu'il puisse pas le le bouger dans l'inventaire (donc avec on clik) sois désenchanter l'objet skiltouch mais en retirant que skil touch mais pas les autres enchantement ou encore le bloquer de puis l'enclume mais j'arrive pas 

  • 0
Posté(e) (modifié)
Il y a 5 heures, Christian a dit :

Bonjour, Bonsoir, j'ai mon serveur MC en 1.8.8, & Skript  2.2-dev36.

Le but est de bloquer totalement l'enchantement skiltouch

J'ais bloquer l'enchantement skiltouch mais je n'arrive pas a bloquer les livre skiltouch que l'on peut récupérer dans le monde Minecraft 

donc jais mis en place juste si on a un objet enchanter skiltouch sa supprime les enchantement mais sa les supprime tousse lia t'il un solution pour sois bloquer la récupération des livres ou sois de retirer juste l'enchantement skiltouch des objet 

 

Voicis mon code :

 


	on click:
    if tool of the player is enchanted with Silk Touch 1:
        disenchant the player's tool
	
on enchant:
    set {_item} to event-item
    wait 1 ticks
    if event-item is enchanted with Silk Touch 1:
        disenchant {_item}
        message "&c L'enchantement Silk Touch est bloquer"
	        
on inventory click:
    if slot clicked slot of player is a enchanted_book of silk touch 1:
        cancel event
	

 

bonne soirée 

merci d'avance

Ps: désoler pour l'orthographe 

 

 

il y a une heure, Christian a dit :

non engros sois je veut qu'il puisse pas le le bouger dans l'inventaire (donc avec on clik) sois désenchanter l'objet skiltouch mais en retirant que skil touch mais pas les autres enchantement ou encore le bloquer de puis l'enclume mais j'arrive pas 

Voila j'ai enfin retrouvé la fonction, je l'explique

function removeEnch(i: item, e: enchantment):

	    loop enchantments of {_i}: #Loop tous les enchantements de l'item

	         add "%loop-value% %level of loop-value of {_i}%" parsed as an enchantment type to {_e::*} #Save tous les enchantements de l'item dans une variable

	    disenchant {_i} #Retire tous les enchantements

	    loop {_e::*}: #Loop tous les enchantements de la variable

	        if "%loop-value%" does not contain "%{_e}%": #Si l'enchantement ne contiens pas {_e} qui est pour notre cas Silk Touch, enchanter l'item !

	            enchant {_i} with loop-value


on click:
    if player's tool is enchanted with silk touch:
        removeEnch(player's tool, silk touch)[/CODE]

Ps: L'enchantement est retiré mais pas remis ensuite !

 

J'ai trouvé cette fonction ici:

https://forums.skunity.com/threads/removing-specific-enchantment.3979/

 

Voila bonne soirée

Modifié par MGamer91
  • 0
Posté(e) (modifié)
il y a 24 minutes, MGamer91 a dit :

 

Voila j'ai enfin retrouvé la fonction, je l'explique:

 


function removeEnch(i: item, e: enchantment):


  loop enchantments of {_i}: #Loop tous les enchantements de l'item

    add "%loop-value% %level of loop-value of {_i}%" parsed as an enchantment type to {_e::*} #Save tous les enchantements de l'item dans une variable

  disenchant {_i} #Retire tous les enchantements

  loop {_e::*}: #Loop tous les enchantements de la variable

    if "%loop-value%" does not contain "%{_e}%": #Si l'enchantement ne contiens pas {_e} qui est pour notre cas Silk Touch, enchanter l'item !

      enchant {_i} with loop-value

on click:

        if player's tool is enchanted with silk touch:

            removeEnch(player's tool, silk touch)[/CODE]

 

Ps: L'enchantement est retiré mais pas remis ensuite !

 

J'ai trouvé cette fonction ici:

https://forums.skunity.com/threads/removing-specific-enchantment.3979/

 

Voila bonne soirée

je n'est pas réussie même avec ton code a la fin de ton lien il dise qui arrive pas a bien re m'être  les niveau mais de tout facons ji arrive pas 

et aussi je pense il y a plus simple juste bloquer le clik sur les livre enchanter skil touch mais jarrive pas a trouver leur nom dans skript 

merci quand même

 

Modifié par Christian
  • 0
Posté(e)
il y a 21 minutes, > NoaGamingFR a dit :

				
on left click:
	if player's tool is enchanted with silk touch:
		disenchant the player's tool
				

 

le problème c'est que sa supprime tout les enchantement ce code la ji avait déjà penser merci quand même 

 

  • 0
Posté(e)
il y a 7 minutes, Christian a dit :

je n'est pas réussie même avec ton code a la fin de ton lien il dise qui arrive pas a bien re m'être  les niveau mais de tout facons ji arrive pas 

et aussi je pense il y a plus simple juste bloquer le clik sur les livre enchanter skil touch mais jarrive pas a trouver leur nom dans skript 

merci quand même

 

Chez moi ça marche parfaitement dommage

  • 0
Posté(e)

j'ais enfin trouver voicis le code pour bloquer totalement lentement skil touch 

````

on enchant:
    set {_item} to event-item
    wait 1 ticks
    if event-item is enchanted with Silk Touch 1:
        disenchant {_item}
        message "&c L'enchantement Silk Touch est bloquer"


        

function removeEnch(i: item, e: enchantment):
    loop enchantments of {_i}: 
        add "%loop-value% %level of loop-value of {_i}%" parsed as an enchantment type to {_e::*}
    disenchant {_i}
    loop {_e::*}: 
        if "%loop-value%" does not contain "%{_e}%": 
            enchant {_i} with loop-value

on click:
    if player's tool is enchanted with silk touch:
        removeEnch(player's tool, silk touch)           
        send "&4enchantement skil touch désactiver"      
````

merci a touse 

bonne soirée 

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.