Показать сообщение отдельно
Старый 05.03.2011, 14:36   #12
Местный
 
Аватар для Nickers
 
Регистрация: 23.11.2009
Сообщений: 574
Сказал Спасибо: 134
Имеет 117 спасибок в 82 сообщенях
Nickers пока неопределено
По умолчанию

Все гораздо проще на мой взгляд...
Я не лазил у NLObP, но в скрипте TAMBIK'a лазил...
Скрипт простой (Тут я имею виду сам алгоритм скрипта на Энчант, а не конкретного автора), до ужаса...
Если Пакет Юз итем=> Записываем ИД скролла (ИЗ пакета берет ОИД, через ГетИтем получаем ИД)
Если пакет Актион (04 вродя), то записываются все нужные даные
Пакет Мультиселла-> Записываем

Потом в циклах: Поиск через ГетИтем Скролла(Записан ИД), Проверка че из этого получилось(Энчант-лвл), Проверка скок там еще свитков (Если мало то: Актион->Мультиселл) если норм, то по новой...

Ну и там всякие навороты типо сист сообщений, Энчант-лвл-макс в чат...
(Я считаю определение ИД скролла по Юзитем пакету тож наворотом, но эт удобна =))

Добавлено через 3 минуты
dyh9l, Мы на какие хроники то делаем?

Добавлено через 11 минут
Подсчет свитков тамбик устроил вот так:
delphi Код:
sumskrol:=Getsumitem(skrolID,3,4); //где 3-Ид скролла, 4-кол-во, а GetsumItem: function Getsumitem(Obj,up,down:integer): integer; var   i: integer; begin  Result:= 0; //В начале у нас 0   for i:=1 to max do     if (BaseItems[i,up]=Obj) then begin       Result:=Result+BaseItems[i,down];    end; end; //TAMBIK(c)  
Как видно обходится без массива со всеми скроллами...
А функция лишь для подсчета... (Оч удобно)
__________________
Пишу что думаю, но ничего не знаю...
[LameGuard|Скрипты l2phx]

Последний раз редактировалось Nickers, 05.03.2011 в 14:40. Причина: Добавлено сообщение
Nickers вне форума   Ответить с цитированием