XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Барахолка
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
Freezen
Тут должен быть бред
offline
Опыт: 2,517
Активность:
Система скрещивания для ГУИ (просто и эффективно)
Эта самая простая и универасльная система, для GUI юзера (никакого кеша и vjassa)

Для импорта:
Копируем триггер Core в карту
Создаем 3 переменные: ItemStore (тип предмета, массив), ItemGet (тип предмета), ItemSuccess (логическая)

Для использования:
Заполняем массив ItemStore нужными итемами
Присваиваем ItemGet результат
Ставим строку с кастом скриптом: call ItemSys_CombineItem()
(После этого будет проведена проверка итемов и если все есть, то происходит скрещивания предметов (можно вставлять в триггер с любым условием и событием))
В случае если предмет скрестился ItemSuccess будет равно true, в противном случае false (позволяет в том или ином случае добавлять действия, например текстовые сообщения или спецэффект)

Пример:
Мы хотим сделать рецепт 2хКогтей Атаки (+6) = Когти Атаки ( +12), тогда

Код:
Событие: Юнит Получает Предмет
Условие: Триггеринг Юнит - Герой
Действие:
set ItemStore[1] = Когти Атаки (+6) (первый ингридиент)
set ItemStore[2] = Когти Атаки (+6) (второй ингридиент)
set ItemStore[3] = Рецепт (третий (сам рецепт))
set ItemGet = Когти Атаки (+12) (результат)
call ItemSys_CombineItem() (custom script) (собсна проверка и выдача резлуьтата)
Если
  Условие - ItemSuccess равно true
  То
      Показать какой-нить спецэффект
  Иначе
      Ничего не делать
Прикрепленные файлы
Тип файла: w3x GUI Combine.w3x (14.3 Кбайт, 159 просмотров )
Старый 20.09.2008, 16:18
krimatoriy
U.C.
offline
Опыт: 2,654
Активность:
Да и так всем давно известно. Каждый делает своим способом, но всё равно спасибо что постарался.
Старый 20.09.2008, 16:27
Freezen
Тут должен быть бред
offline
Опыт: 2,517
Активность:
krimatoriy
Моя система упрощает триггер, оставляя только самое необходимое + есть возможность использовать для рецептов одинаковые предметы
Старый 20.09.2008, 16:30
Alex Lonely

offline
Опыт: 72
Активность:
Freezen, отлично!
Но можно проще... Надо поискать свою системку =/
Старый 20.09.2008, 16:48
дьяволенок
r@per
offline
Опыт: 1,632
Активность:
Подскажите плиз, я новичок в работе с тригерами. Вроде все также сделал, но система не работает. Вот скрин.
Миниатюры
Кликните на картинку для увеличения
Название:  Безымянный.JPG
Просмотров: 120
Размер:  126.7 Кбайт  

Отредактировано дьяволенок, 06.10.2008 в 12:33.
Старый 06.10.2008, 09:24
ScorpioT1000
Работаем
offline
Опыт: отключен
кастомную ф-цию надо ставить после объявления переменных.
Старый 06.10.2008, 12:57
akkolt

offline
Опыт: 13,826
Активность:
ScorpioT1000, +1
Freezen, твоя система не сработает, перемести кс вниз.

akkolt добавил:
Кстати, все равно не понял... каким образом скрещиваются предметы?

akkolt добавил:
А вот теперь понял =) ты хоть выложи код самой системы, ато пока не скачаешь, не поймешь...
Старый 06.10.2008, 15:16
J
expert
offline
Опыт: 48,447
Активность:
система довольна кривая, во первых алгоритм какойто запутаный, который можно реализовать 2 раза покороче и попроще, во вторых он выполняется куча раз при каждом подбирании предмета, не легчи ли задать все настройки при инициализации, и создать триггеры автоматически обеспчивающие работу системы и радоватся?
Старый 06.10.2008, 15:24
ShadoW DaemoN

offline
Опыт: 37,078
Активность:
Freezen, самая простая и универсальная система для GUI юзеров (да и не только) - это когда он вбивает ТОЛЬКО параметры системы (связки предметов, эффект при скрещивании и т.д.). Остальное система должна делать сама.
Вообще, в идеале user-friendly системы должны совершать действия максимально эффективно и быть максимально удобными в обращении.
Данная система малоэффективна и, честно говоря, не очень-то дружелюбна.
Старый 06.10.2008, 15:46
adic3x

offline
Опыт: 108,439
Активность:
код приведенный в первом посте ужастный (в плане юзабельности системы), ни а каком дружелюбстве не может быть и речи...
Старый 06.10.2008, 16:17
Toadcop

offline
Опыт: 54,313
Активность:
Цитата:
дружелюбстве
дял сосунков =)

хотя второй аспект есть не выкладывать публично подобные "системы" =)
да и учись на тупых постах которые здесь запостили и не пость этим мудилам больше нечего ибо они тока обсирают =) т.е. делай для себя что надо и всё и если оно будет работать то зашибись =)
в конечном случие это всё делаетьса для игрововй карты. если хочеш делать публичные системы тогда организовывай их так что бы было удобно юзать особено ГУИ что само за себя говорит =)
Старый 06.10.2008, 16:42
adic3x

offline
Опыт: 108,439
Активность:
Цитата:
Зачем создавать какое ни было БД, если это не надо?

для начала пойми что у тебя тоже идет бд, только у тебя параметры предметов прописываются непосредственно в коде

свдн писал все правильно в этой теме
тс писал все правильно в этой теме
жон писал все правильно в этой теме
я думаю тоже)

потер срач

ADOLF добавил:
Цитата:
да и учись на тупых постах которые здесь запостили и не пость этим мудилам больше нечего ибо они тока обсирают =) т.е. делай для себя что надо и всё и если оно будет работать то зашибись =)

ну это "изолированный" вариант развития, просто фичя в том что если тебя не обосрали (никто афтори не обсирал, вся критика несла конструктивный характер) а указали на ошибки/недоработки то это надо принимать к сведению а не кричать "какие вы все тут нехорошие"

а реально мнение со стороны очень важно

ADOLF добавил:
в идеале пользователь должен вначале один раз задать системе рецепты и все (в т.ч. тригер который отлавливает получение предмета) д.б. зашито в систему
Старый 07.10.2008, 21:23
J
expert
offline
Опыт: 48,447
Активность:
Freezen таких систем полно и они никому ненужны
и в идеале не должно быть цыкла, ну или уменьшать количество интераций надо
если сделаеш так то тогда это уже будет что-то значить, можеш сортировать БД и делать бинарный поиск по предмету с минимальны равкодом или брать первые 11 байтиков (боже, я заразился) предмета с минимальным равкодом в рецепте и помещать в этот индекс массива (тогда с одинаковыми байтиакми могут быть до 8 предметов) и при проверки героя делать чето подобное, ну или попробывать опять заюзать какнить хендлы равкодов переведеных в строки, ну вообщем это первоночальная пища для размышления, недумаю что один из вариант действительно получится сделать т.к. там у каждого свои проблемы
Старый 07.10.2008, 21:44
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 22:34.