Creative+ Выборка по двум условиям

Ivelll

Участник
Регистрация
29 Мар 2024
Сообщения
4
Как выбрать мобов по двум условиям, допустим у меня в режиме есть зомби и жители, и мне надо нанести урон всем зомби в радиусе 5 блоков от игрока, но с системой выбора в коде Я смогу нанести урон либо всем зомби на карте, либо всем мобам в радиусе 5 блоков, включая жителей. Как выбрать мобов сразу по двум условиям?
 

onn512

Эксперт
Регистрация
2 Май 2023
Сообщения
152
Как выбрать мобов по двум условиям, допустим у меня в режиме есть зомби и жители, и мне надо нанести урон всем зомби в радиусе 5 блоков от игрока, но с системой выбора в коде Я смогу нанести урон либо всем зомби на карте, либо всем мобам в радиусе 5 блоков, включая жителей. Как выбрать мобов сразу по двум условиям?
Вот парочка костылей для решения:

Но всё-таки лучше бы добавили фильтрацию выборки по условию, чтобы не городить по 10+ блоков кода ради выборки по нескольким условиям.
 

Ivelll

Участник
Регистрация
29 Мар 2024
Сообщения
4
Вот парочка костылей для решения:

Но всё-таки лучше бы добавили фильтрацию выборки по условию, чтобы не городить по 10 блоков кода, чтобы выбрать по двум условиям.
Ну, у меня это к сожалению врятле сработает так как у всех зомби одно и тоже имя из за чего в массивах они будут помечены одинаково.
 

onn512

Эксперт
Регистрация
2 Май 2023
Сообщения
152
Ну, у меня это к сожалению врятле сработает так как у всех зомби одно и тоже имя из за чего в массивах они будут помечены одинаково.
Не смотри на ответ от @maxim34a, он часто бред писал. Посмотри на другие 2 последних от меня и @astr34.
 

tushonca

Участник
Регистрация
9 Май 2023
Сообщения
8
Как выбрать мобов по двум условиям, допустим у меня в режиме есть зомби и жители, и мне надо нанести урон всем зомби в радиусе 5 блоков от игрока, но с системой выбора в коде Я смогу нанести урон либо всем зомби на карте, либо всем мобам в радиусе 5 блоков, включая жителей. Как выбрать мобов сразу по двум условиям?
Вы можете сначала выбрать всех мобов в радиусе 5 блоков, а потом из них всех зомби.
 

Mee8YT

Эксперт
Регистрация
3 Май 2023
Сообщения
357
Ну, у меня это к сожалению врятле сработает так как у всех зомби одно и тоже имя из за чего в массивах они будут помечены одинаково.
дай зомбаку имя (с уникальным айди), и тогда сможешь воспользоваться фильтром от onn512 :d
 

onn512

Эксперт
Регистрация
2 Май 2023
Сообщения
152
Лучше, наверное, показать на очередном примере, только чуть более понятном (надеюсь).

Присвоение зомбокам уникального айди:
Форматирование (BB-код):
Событе игрока(Спавн существа):
    Если тип сщества(Яйцо призыва зомби):
        Прибавить(zombie_current_id += 1)
        Объединить текст(%default%_new_name = "Zombie №" + zombie_current_id)
        Установить имя(%default%_new_name)
Важно: переменная zombie_current_id сохранена.
Очень важно: не используй цветовые кода в именах зомби, иначе сломается костыль с несколькими выборками.


Пример выборки по нескольким условиям:
Форматирование (BB-код):
Событе игрока(Крадётся):
    Установить(%player%_player_pos = Текущее местоположение)
    Титл("", "&a&lУЛЬТА!")

    # Нулевой этап выборки: выбираем всех сущностей.
    Выбрать всех сущностей()
    Установить(%selected%_selection_stage = 0)

    # Первый этап: прибавляем 1 к переменной сущностей которые рядом с игроком.
    Выбрать сущности по Рядом(%player%_player_pos, 5)
    Прибавить(%selected%_selection_stage += 1)

    # Второй этап: прибавляем 1 к переменной сущностей которые являются зомби.
    Выбрать сущности по Тип(Яйцо призыва зомби)
    Прибавить(%selected%_selection_stage += 1)

    # Проверка пройденных этапов: выбираем сущности, которые прошли все этапы выборки,
    # то есть у которых переменная пройденных этапов ровна количеству этапов.
    Выбрать сущности по Значение равно(%selected%_selection_stage = 2)
    Урон(10) {Выборка}

Код в принципе очень простой, но в этих выборках очень просто запутаться.
 

Mee8YT

Эксперт
Регистрация
3 Май 2023
Сообщения
357
Код в принципе очень простой, но в этих выборках очень просто запутаться.
когда я делал metro2024, мне поставили задачу сделать систему радиации

там было до 7 стадий выборок (если игрок по условиям проходил кнч), вот там реально легко запутаться :d
 

legendaleto

Участник
Регистрация
31 Янв 2024
Сообщения
17
Как выбрать мобов по двум условиям, допустим у меня в режиме есть зомби и жители, и мне надо нанести урон всем зомби в радиусе 5 блоков от игрока, но с системой выбора в коде Я смогу нанести урон либо всем зомби на карте, либо всем мобам в радиусе 5 блоков, включая жителей. Как выбрать мобов сразу по двум условиям?
А нельзя выбрать мобов в радиусе 5 и если существо тип зомби => урон?
 

Mee8YT

Эксперт
Регистрация
3 Май 2023
Сообщения
357
Ты не понял
Сначало идет выборка моды в радиусе и потом без выборок ставить условие "если существо тип зомби"
и что
это условие сработает не так, как ты хочешь, условие сработает лишь на одного, а код выполнится для всех
предположим ты выбрал двух скелетов, и ни один не входит в твою проверку на зомби, код в условии не выполнится, но если в выборке есть хоть один зомби, то сработает код условия для каждого моба
 
Сверху