Как можно триггерно добавить недавно созданному бойцу таблицу предметов/выпадающий предмет?

Принятый ответ

Мне нужен рандомный предмет из списка.
Как не странно, я уже написал, как это сделать - смотри комментарий №2.
Сделай hashtable с указаниями на два массива для каждого типа юнитов: один для предметов. второй для шансов их выпадения, и дальше цикл по их созданию с учетом максимального количества предметов, что выпадут.
Можно еще систему весов сделать, типа у разных предметов разная ценность, может выпасть два крутых предмета или 4 простых.
SomeFire, не стоит при подаче советов учитывать опыт и уровень на сайте - у каждого свой багаж знаний, кто-то прогает, кто-то моделит, кто-то просто пилит ланд, а кто-то просто берет участие в беседе и срачах.
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
22
10 лет назад
0
Создай переменную и добавь в неё юнита.
Потом создай небольшую область на карте(в любом месте)
Дальше , когда юнит умирает,поставь,чтобы созданная тобой область переместилась к его позиции
А в конце создай в этой области предмет.
Если понадобится скрин триггера,напиши,сделаю.
Решил не ждать твоего ответа и сразу прислать скриншоты
И ещё одна вещь:этот триггер далеко не идеален.Это самый простой,но сильно забагованный вариант(и как видно на скрине,он может действовать только на юнитов одного игрока,т.е. для каждого игрока такое создать надо).Я думаю,что легче(и качественнее) будет что-то подобное на джассе сделать.
4
20
10 лет назад
4
Rare, с областями это тупо, проще отлавливать смерть юнита и иметь заранее созданную для него таблицу предметов в виде БД, а там уже триггерно создавать на его месте все, что нужно. Но делать точно только через различные виды JASS.
0
23
10 лет назад
Отредактирован SomeFire
0
создай небольшую область на карте
создай в этой области предмет
когда юнит умирает
Лол. Счас свалюсь пат стол. Рар, прежде чем выбирать какое-то действие - посмотри на соседние. А потом посмотри, что в эти действия можно подставить. Вместо того, чтобы плодить туеву хучу ненужных вещей типа локаций, перемещать их и танцевать с бубном над ними, ты можеш просто посмотреть на входные данные функции и увидеть, что можно, например, создать предмет не в заранее созданный локации, а сразу там, где находится нужный юнит.
girvel:
Как можно триггерно добавить недавно созданному бойцу таблицу предметов/выпадающий предмет?
Создаёшь триггер, который ловит смерть юнита. Делаешь условие, какой юнит "должен умирать". В действии создаёшь соответствующий предмет на месте юнита.
P.S. girvel - 11 уровень, 20к опыта, вопрос из разряда "первый раз открыл редактор".
1
21
10 лет назад
1
SomeFire, я отлично разбираюсь в ВЕ. Я знаю способ "создать предмет в [координаты умирающего юнита]". Мне нужен рандомный предмет из списка.
0
23
10 лет назад
Отредактирован SomeFire
0
Включаем логику и думаем: как сделать рандом? Очевидно, должна быть некая функция, выдающая рандомное число? Немного поразмыслив, можно придти к выводу, что она должна быть в разделе математических функций. Находим её! Шикарно, теперь можем забабахать рандомное число в определённых границах. В зависимости от того, какое число выпало, выдаём соответствующий шмот (т.е. мы делим весь диапазон рандома на отрезки соответствующие вероятности выпадения шмота).
Примитинейший гуи, банальная логика. Кто дружит с jass - уберёт утечки и вообще сделает как ему удобно.
0
20
10 лет назад
0
Мне нужен рандомный предмет из списка.
Как не странно, я уже написал, как это сделать - смотри комментарий №2.
Сделай hashtable с указаниями на два массива для каждого типа юнитов: один для предметов. второй для шансов их выпадения, и дальше цикл по их созданию с учетом максимального количества предметов, что выпадут.
Можно еще систему весов сделать, типа у разных предметов разная ценность, может выпасть два крутых предмета или 4 простых.
SomeFire, не стоит при подаче советов учитывать опыт и уровень на сайте - у каждого свой багаж знаний, кто-то прогает, кто-то моделит, кто-то просто пилит ланд, а кто-то просто берет участие в беседе и срачах.
Принятый ответ
3 комментария удалено
Чтобы оставить комментарий, пожалуйста, войдите на сайт.