Что ты имеешь ввиду под "авто мистик"? Объясни конкретно, что тебе надо.Привет помогите пж как сделать авто мистик
скорей, он хочет чтобы циклом спавнился мистик с рандом лутомЧто ты имеешь ввиду под "авто мистик"? Объясни конкретно, что тебе надо.
Мистик - сундук? Если да, то вот код для спавна сундукаскорей, он хочет чтобы циклом спавнился мистик с рандом лутом
Распиши проверки и удаление миста плиз если не сложноМистик - сундук? Если да, то вот код для спавна сундука
Блок цикла(mistikSpawn, 1200} -> Установить случайное значение(mistikSpawnCoord, ложишь кучу местоположений готовых) -> Установить блок(А тут не знаю, не имею возможность протестировать установку блока. Ну надо положить в местоположение mistikSpawnCoord и в блок сундук, наверное) -> Установить значение переменной(mistikIter = 0) -> Запустить цикл chtoTakoeMistik
Это спавн сундука раз в минуту, 1200 - время в тиках(20 тиков - 1 секунда)
Вот код для рандом лута:
Блок цикла(chtoTakoeMistik, 10) -> Установить случайное значение(mistikItem, ложишь кучу разных предметов в значения) -> Установить случайное значение(mistikItemSlot, от 0 до 26) -> Установить предмет в контейнер(В местоположение mistikSpawnCoord, в числа ложишь mistikItemSlot и в слот для динам. переменной ложишь mistikItem, слот для предмета оставляешь пустым) -> Прибавить к переменной(Может называется не так, но находится в Числах и там что-то с +=, в значения ложишь переменную mistikIter, число оставляешь пустым) -> Если значение(mistikIter = 10) { Остановить цикл(chtoTakoeMistik) }
Минусы моих вариантов - два сундука могут заспавниться на одном месте; два предмета могут установиться в один и тот же слот; предметы в сундуке могут повторяться.
Решается проверками, есть ли на месте спавна мистика какой-то блок и есть ли на месте слота какой-то предмет. Если надо - я распишу и проверки, и удаление мистика. (Хотя удаление мистика делается за 5 минут)
Завтра, лады?Распиши проверки и удаление миста плиз если не сложно
Спасибо <3. Чуть дальше напишу кое-что по твоему коду.Удаление можно сделать циклом
Цикл 20 (mistdelete)
[ Если переменная значение равно НЕ ( misticdelete, 0 )
Присв. Отнять ( misticdelete , 1 ) ]
[ Если переменная значение равно ( misticdelete, 0 )
Игровое Действие Поставить блок ( Динам. Переменная: mistikSpawnDelete , Блок: Пусто, Число: Пусто, Местоположение: mistikSpawnCoord ) Игровое действие остановить цикл ( misticdelete ) ]
Если что когда заспанится мистик запускай цикл удаления.
и для красоты можешь еще обновлять голограмму и вставлять туда Значнеие переменной misticdelete
А при создании мистика пиши вот так
Присв. Переменную ( misticdelete, 100 )
вместо 100 можешь любое число это как таймер
Надеюсь помог и максиму в лишний раз трудится ненадо)
Так как мы будем все равно удалять мистик - способ удаления от YouRaiBad подразумевает то, что на карте может находится одновременно только 1 мистик, то нам не понадобится проверка на нахождения блока на этом месте. Если ты хочешь много мистиков сразу - тебе надо сохранять координаты всех мистиков в массив, у каждого мистика должна быть своя переменная с таймером... Муторно это.Распиши проверки и удаление миста плиз если не сложно
У меня много баговСпасибо <3. Чуть дальше напишу кое-что по твоему коду.
Так как мы будем все равно удалять мистик - способ удаления от YouRaiBad подразумевает то, что на карте может находится одновременно только 1 мистик, то нам не понадобится проверка на нахождения блока на этом месте. Если ты хочешь много мистиков сразу - тебе надо сохранять координаты всех мистиков в массив, у каждого мистика должна быть своя переменная с таймером... Муторно это.
Насчёт кода YouRaiBad: по моей идеи нужно два удаления, когда игрок забирает все предметы из мистика и просто удаление по таймеру. Да, у YouRaiBad хороший код, если тебе помимо обычного удаления нужны всякие финтифлюшки с таймерами. Если не нужны - просто сделай цикл на 600 тиков(т.е спавн у нас идёт 1200:20=600 секунд, а тут у нас удаление 600:20=300 секунд) и делай "Поставить блок" из кода YouRaiBad. Ну и при спавне мистика ты точно так же запускаешь этот цикл на 600 тиков. Если мистик пуст - к сожалению нельзя никак это проверить, поэтому и удаления тут никак не сделать
Проверка, чтобы предмет не мог попасть в один и тот же слот - только костылем. На майнленде нельзя получать предмет, лежащий в определенном слоте, поэтому придётся делать костылем:
Функция(chtoTakoeMistik) -> Установить случайное значение(mistikItemSlot, от 0 до 26) -> Вывести массив в строку(масив mistikItems, mistikItemsString) -> Объединить текст(Динамическая переменная: mistikItemSlotString. Тексты: Текстовая переменная со значение ', mistikSlot, текстовая переменная со значение .0') -> Если текст НЕ содержит(mistikItemsString, mistikItemSlotString) -> { Установить случайное значение(mistikItem, ложишь кучу разных предметов в значения) -> Установить предмет в контейнер(В местоположение mistikSpawnCoord, в числа ложишь mistikItemSlot и в слот для динам. переменной ложишь mistikItem, слот для предмета оставляешь пустым) -> Добавить в конец массива(mistikItems, mistikItem) -> Прибавить к переменной(Может называется не так, но находится в Числах и там что-то с +=, в значения ложишь переменную mistikIter, число оставляешь пустым) -> Если значение НЕ(mistikIter = 10) { Ждать(1 тик) -> Вызвать функцию(chtoTakoeMistik) } } Иначе -> { Ждать(1 тик) -> Вызвать функцию(chtoTakoeMistik) }
Вот такое. Что я сделал:
1. Заменил цикл на функцию. Зачем - до этого заполнение мистика длилось 100 тиков, сейчас в идеале оно будет длится 1 тик, иногда оно будет идти дольше, но намного меньше чем до этого.
2. Добавил массив mistikItems. Этот массив тебе надо создавать в цикле создания мистика, прямо перед запуском функции chtoTakoeMistik(Функции заполнения этого самого мистика). В этом массиве будут хранится все слоты, куда мы уже поставили предметы.
3. Проверка, содержится ли число в массиве mistikItems. Если число содержится - значит в этот слот мы уже ставили предмет и надо заново запустить функцию - то есть заново сгенерировать число. Если оно не содержится - значит слот пуст и мы можем поставить на это место предмет
4. Зачем нужно "Объединить текст": Посмотреть вложение 1962 если мы просто будем искать в этом тексте число "1", то оно найдётся у нас два раза: #1 и '1.0'. По этому мы объединим цифру mistikItemSlot с двумя кавычками ' ', превратив просто 1 в '1'. Как видишь, само число у нас хранится в формате 1.0, но если мы объединяем число со строкой, то .0 магическим образом исчезает. Поэтому нам надо превратить 1 не просто в '1', а в '1.0'
Вроде всё объяснил. Если не понятно что-то - пиши
Ну напиши их.У меня много багов
Можно очистить сундук если у тебя не мега крутой супер продуманный как на фантайме или лайнтайме мистик.Если мистик пуст - к сожалению нельзя никак это проверить, поэтому и удаления тут никак не сделать
Может ты зайдёшь? 627055. У меня код выдаёт ошибку еще предметы не ставяться в сундукНу напиши их.
Предметы не ставятся - вероятно ты виноват в этом, потому что мой код чист: по логике не должно быть ошибок. Насчет зайти - нет.Может ты зайдёшь? 627055. У меня код выдаёт ошибку еще предметы не ставяться в сундук
И как? Нельзя же узнать, пуст ли сундук или пуст ли слот.Можно очистить сундук если у тебя не мега крутой супер продуманный как на фантайме или лайнтайме мистик.