PDA

Просмотр полной версии : Коробка передач (нужна помощь)


IBZY
19.01.2010, 17:48
Всем привет, я в скриптах новенький(язык плохо знаю), строго не судите.
Суть скрипта: при пакете ХХХ от клиента в память записывантся цыфра х (от 0 до 3), и зависимо от цыфры в памяти идёт изменение входящево пакета.
// .
var
speed:TStrings;
// .
procedure Init;
begin
speed:=TStringList.Create;
end;
// .
procedure Free;
begin
speed.Free;
end;
// .
begin
begin
begin
if fromclient and (pck='38 2E 00 73 00 70 00 30 00 00 00 00 00 00 00') then
speed:='0';
end;
begin
if fromclient and (pck='38 2E 00 73 00 70 00 31 00 00 00 00 00 00 00') then
speed:='1';
end;
begin
if fromclient and (pck='38 2E 00 73 00 70 00 32 00 00 00 00 00 00 00') then
speed:='2';
end;
begin
if fromclient and (pck='38 2E 00 73 00 70 00 33 00 00 00 00 00 00 00') then
speed:='3';
end;
end;
begin
if speed='0' then
begin
if fromserver and (pck[1]=#$04) then pck[366]:=pck[366];
if fromserver and (pck[1]=#$04) then pck[377]:=pck[367];
end;
if speed='1' then
begin
if fromserver and (pck[1]=#$04) then pck[366]:=#$FF;
if fromserver and (pck[1]=#$04) then pck[377]:=#$01;
end;
if speed='2' then
begin
if fromserver and (pck[1]=#$04) then pck[366]:=#$FF;
if fromserver and (pck[1]=#$04) then pck[377]:=#$02;
end;
if speed='3' then
begin
if fromserver and (pck[1]=#$04) then pck[366]:=#$FF;
if fromserver and (pck[1]=#$04) then pck[377]:=#$03;
end;
end;
end.
вопрос: что должно быть вместо speed:TStrings; и speed:=TStringList.Create; (стринг неподходит точно).
Может чот нетак делаю?

alexteam
19.01.2010, 17:50
var
speed:integer;
begin
speed:=5555;
if speed=5555 then
end;

IBZY
19.01.2010, 21:49
СПС:D
итак я исправил и доделал скрипт:give_rose:
команды(в чат):
.sp0 - стандартная скорость
.sp1 - 1-я передача
.sp2 - 2-я передача
.sp3 - 3-я передача
после использования команды нужно чото надеть или снять (пушку, шапку, щит и т д) для обновления пакета UserInfo.
когда далеко отбежали и не грузятся мобы и чары то нужно использовать какойто скил(аркана павер или другие ауры тож подходят).
принцип работы частично взят с етого скрипта (http://coderx.ru/showthread.php?t=1754)
работает только на серверах без геодаты (или с оч плохой).
хроники-интерлюд.
у меня и у друга работает:cool:
всем удачи;)
PS:исправил здесь дабы избежать флуда

alexteam
19.01.2010, 22:00
p1=356+2*length(ConnectName);
p2=357+2*length(ConnectName);

SmertoO
20.01.2010, 18:54
Эх. Сам начинал делать такой скрипт) Правда не много по другому, работающий скорее как скрипт на тп, опираясь на самую северную,южную,западную,восточную точки.