Местный
Регистрация: 29.04.2008
Сообщений: 830
Сказал Спасибо: 80
Имеет 230 спасибок в 169 сообщенях
|
Обалдеть - оно работает!
Оффтоп
delphi Код:
var
x,y,z:integer;
function Rnd(min,max:integer): integer;
var
i: extended;
begin
i:=Random;
result:=min+int((max-min)*i);
end;
procedure Init;
begin
end;
procedure Free;
begin
end;
begin
Randomize;
x:=Rnd(-100,100);
y:=Rnd(50,500);
z:=Rnd(-1500,-1000);
sendmsg ('Число x: '+Inttostr(x));
sendmsg ('Число y: '+Inttostr(y));
sendmsg ('Число z: '+Inttostr(z));
end.
Добавлено через 38 минут
Вылилось в такое (скрипт сырой, в частности нет блока считывающего Origin-координаты):
Оффтоп
delphi Код:
const
Name='Begun';
var
multt,multh,multl:string;
CharID,x,y,z,mult:integer;
OriginX,OriginY,OriginZ:integer;
function Rand(min,max:integer): integer;
var
i: extended;
begin
i:=Random;
result:=min+int((max-min)*i);
end;
procedure Init; //Вызывается при включении скрипта
begin
mult:=99; //стартовое значение разброса
CharID:=268535632; //OID ведущего - может выясняться в процессе работы
end;
procedure Free; //Вызывается при выключении скрипта
begin
end;
//основная часть скрипта
//вызывается при приходе каждого пакета если скрипт включен
begin
if FromServer and (connectname=name) and (pck[1]=#$2F) and (CharID=ReadD(2)) then begin
x:=ReadD(6);
y:=ReadD(10);
z:=ReadD(14);
buf:=#$0F;
WriteMask('ddddddd',[(x+rand(-mult,mult)),(y+rand(-mult,mult)),z,OriginX,OriginY,OriginZ,1]);
SendToServerEx(name);
end;
if Fromserver and (connectname=name) and (pck[1]=#$4a) and (ReadD(2)=CharID) and (Copy(ReadS(24),1,5)='mult ') then begin
multh:=Copy(ReadS(24),6,1);
multl:=Copy(ReadS(24),7,1);
if (multh<'0') or (multh>'9') then multh:=''; //проверки на опечатку в чате
if (multl<'0') or (multl>'9') then multl:=''; // если введено не число - то сброс в 99
multt:=multh+multl;
if (multt='') then multt:='99';
mult:=Strtoint(multt);
end;
end.
При команде в чат от главного "mult XX" - меняет значение min\max (-+mult) на введенное (число от 0 до 99 - в скрипте так же есть проверка на верность введенного), для случаев бега по мостикам всяким.
PS: оптимизация - приветствуется
__________________
На фразы в аську типа "слух карочь 1)как точить 2)как раскачаться за 5 мин" - игнор. ИМХО идиотизм
Дай голодному рыбу - он будет один день сыт. Покажи ему, как удить рыбу - он пошлёт тебя и скажет, что у него есть более интересные занятия, чем забрасывать снасти в воду
David Kastrup @ de.comp.text.tex.
"Приобретенные навыки общения с маленькими детьми - сильно упрощают взаимопонимание на форумах..."
А вы знаете, что для качественной сварки - место шва нужно протереть спиртом?
Последний раз редактировалось Breadfan, 25.07.2010 в 15:32.
Причина: Добавлено сообщение
|