//Скрипт Рисуй аденой.
// MyName запишите свой ник.
// зайдите в игру запустите скрипт киньте 1 адену на землю.
//Пишет почти все буквы.
//Для использования скрипта создайте в директории C:\l2jokes\risuuadenoy
//файл 1.txt запишите в него строку.
var
MyName: String;
f: TStringList;
jokes: array [1..2] of string;
m: TMemo;
MyID: Cardinal;
MyName2: String;
i: Integer;
X, Y, Z: Integer;
X1, Y1, Z1: Integer;
gX: Integer;
N: Char;
MyTest: String;
MyI: Integer;
DL: Integer;
SI: String;
p: Integer;
smeshenie, smeshenie1: Integer;
v: Integer;
procedure Init; //It is called at script turn on
begin
MyName:='bobrul';
i:= 0;
gX := 1;
p := 1;
v := 0; //Загружаю текст из файла 1.txt
f := TStringList.Create;
f.LoadFromFile('C:\l2jokes\risuuadenoy\' + IntToStr(1) + '.txt');
jokes[1] := f.Text;
f.free;
ShowTab;
//Создаю TMemo
m:=TMemo.Create(UserTab);
m.parent:=UserTab;
m.align:=alClient;
m.ReadOnly:=true;
m.ScrollBars:=ssBoth;
m.lines.add('Загружен текст из файла 1.txt :');
MyTest:=Trim(Lowercase(jokes[1]));
m.lines.add(MyTest); //В MyTest содержиться строка из файла.
MyI:=Length(MyTest); //Длина строки MyTest
end;
procedure Free; //It is called at script turn off
begin
//Уничтожаю TMemo
m.Free;
HideTab;
end;
procedure RisP; //Кидает адену на землю.
begin
buf := #$17;
buf := buf + HStr('A1 81 02 10 01 00 00 00');
WriteD(X); //X
WriteD(Y); //Y
WriteD(Z); //Z
SendToServer;
Delay(2000);
Application.ProcessMessages;
end;
procedure Vverx(J: Integer);
begin
gX:=1;
for gX:= 1 to J do
begin
Y:=Y - 5; //Рисует вверх.
Application.ProcessMessages;
RisP;
Application.ProcessMessages;
gX:=gX+1;
end;
gX:=1;
end;
procedure Vpravo(J: Integer);
begin
gX:=1;
for gX:= 1 to J do
begin
X:=X + 5; //Рисует вправо.
Application.ProcessMessages;
RisP;
Application.ProcessMessages;
gX:=gX+1;
end;
//Запомнить максимальное смещение вправо.
smeshenie := X - X1;
gX:=1;
end;
procedure Vniz(J: Integer);
begin
gX:=1;
for gX:= 1 to J do
begin
Y:=Y + 5; //Рисует вниз.
Application.ProcessMessages;
RisP;
Application.ProcessMessages;
gX:=gX+1;
end;
gX:=1;
end;
procedure Vlevo(J: Integer);
begin
gX:=1;
for gX:= 1 to J do
begin
X:=X - 5; //Рисует влево.
Application.ProcessMessages;
RisP;
Application.ProcessMessages;
gX:=gX+1;
end;
gX:=1;
end;
//Заготовки букв.
procedure BP(SI: String); // Рисование бувы п.
begin
if SI = 'а' then
begin
vverx(1);
Y:=Y - 5;
vpravo(1);
Y:=Y - 5;
vpravo(1);
Y:=Y - 5;
vpravo(1);
Y:=Y - 5;
vpravo(1);
Y:=Y - 5;
vpravo(1);
X:=X + 5;
vniz(1);
X:=X + 5;
vniz(1);
X:=X + 5;
vniz(1);
X:=X + 5;
vniz(1);
X:=X + 5;
vniz(1);
X:=X - 35; // Рисует вправо.
Y:=Y - 5; //ВВерх
vverx(1);
vpravo(4);
X:=X + 15;
//smeshenie1 := X - X1;
//smeshenie := smeshenie1;
end;
if SI = 'б' then
begin
vverx(6);
vpravo(3);
vverx(1);
X:=X - 15; // Рисует вправо.
Y:=Y + 30; //ВВерх
vpravo(3);
vverx(3);
vlevo(2);
end;
if SI = 'в' then
begin
vverx(6);
vpravo(3);
vniz(2);
vlevo(2);
vniz(1);
vpravo(1);
X:=X + 5; // Рисует вправо.
vniz(2);
vlevo(2);
end;
if SI = 'г' then
begin
vverx(6);
vpravo(3);
vniz(2);
end;
if SI = 'д' then
begin
vverx(2);
vpravo(5);
vniz(1);
X:=X - 20; // Рисует вправо.
Y:=Y - 5; //ВВерх
vverx(4);
vpravo(3);
vniz(3);
end;