Aller au contenu

Messages recommandés

Posté(e) (modifié)

Bonsoir, je me présente à vous, Skyvix, modérateur d'un serveur médiévale en 1.12.2.

Alors, cela fait donc plusieurs jours que je travaille là dessus mais n'aboutit à rien, j'essaie de travailler sur un skript qui me permettrait d'ajouter à une région le fait qu'un joueur puisse pêcher des items customs et non les items de base de mc dans une région précise.

Plus précisément, en gros, pour une quête, un joueur doit aller à X endroit (nom de la région) et doit y pêcher certains items renommés.

j'aurai bien voulu faire un skript qui me permet d'avoir des commandes en tant que op qui me permet d'ajouter des items à cette région et de définir leurs chances de pouvoir  pêcher ses items, par exemple des commandes du genre : /peche add itemauchoix nomauchoix et /peche chance pourcentage itemauchoix nomauchoix et une pour remove ces items

je sais pas si c'est possible à faire sinon pas grave ^^

Si quelqu'un aurait le temps et la patience de pouvoir m'aider ce serait avec un grand plaisir ^^ 

Si jamais, pour me joindre plus facilement, je suis disponible sur discord avec le pseudo : Skyvix #8942

La version que j'utilise de skript est la dev37c.

Merci pour votre lecture et au plaisir,

Skyvix

Modifié par Skyvix
Posté(e)
il y a 36 minutes, Skyvix a dit :

Bonsoir, je me présente à vous, Skyvix, modérateur d'un serveur médiévale en 1.12.2.

Alors, cela fait donc plusieurs jours que je travaille là dessus mais n'aboutit à rien, j'essaie de travailler sur un skript qui me permettrait d'ajouter à une région le fait qu'un joueur puisse pêcher des items customs et non les items de base de mc dans une région précise.

Plus précisément, en gros, pour une quête, un joueur doit aller à X endroit (nom de la région) et doit y pêcher certains items renommés.

j'aurai bien voulu faire un skript qui me permet d'avoir des commandes en tant que op qui me permet d'ajouter des items à cette région et de définir leurs chances de pouvoir  pêcher ses items, par exemple des commandes du genre : /peche add itemauchoix nomauchoix et /peche chance pourcentage itemauchoix nomauchoix et une pour remove ces items

je sais pas si c'est possible à faire sinon pas grave ^^

Si quelqu'un aurait le temps et la patience de pouvoir m'aider ce serait avec un grand plaisir ^^ 

Si jamais, pour me joindre plus facilement, je suis disponible sur discord avec le pseudo : Skyvix #8942

La version que j'utilise de skript est la dev37c.

Merci pour votre lecture et au plaisir,

Skyvix

Je peux faire ça pour toi demain soir ^^ 

Résumons pour confirmer, tu veux  pouvoir définir dans une zone quel items sont péchable et avec quel taux de drop (et de les supprimer)  

 

Posté(e) (modifié)

C'est exactement ça ^^ et si possible donner un nom aux items qu'on peut pêcher ^^

Oh merci, c'est très gentil de ta part !

Modifié par Skyvix
Posté(e)
Il y a 21 heures, Skyvix a dit :

C'est exactement ça ^^ et si possible donner un nom aux items qu'on peut pêcher ^^

Oh merci, c'est très gentil de ta part !

Il ne sera pas finis pour ce soir, mais pour te rassurer j'ai même fait mieux que ce tu demande (avec un GUi configurable pour chaque zone etc...) par contre tu veux que si il ne pèche rien ça lui donne quoi (un poisson simple ) ?

Posté(e)

@uiytt Oh merci bien ! En gros, justement, j'aimerai qu'il puisse pêcher des items customs, item qui posséderaient un nom spécial, il ne faudrait pas que le joueur puisse pêcher les poissons normaux de mc, en gros, ce skript de pêche serait utilisé dans une de nos zone de quête qui est déjà mise en place où les joueurs ne peuvent avoir sur eux que des items spéciaux que nous avons enregistré grâce à un plugin sinon ils sont tp en dehors de cette zone 

Posté(e)
Il y a 2 heures, Skyvix a dit :

@uiytt Oh merci bien ! En gros, justement, j'aimerai qu'il puisse pêcher des items customs, item qui posséderaient un nom spécial, il ne faudrait pas que le joueur puisse pêcher les poissons normaux de mc, en gros, ce skript de pêche serait utilisé dans une de nos zone de quête qui est déjà mise en place où les joueurs ne peuvent avoir sur eux que des items spéciaux que nous avons enregistré grâce à un plugin sinon ils sont tp en dehors de cette zone 

Oui mais comme tu peux mettre un taux de chance, il est possible que le joueur ne pèche rien et du coup tu veux que ça ne donne aucun item ? 

Posté(e)

Finis ^^ 

Alors il te faut skript-mirror , tuske et skquery-lime

Comment ça marche ?

fait /zf nomdetazone 

ça t'ouvrira un GUI, la suite tu as juste à lire pour comprendre (au pire demande moi je t'expliquerai en détails) 

 

Infos: 

1535635624-2018-08-30-15-24-14.png

Le skript va dabord testé pour une zone le taux de drop tu premier objet puis celui du deuxième si le joueur n'a pas réussit le premier puis le 3eme si le joueur n'a pas réussit ni le premier ni le deuxième etc... Donc par exemple si la diorite à ici un taux de drop de 30% et la peau de vache un taux de drop de 50%, il faut pour avoir la hache en bois réussir à ne pas obtenir la diorite puis réussir à ne pas obtenir la peau de vache...

 

P.S : Puis-je posté ce skript en tant que petite ressource car on sait jamais ça peut être pratique et je trouve ce skript plutôt bien ^^ @Skyvix

 

CODE:

import:
	org.bukkit.event.player.PlayerFishEvent


on PlayerFishEvent with priority normal:
	if "%event.getState().name()%" is "CAUGHT_FISH":
		set {_p} to event.getPlayer()
		set {_r} to "%region at {_p}%"
		set {_m::*} to {_r} split at " "
		loop {ZF::%{_m::1}%::*}:
			chance of {ZF::%{_m::1}%::%loop-value%::pourcentage}%:
				event.getCaught().setItemStack({ZF::%{_m::1}%::%loop-value%::item})
				stop

		set {_item} to "air" parsed as item
		event.getCaught().setItemStack({_item})

command /zf <text>:
	aliases: zonefishing
	permission: zonefishing.define
	trigger:
		if {ZF::ID} is not set:
			set {ZF::ID} to 0
		zonefishing(player,arg 1,1)

function zonefishing(p: player,z: text,page: number):
	set {_s} to 1
	set {_i} to 1
	loop {ZF::%{_z}%::*}:
		if {_s} is 29:
			add 1 to {_i}
			set {_s} to 1
		add loop-value to {_liste.%{_i}%::*}
		add 1 to {_s}
	open virtual chest inventory with size 6 with name "&8ZF - &f%{_z}%" to {_p}
	make a gui slot 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 17, 18, 26, 27, 35, 36, 44, 45, 46, 48, 49, 50, 52 and 53 of {_p} with 1 gray stained glass pane named "&f"
	if {_page} is not 1:
		make a gui slot 47 of {_p} with skull of ("MHF_ArrowLeft" parsed as an offline player) named "Page précédante" to run:
			set {_page2} to {_page} - 1
			zonefishing({_p},{_z},{_page2})
	else:
		make a gui slot 47 of {_p} with 1 gray stained glass pane named "&f"
	set {_i2} to {_page} + 1
	if {_liste.%{_i2}%::*} is set:
		make a gui slot 51 of {_p} with skull of ("MHF_ArrowRight" parsed as an offline player) named "Page suivante" to run:
			zonefishing({_p},{_z},{_i2})
	else:
		make a gui slot 51 of {_p} with 1 gray stained glass pane named "&f"
	set {_s} to 10
	loop {_liste.%{_page}%::*}:
		if {_s} is 17:
			set {_s} to 19
		else if {_s} is 26:
			set {_s} to 28
		else if {_s} is 35:
			set {_s} to 37
		set {_loopvalue} to loop-value
		make a gui slot {_s} of {_p} with {ZF::%{_z}%::%{_loopvalue}%::item} with lore "||&8>> &cClique droit pour supprimer&l ||&8>> &aClique gauche pour changer le drop ||&8>> &7Drop: &6%{ZF::%{_z}%::%{_loopvalue}%::pourcentage}%%%&l" to run:
			if clicked type is equal to right mouse button:
				delete {ZF::%{_z}%::%{_loopvalue}%::item}
				delete {ZF::%{_z}%::%{_loopvalue}%::pourcentage}
				delete {ZF::%{_z}%::%{_loopvalue}%}
				zonefishing({_p},{_z},{_page})
			else if clicked type is equal to left mouse button:
				zonefishing3({_p},{_z},{_page},{_loopvalue})

		add 1 to {_s}
	set {_s} to 10
	loop 28 times:
		if {_s} is 17:
			set {_s} to 19
		else if {_s} is 26:
			set {_s} to 28
		else if {_s} is 35:
			set {_s} to 37
		if slot {_s} of {_p}'s current inventory is air:
			format gui slot {_s} of {_p} with 1 light gray stained glass pane named "&7Ajouter un item" to run:
				zonefishing2({_p},{_z},{_page})
		add 1 to {_s}
	if size of {_liste.%{_page}%::*} is 28:
		if {_liste.%{_i2}%::*} is not set:
			make a gui slot 51 of {_p} with skull of ("MHF_ArrowRight" parsed as an offline player) named "Page suivante" to run:
				zonefishing({_p},{_z},{_i2})

function zonefishing2(p: player,z: text,page: number):
	open virtual chest inventory with size 3 with name "&8ZF - &f%{_z}%" to {_p}
	make a gui slot 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 14, 15, 16, 17, 18, 19, 20, 21, 23, 24, 25 and 26 of {_p} with 1 gray stained glass pane named "&f"
	make a gui slot 10 of {_p} with 1 paper named "&cInstruction:" with lore "&7Placez l'item que vous souhaitez ||&7péchable dans le slot vide ||&7puis appuyez sur le bouton ||&7confirmer"
	make a gui slot 22 of {_p} with 1 emerald block named "&aConfirmer" to run:
		if slot 13 of {_p}'s current inventory is not air:
			set {ZF::%{_z}%::%{ZF::ID}%} to {ZF::ID} 
			set {ZF::%{_z}%::%{ZF::ID}%::item} to slot 13 of {_p}'s current inventory
			set {ZF::%{_z}%::%{ZF::ID}%::pourcentage} to 100
			zonefishing3({_p},{_z},{_page},{ZF::ID})
			add 1 to {ZF::ID}
			
function zonefishing3(p: player,z: text,page: number,ID: number):
	open virtual chest inventory with size 3 with name "&8ZF - &f%{_z}%" to {_p}
	make a gui slot 0, 1, 2, 3, 5, 6, 7, 8, 9, 17, 18, 19, 20, 21, 23, 24, 25 and 26 of {_p} with 1 gray stained glass pane named "&f"
	make a gui slot 10 of {_p} with 1 red stained glass pane named "&c-10" to run:
		remove 10 from {ZF::%{_z}%::%{_ID}%::pourcentage}
		if {ZF::%{_z}%::%{_ID}%::pourcentage} is smaller than 0:
			set {ZF::%{_z}%::%{_ID}%::pourcentage} to 0
		make a gui slot 13 of {_p} with 1 name tag named "&6%{ZF::%{_z}%::%{_ID}%::pourcentage}%%%"
	make a gui slot 11 of {_p} with 1 red stained glass pane named "&c-5" to run:
		remove 5 from {ZF::%{_z}%::%{_ID}%::pourcentage}
		if {ZF::%{_z}%::%{_ID}%::pourcentage} is smaller than 0:
			set {ZF::%{_z}%::%{_ID}%::pourcentage} to 0
		make a gui slot 13 of {_p} with 1 name tag named "&6%{ZF::%{_z}%::%{_ID}%::pourcentage}%%%"
	make a gui slot 12 of {_p} with 1 red stained glass pane named "&c-1" to run:
		remove 1 from {ZF::%{_z}%::%{_ID}%::pourcentage}
		if {ZF::%{_z}%::%{_ID}%::pourcentage} is smaller than 0:
			set {ZF::%{_z}%::%{_ID}%::pourcentage} to 0
		make a gui slot 13 of {_p} with 1 name tag named "&6%{ZF::%{_z}%::%{_ID}%::pourcentage}%%%"


	make a gui slot 14 of {_p} with 1 green stained glass pane named "&a+1" to run:
		add 1 to {ZF::%{_z}%::%{_ID}%::pourcentage}
		if {ZF::%{_z}%::%{_ID}%::pourcentage} is higher than 100:
			set {ZF::%{_z}%::%{_ID}%::pourcentage} to 100
		make a gui slot 13 of {_p} with 1 name tag named "&6%{ZF::%{_z}%::%{_ID}%::pourcentage}%%%"
	make a gui slot 15 of {_p} with 1 green stained glass pane named "&a+5" to run:
		add 5 to {ZF::%{_z}%::%{_ID}%::pourcentage}
		if {ZF::%{_z}%::%{_ID}%::pourcentage} is higher than 100:
			set {ZF::%{_z}%::%{_ID}%::pourcentage} to 100
		make a gui slot 13 of {_p} with 1 name tag named "&6%{ZF::%{_z}%::%{_ID}%::pourcentage}%%%"
	make a gui slot 16 of {_p} with 1 green stained glass pane named "&a+10" to run:
		add 10 to {ZF::%{_z}%::%{_ID}%::pourcentage}
		if {ZF::%{_z}%::%{_ID}%::pourcentage} is higher than 100:
			set {ZF::%{_z}%::%{_ID}%::pourcentage} to 100
		make a gui slot 13 of {_p} with 1 name tag named "&6%{ZF::%{_z}%::%{_ID}%::pourcentage}%%%"

	make a gui slot 4 of {_p} with {ZF::%{_z}%::%{_ID}%::item}

	make a gui slot 13 of {_p} with 1 name tag named "&6%{ZF::%{_z}%::%{_ID}%::pourcentage}%%%"
	make a gui slot 22 of {_p} with 1 emerald block named "&aConfirmer" to run:
		zonefishing({_p},{_z},{_page})

 

  • J'aime 1
Posté(e)

Merci infiniment @uiytt ! Bien-sûr que tu peux poster ceci en tant que source ! Par contre, j'ai deux erreurs quand j'ai reload le skript:

[16:00:47 ERROR]: can't understand this condition: 'clicked type is equal to right mouse button' (peche.sk, line 59: if clicked type is equal to right mouse button:')

[16:00:47 ERROR]: 'else if' has to be placed just after another 'if' or 'else if' section (peche.sk, line 64: else if clicked type is equal to left mouse button:')

je t'ai envoyé les messages depuis la console, tu saurais d'où ça peut venir ? ?

 

Posté(e)
il y a 6 minutes, Skyvix a dit :

Merci infiniment @uiytt ! Bien-sûr que tu peux poster ceci en tant que source ! Par contre, j'ai deux erreurs quand j'ai reload le skript:

[16:00:47 ERROR]: can't understand this condition: 'clicked type is equal to right mouse button' (peche.sk, line 59: if clicked type is equal to right mouse button:')

[16:00:47 ERROR]: 'else if' has to be placed just after another 'if' or 'else if' section (peche.sk, line 64: else if clicked type is equal to left mouse button:')

je t'ai envoyé les messages depuis la console, tu saurais d'où ça peut venir ? ?

 

Oui, il te faut la dev 35 min : https://github.com/SkriptLang/Skript/releases pour skript

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.