Aller au contenu

[1vs1] Vanish certaines personnes


Messages recommandés

Posté(e)

Version de minecraft / skript : 1.8

Type du skript : Vanish

Description du script en détails :

En gros je voudrais faire un skript 1vs1 mais qu'ils se passent tous dans une arène, donc en gros:

 

Il y a J1 , J2 et J3 à J40 (par exemple):

 

J1 se fight avec J2 et ils ne voient pas les joueurs J3 à J40.

 

Sinon pour un exemple plus propre, je voudrais un truc du genre comme sur rushy.fr puis vous faites clique droit sur l'épée en or.

 

Commandes eventuelles avec les permissions: /vanish

Autre précisions, bout de skript déjà fait, systèmes actuellement utilisés ...: Aucun

Posté(e)

Pour une commande /1vs1 <player> <player>:

arg 1 is a player

set {j1} to arg 1

arg 2 is a player

set {j2} to arg 2

hide all players to {j1}

hide all players to {j2}

hide {j1} to {j2}

hide {j2} to {j1}

set {sec} to 5

loop 5 times:

(tab) wait 1 second

(tab) send "Le combat commence dans {sec} secondes" to {j2}

(tab) send "Le combat commence dans {sec} secondes" to {j1}

(tab) remove 1 from {sec}

reveal {j1} to {j2}

reveal {j2} to {j1}

 

Ca devrait marcher remplace les (tab) pour une tabulation.

 

Si tu veux je peux te coder plus que ca dis moi de quoi tu as besoin.

Posté(e)

J'ai du modifier un peu le skript car sinon je me retrouvais avec environ 15 erreurs... De plus, les joueurs peuvent bouger avant le départ(je sais fixe) et dans le chat, tu as oublié les %% devant la variable

 

Mais avec ce skript la, il peut y avoir que 1 1vs1 simultané ?

 

Ducoup j'en suis à là:

command /1vs1 <player> <player>:
   trigger:
       if arg 1 is a player:
           set {j1} to arg 1
       if arg 2 is a player:
           set {j2} to arg 2
       hide all players to {j1}
       hide all players to {j2}
       hide {j1} to {j2}
       hide {j2} to {j1}
       teleport {j1} to {1vs1.spawn1}
       teleport {j2} to {1vs1.spawn2}
       set {sec} to 5
       set {freeze.%player%.1v1} to true
       set {freeze.%arg 2%.1v1} to true
       loop 6 times:
           wait 1 second
           send "Le combat commence dans %{sec}% secondes" to {j2}
           send "Le combat commence dans %{sec}% secondes" to {j1}
           remove 1 from {sec}
       set {freeze.%player%.1v1} to false
       set {freeze.%arg 2%.1v1} to false
       reveal {j1} to {j2}
       reveal {j2} to {j1}

on any move:
   if {freeze.%player%.1v1} is true:
       cancel event

command /setspawn1v11:
   permission: op
   trigger:
       set {1vs1.spawn1} to location of player

command /setspawn1v12:
   permission: op
   trigger:
       set {1vs1.spawn2} to location of player

 

Un screen de ce qu'il y a sur rushy.fr ?

Ceci tp dans l'arène: http://prntscr.com/d5dsqr

Après il y a plusieurs items et quand 2 joueurs font clique droit dessus sa lance un fight :

http://prntscr.com/d5dsyt

http://prntscr.com/d5dt2h

http://prntscr.com/d5dt4j

http://prntscr.com/d5dt6t

Posté(e)
J'ai du modifier un peu le skript car sinon je me retrouvais avec environ 15 erreurs... De plus, les joueurs peuvent bouger avant le départ(je sais fixe) et dans le chat, tu as oublié les %% devant la variable

 

Mais avec ce skript la, il peut y avoir que 1 1vs1 simultané ?

 

Ducoup j'en suis à là:

command /1vs1 <player> <player>:
   trigger:
       if arg 1 is a player:
           set {j1} to arg 1
       if arg 2 is a player:
           set {j2} to arg 2
       hide all players to {j1}
       hide all players to {j2}
       hide {j1} to {j2}
       hide {j2} to {j1}
       teleport {j1} to {1vs1.spawn1}
       teleport {j2} to {1vs1.spawn2}
       set {sec} to 5
       set {freeze.%player%.1v1} to true
       set {freeze.%arg 2%.1v1} to true
       loop 6 times:
           wait 1 second
           send "Le combat commence dans %{sec}% secondes" to {j2}
           send "Le combat commence dans %{sec}% secondes" to {j1}
           remove 1 from {sec}
       set {freeze.%player%.1v1} to false
       set {freeze.%arg 2%.1v1} to false
       reveal {j1} to {j2}
       reveal {j2} to {j1}

on any move:
   if {freeze.%player%.1v1} is true:
       cancel event

command /setspawn1v11:
   permission: op
   trigger:
       set {1vs1.spawn1} to location of player

command /setspawn1v12:
   permission: op
   trigger:
       set {1vs1.spawn2} to location of player

 

 

Ceci tp dans l'arène: http://prntscr.com/d5dsqr

Après il y a plusieurs items et quand 2 joueurs font clique droit dessus sa lance un fight :

http://prntscr.com/d5dsyt

http://prntscr.com/d5dt2h

http://prntscr.com/d5dt4j

http://prntscr.com/d5dt6t

pour aller plus vite tu peux faire

arg 1 is a player
set {j1} to arg 1
Au lieu de
if arg 1 is a player:
   set {j1} to arg 1

D'ailleurs mon code ne contient aucune erreur c'est juste que tu dois le glisser derrière ton code sinon efectivement ca n'a pas de sens.

j'ai juste oublier les%{sec}%

Posté(e)

Sauf que après le fight il faut clear l'inventaire et tp le joueur, je l'ai fait mais j'ai deux-trois soucis avec:

command /1vs1 <player> <player>:
   trigger:
       if arg 1 is a player:
           set {j1} to arg 1
       if arg 2 is a player:
           set {j2} to arg 2
       hide all players to {j1}
       hide all players to {j2}
       hide {j1} to {j2}
       hide {j2} to {j1}
       teleport {j1} to {1vs1.spawn1}
       teleport {j2} to {1vs1.spawn2}
       set {sec} to 5
       set {freeze.%player%.1v1} to true
       set {freeze.%arg 2%.1v1} to true
       set {start.%player%.1v1} to true
       set {start.%arg 2%.1v1} to true
       loop 6 times:
           wait 1 second
           send "Le combat commence dans %{sec}% secondes" to {j2}
           send "Le combat commence dans %{sec}% secondes" to {j1}
           remove 1 from {sec}
       set {freeze.%player%.1v1} to false
       set {freeze.%arg 2%.1v1} to false
       reveal {j1} to {j2}
       reveal {j2} to {j1}
       set helmet slot of {j2} to diamond helmet of protection 2 and unbreaking 3 named "&3Casque"
       set chestplate of {j2} to diamond chestplate of protection 2 and unbreaking 3 named "&3Plastron"
       set leggings of {j2} to diamond leggings of protection 2 and unbreaking 3 named "&3Jambière"
       set boots of {j2} to diamond boots of protection 2 and unbreaking 3 named "&3Bottes"
       set helmet slot of {j1} to diamond helmet of protection 2 and unbreaking 3 named "&3Casque"
       set chestplate of {j1} to diamond chestplate of protection 2 and unbreaking 3 named "&3Plastron"
       set leggings of {j1} to diamond leggings of protection 2 and unbreaking 3 named "&3Jambière"
       set boots of {j1} to diamond boots of protection 2 and unbreaking 3 named "&3Bottes"
       give {j1} diamond sword of unbreaking 3 and sharpness 2
       give {j2} diamond sword of unbreaking 3 and sharpness 2

on damage of a player:
   if {start.%victim%.1v1} is true:
       if damage is greater than or equal to health of victim:
           cancel event
           execute console command "/minecraft:clear %victim%"
           execute console command "/minecraft:clear %attacker%"
           execute console command "/tp %attacker% to %{1vs1.spawn}%"
           execute console command "/tp %victim% to %{1vs1.spawn}%"
           send "&b%attacker% &7a gagné contre &b%victim%" to attacker
           send "&b%attacker% &7a gagné contre &b%victim%" to victim

on any move:
   if {freeze.%player%.1v1} is true:
       cancel event

×
×
  • 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.