Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Туториал Skript - легкий и понятный скриптовый язык

Плз, бро, расставь пробелы как нужно. Не совсем понимаю...

on break of wooden door:
if metadata "health" of clicked block is not set:
set metadata "health" of clicked block to 10
else:
set {_meta} to metadata "health" of clicked block
remove 1 from {_meta}
if {_meta} is 0:
delete metadata "health" of clicked block
else:
cancel event
set metadata "health" of clicked block to {_meta}

- Это скрипт на здоровье для двери. Просто пробелы в сообщении не отображались. Спс.
Код:
on break of wooden door:
    if metadata "health" of clicked block is not set:
        set metadata "health" of clicked block to 10
    else:
        set {_meta} to metadata "health" of clicked block
        remove 1 from {_meta}
    if {_meta} is 0:
        delete metadata "health" of clicked block
    else:
        cancel event
        set metadata "health" of clicked block to {_meta}
 
Есть ещё варианты реализации той же системы взрыва блоков только с дверями??? Скрипт на ХП для дверей не работает. Я в тупике (((
 
Слушай, а как в наш старый скрипт со взрывом блока переделать под двери так - взрываешь берёзовую дверь - ставится дубовая и т.д. Просто хотел задать вопрос: как впихнуть в тот самый скрипт переменную? Всм у блока двери есть переменная %open% - она отвечает за состояние двери (открыта/закрыта), и вот ее нужно как-нибудь впихнуть.

Типо:

loop-block is birch door
####if variable %open% of loop-block is true

P.s. Знак "#" в моем примере используется в качестве обозначения пробела.

Скорее всего это не правильно, но это только пример.
 
А как записать в скрипт вместо слов айди? К примеру не:
loop-block is oak door
А:
loop-block is 64
Или:
loop-block is minecraft:wooden_door

(Это тупо пример, я пробовал так делать - скрипт это не воспринимает)
 
Проблемка. Когда ввожу название мобов с одинаковым словом (например, "guardian" и "elder guardian", "horse" и "skeleton horse", "zombie" и "zombie villager" и вписываю им действия, действия одного моба происходят при убийстве другого. Например, вписал действия зомби жителю и зомби, при убийстве зомби жителя происходят действия зомби, и так со всеми мобами, указанными выше. Баг, или я что-то делаю не так?

Paper 1.15.2, Skript 2.4.1
Код:
#Zombie
on death of zombie:
    if attacker is a player:
        chance of 100%:
            drop zombie spawn egg at victim's location
            send "&7[&6Дроп&7] &fИгрок &6%attacker% &fвыбил яйцо: &6Зомби&f!" to players
            play sound "ui.toast.challenge_complete" with volume 0.5 at attacker
            launch star firework colored lime and red and blue and light blue and cyan and green and yellow and pink and gold and purple and white at attacker's location timed 1
            send title "&6Поздравляем!" with subtitle "&fВы выбили яйцо призыва: &6Зомби&f!" to attacker for 5 seconds
            stop
#Zombie Villager
on death of zombie villager:
    if attacker is a player:
        chance of 100%:
            drop zombie villager spawn egg at victim's location
            send "&7[&6Дроп&7] &fИгрок &6%attacker% &fвыбил яйцо: &6Зомби-жителя&f!" to players
            play sound "ui.toast.challenge_complete" with volume 0.5 at attacker
            launch star firework colored lime and red and blue and light blue and cyan and green and yellow and pink and gold and purple and white at attacker's location timed 1
 
Последнее редактирование:
Проблемка. Когда ввожу название мобов с одинаковым словом (например, "guardian" и "elder guardian", "horse" и "skeleton horse", "zombie" и "zombie villager" и вписываю им действия, действия одного моба происходят при убийстве другого. Например, вписал действия зомби жителю и зомби, при убийстве зомби жителя происходят действия зомби, и так со всеми мобами, указанными выше. Баг, или я что-то делаю не так?

Paper 1.15.2, Skript 2.4.
Баг.
На 1.12.2 все работает нормально. Можешь разве что немного иначе попробовать:

Код:
on death:
    if victim is zombie villager:
        #...
        
    if victim is zombie:
        #...
Но вряд ли от этого что-то поменяется) Хотя хз
 
А как записать в скрипт вместо слов айди? К примеру не:
loop-block is oak door
А:
loop-block is 64
Или
loop-block is minecraft:wooden_door

(Это тупо пример, я пробовал так делать - скрипт это не воспринимает)
Зач тебе. Знаю, что можно в aliases-english.sk прописать, но никогда этого не делал) да и не зачем было
 
Зач тебе. Знаю, что можно в aliases-english.sk прописать, но никогда этого не делал) да и не зачем было
Просто когда я делал ту штуку со взрывом блоков и в коде было написано просто "oak door" то учитывается только дверь в положении east, а другие нет. Просто хотел попробовать написать "minecraft:wooden_door 1( или 2 или 3 или 4 и т.д.)"
 
Баг.
На 1.12.2 все работает нормально. Можешь разве что немного иначе попробовать:

Код:
on death:
    if victim is zombie villager:
        #...
       
    if victim is zombie:
        #...
Но вряд ли от этого что-то поменяется) Хотя хз
Не-а, не сработало, но спасибо)
 
Зач тебе. Знаю, что можно в aliases-english.sk прописать, но никогда этого не делал) да и не зачем было
А там можно проверять чтобы блок имел дату, к примеру 3. То-есть: 64:3 (дубовая дверь, повернутая в сторону 3). Или 64:8 - это верхняя часть двери
 
А там можно проверять чтобы блок имел дату, к примеру 3. То-есть: 64:3 (дубовая дверь, повернутая в сторону 3). Или 64:8 - это верхняя часть двери
Или в этих "алиасах" нельзя указывать дату блока?
 
Как сделать, чтобы при смерти человека банило?
 
Как сделать, чтобы при смерти человека банило?
Попробуй:
Код:
on death of player:
    make console execute command "kick %player% &cВы были забанены за то что &4погибли."
    wait 10 ticks
    make console execute command "/ban %player% &cВы были забанены за то что &4погибли."
 
Очень тупой вопрос, да и тема уже умирает, но, если кто-то ещё чекает, помогите:

Проблема с пробелами (в эффекте), пробовал сто раз их переставлять, но не получалось...Посмотреть вложение 56540

Код:
every 20 seconds:
    Loop all players:
        send loop-player title "&c&lEVENT STRENGTH" with subtitle "&aACTIVATED" for 2 seconds
        apply strength 2 to the loop-player 1 minute
Перед словами "apply strength...' во пераых, стоит 2 Таба, сотри их и сделай 8 пробелов.
 
Как сделать снижение прочности у предмета, при разрушении блока? Пытался использовать данный вариант: add 1 to player's held item's durability, но он при 0-ой прочности не ломается, а просто полоска идет в обратную сторону, а цифры в минус.
 
Кто может написать скрипт для того чтоб на определённый предмет можно было накинуть команду то есть например держа в руках лопату пишешь команду кнопку мыши и /effect speed 300 5 и когда ударил человека или что то другое то команда выполнялась и ещё нужно чтобы можно было кнопку мыши выбрать правую или левую?
 
Не могу понять как что либо затриггерить входя в ОПРЕДЕЛЕННЫЙ регион, 100% мегапросто, но я не могу взять это из воздуха ибо найти нужную инфу не удается.
Хелп...

PS
Так же не понял как телепортировать игроков в определенные координаты :\
В документациях написано " A location in a world. Locations are world-specific and even store a direction, e.g. if you save a location and later teleport to it you will face the exact same direction you did when you saved the location. "
Но чем и как эти локации сохранять? Не понимаю.

pspspspsps
Вроде как научился и добился своего, не знаю оптимальный ли способ нашел, но хоть какой то.
 
Последнее редактирование:
Не оч понимаю как работать с WG.
Нужно создать условие, если в определенном регионе 5 игроков, то телепортировать их по координатам x y z?
 

Поделиться этой страницей

Назад
Верх