под правленние експорты. с калбэком. аттачед.
айди пакетов в скрипте сам поправиш -)
delphi Код:
var
initok : boolean;
maskval : array[0..10] of variant;
Function SayCallBack(MsgType:integer; Target, Msg : string):integer;
begin
pck := '';
//49=Say2:s(Text)d(Type)s(Target)
WriteMask('csds',[$49, Msg, MsgType, Target]);
SendToServer;
result := 1; //Успешно отправили.
//результат миррорим в лог пх.
sendmsg(format('(%d) [me > %s] %s',[msgtype, target, msg])); //можно убрать.
//result = 0. зарезервирован. калбэк вернет его если нельзя вызвать функцию с скрипта.
end;
procedure Init; //will be called on script initialization
begin
UseForConnectName := 'YourCharacterName'; //Обязательно. иначе не будем знать от какого коннекта слать.
initok := ChatLoadAndInit('c:\test\ChatServer.dll');
if not initok then
ShowMessage('Dll Load Fail!!');
end;
procedure Free;
begin
end;
begin
if fromserver and initok then
if pck[1] = #$4a then
begin
readmask('dss',6,maskval);
chatsay(maskval[0],maskval[1],maskval[2]);
end;
end.