Bonjour,
ceci devrait fonctionner.
import:
org.bukkit.event.block.BlockRedstoneEvent
org.bukkit.event.block.BlockPhysicsEvent
command /wl <text> <text> <timespan>:
#Exemple: wl RESEAU-1 emetteur 30 ticks
#Exemple: wl RESEAU-1 recepteur 30 ticks
trigger:
if arg-2 is "emetteur" or "recepteur":
set {RESEAU::%arg-1%::%arg-2%::loc} to target block's location
set {RESEAU::%arg-1%::time} to arg-3
set {RESEAU::%target block's location%::name} to arg-1
broadcast "%{RESEAU::%target block's location%::name}%"
send "§8Un §a%arg-2% §8pour le reseau §c%arg-1% §8a été défini en §e%location of target block% §f(Délai: §7%arg-3%§f)"
else:
send "§cType de raccord invalide. (emetteur|recepteur)"
on BlockPhysicsEvent:
set {_d} to event.getBlock()
set {_l} to location of block at {_d}
set {_n} to {RESEAU::%{_l}%::name}
if {RESEAU::%{_n}%::recepteur::loc} is {_l}:
event.getBlock() != event.getSourceBlock()
event.setCancelled(true)
on BlockRedstoneEvent:
set {_b} to event.getBlock()
set {_l} to location of block at {_b}
set {_n} to {RESEAU::%{_l}%::name}
if {RESEAU::%{_n}%::emetteur::loc} is {_l}:
wait {RESEAU::%{_n}%::time}
set {_r} to block at {RESEAU::%{_n}%::recepteur::loc}
set {_p} to {_b}.getBlockPower()
set {_d} to {_r}.getBlockData()
try {_d}.setPower({_p})
try {_r}.setBlockData({_d}, true)
(Nécessite l'add-on skript-mirror)