1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

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

Тема в разделе "Руководства, инструкции, утилиты", создана пользователем Flajakay, 5 фев 2019.

  1. YarTim

    YarTim Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Kkktttuu
    эххх... Просто после улучшения проходит эти 5 сек. и оно превращается в железо. То-есть если я улучшаю дерево в камень и у меня есть железо, проходит эти 5 секунд задержки и блок превращается в железный... =(
     
  2. YarTim

    YarTim Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Kkktttuu
    Ладно... Мне так не ловко тебя напрягать. Забей на эту фигню с улучшение. Емли тебе не трудно лучше сделать скрипт который удаляет дроп. То-есть: когда происходит взрыв, ждать 0.2 секунд, удалить весь дроп в виде досток, булыжника, железного блока и алмазного блока. Сорри если напрягаю, просто ты один из немногих ХОРОШЫХ (с большой буквы) людей который мне помогают... спасибо....
     
  3. Saharo4ek

    Saharo4ek Активный участник Пользователь

    Баллы:
    96
    Имя в Minecraft:
    tin
    Заплати - сделает
    Эта тема создана для помощи, а не "сделайте всё за меня за спасибо"
     
  4. Автор темы
    Flajakay

    Flajakay Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Flajakay
    Попробуй:
    Код:
    on rightclick:
        if event-block is planks:
            if player's tool is paper named "апгрейд структур":
               
                if player's inventory contains "8 of cobblestone" parsed as itemtype:
                    remove 8 of cobblestone from player
                    set event-block to cobblestone
                    set {%player%.upgr.cooldown} to true
                    wait 5 seconds
                    set {%player%.upgr.cooldown} to false
                else:
                    send "&4У вас недостаточно ресурсов для этого крафта"
            stop      
        if event-block is cobblestone:
            if {%player%.upgr.cooldown} is false:
                if player's tool is paper named "апгрейд структур":
                   
                    if player's inventory contains "8 of iron ingot" parsed as itemtype:
                        remove 8 of iron ingot from player
                        set event-block to iron block
                    else:
                        send "&4У вас недостаточно ресурсов для этого крафта"  
            else:
                send "&4Вы должны подожать 5 сек., прежде чем вновь улучшить блок"
     
  5. YarTim

    YarTim Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Kkktttuu
    Плз, добавь еще сюда улучшение из железного в алмазный блок за 4 алмаза.
     
  6. YarTim

    YarTim Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Kkktttuu
    Просто я пытался, но у меня происходила какая-то фигня в игре...
     
  7. YarTim

    YarTim Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Kkktttuu
    Слушай, я тут немного еще переписал скрипт. Т.е. я добавил еще улучшение из железного в алмазный НО!

    on rightclick:
    if event-block is planks:
    if player's tool is paper named "Улучшение блоков":

    if player's inventory contains "8 of cobblestone" parsed as itemtype:
    remove 8 of cobblestone from player
    set event-block to cobblestone
    set {%player%.upgr.cooldown} to true
    wait 0.1 seconds
    set {%player%.upgr.cooldown} to false
    else:
    send "&4Недостаточно 8 КАМНЯ для улучшения ДЕРЕВЯННОГО БЛОКА!"
    stop
    if event-block is cobblestone:
    if {%player%.upgr.cooldown} is false:
    if player's tool is paper named "Улучшение блоков":

    if player's inventory contains "8 of iron ingot" parsed as itemtype:
    remove 8 of iron ingot from player
    set event-block to iron block
    set {%player%.upgr.cooldown} to true
    wait 0.1 seconds
    set {%player%.upgr.cooldown} to false
    else:
    send "&4Недостаточно 8 ЖЕЛЕЗА для улучшения КАМНЯ!"
    else:
    send "&4Вы должны подожать 0.1 сек."
    stop
    if event-block is iron block:
    if {%player%.upgr.cooldown} is false:
    if player's tool is paper named "Улучшение блоков":

    if player's inventory contains "4 of diamond" parsed as itemtype:
    remove 4 of diamond from player
    set event-block to diamond block
    else:
    send "&4Недостаточно 4 АЛМАЗОВ для улучшения ЖЕЛЕЗНОГО БЛОКА!"
    else:
    send "&4Вы должны подожать 0.1 сек."

    Когда я в самой игре тыкаю ПКМ по кабле (без предмета "Улучшение блоков" в руках) он выполняет действие, т.е. либо пишет что нет ресов либо апгрейдит. Что делать?! Похоже параметр if player's tool не соблюдается... (16 строка). P.s. ХЗ почему рубакит не видит в сообщении пробелов...
     
  8. YarTim

    YarTim Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Kkktttuu
    Я это поправил
     
  9. YarTim

    YarTim Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Kkktttuu
    Вот это уже я без тебя не сделаю.... Когда взрывается обычная "дубовая" или же "wooden" дверь на ее место нужно установить к примеру берёзовую дверь. Я пытался с твоим скриптом для блоков, у меня не вышло....
     
  10. Автор темы
    Flajakay

    Flajakay Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Flajakay
    Код:
    on explode:
       loop exploded blocks:
           if block is oak door:
               set {_e::%location of loop-value%} to true
               set {_e::%location of loop-value%::*} to location of loop-value
               set block at {_e::%loop-index%::1} to birch door
    попробуй
     
  11. YarTim

    YarTim Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Kkktttuu
    Мне нужен еще скрипт тип когда ты поднимаешь блок досок к примеру, через 0.1 секунду они пропадают из твоего инвентаря.
     
  12. YarTim

    YarTim Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Kkktttuu
    Нет....
     
  13. YarTim

    YarTim Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Kkktttuu
    Нет, стоп, лучше сделай чтобы после 0.1 сек. после взрыва удвляло весь дроп в виде определенных блоков (доски, каменные кирпичи, алмазный блок, железный блок)
     
  14. Автор темы
    Flajakay

    Flajakay Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Flajakay
    С дверями ща, но что касается этого - рли намного проще сделать на джаве) кину позже чуток готовое)
     
  15. YarTim

    YarTim Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Kkktttuu
    Угу, спс
     
  16. Автор темы
    Flajakay

    Flajakay Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Flajakay
    Обошелся без джавы.

    Код:
    on explode:
        set {explosion::%event-location%} to event-location
        wait 0.5 second
        delete {explosion::%event-location%}
    
    on item spawn:
        items within entity event-entity is planks or stone brick or iron block or diamond block #можешь вписывать сюда любые блоки
        loop {explosion::*}:
            distance between loop-value and event-location is less than 5 #это радиус
            cancel event
     
  17. YarTim

    YarTim Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Kkktttuu
    Ошибку при релоаде скрипта с удалением дропа выдает....
     

    Вложения:

  18. Автор темы
    Flajakay

    Flajakay Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Flajakay
    Ам. Тут не я виноват) это у тебя что-то сломалось. Если бы ошибка в скрипте была, тебе бы так и написало.
     
  19. YarTim

    YarTim Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Kkktttuu
    Плз, бро, расставь пробелы как нужно. Не совсем понимаю...

    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}

    - Это скрипт на здоровье для двери. Просто пробелы в сообщении не отображались. Спс.
     
  20. YarTim

    YarTim Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    Kkktttuu
    Отлично! Ты был прав, проблема не в sCript's, а в моем sKript's. =)
     

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