Показать сообщение отдельно
Старый 15.06.2012, 01:45   #7
Новичок
 
Регистрация: 14.06.2012
Сообщений: 4
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
atlas28 пока неопределено
По умолчанию

Ну в общем простенький скрипт, который не пропускает пакет DeleteObject то я написал, и все работает, как надо, но как сделать так, чтобы он не пропускал только тот DeleteObject, который идет после хайда? Ведь насколько я понял данный пакет не только для этого используется.

Грубо говоря хочу написать, но не знаю как, т. к. никогда не писал скрипты для l2phx. Смысл такой: если от сервера приходит пакет с типом 54 (MagicSkillLaunched) и SkillID там 922 (SkillID: Unknown Skill ID:922(039A)), то не пропускать следующий после этого пакет DeleteObject (тип 08), но только 1 раз.

Не пропускание DeleteObject:
Код:
begin
if FromServer and (pck[1]=#$08) then pck:=''
end.
Далее попытался заставить работать этот скрипт только после получения пакета типа 54, но ни вариант:
Код:
begin
if FromServer and (pck[1]=#$54) and (pck[6]=#$9A) and (pck[7]=#$03) and (pck[8]=#$00) and (pck[9]=#$00) then
begin
if FromServer and (pck[1]=#$08) then pck:=''
end;
end.
ни:

Код:
begin
if FromServer and (pck[1]=#$54) then
begin
if FromServer and (pck[1]=#$08) then pck:=''
end;
end.
работать не хотят. Что я не так пишу?))

Специально для проверки сделал:

Код:
begin
if FromServer and (pck[1]=#$54) and (pck[6]=#$9A) and (pck[7]=#$03) and (pck[8]=#$00) and (pck[9]=#$00) then

begin

buf:=#$4A;

WriteD(0);

WriteD(10);

WriteS('');

WriteS('Hello!!!');

SendToClient;

end;
end.
пашет, как надо, но если вместо "написать Hello!!!" ставлю условие, то нифига не пашет... В чем дело?

Последний раз редактировалось atlas28, 15.06.2012 в 04:06.
atlas28 вне форума   Ответить с цитированием