Вернуться   CoderX :: Forums > Lineage II > L2PacketHack
Войти через OpenID

L2PacketHack Форум программы L2PacketHack, всё что с ней связано находится тут.
Правила раздела! Обсуждение багов Lineage ЗАПРЕЩЕНО!

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
 
 
Опции темы Опции просмотра
Старый 19.06.2009, 09:45   #9
Пользователь
 
Аватар для charly911
 
Регистрация: 20.05.2008
Адрес: Arg.
Сообщений: 35
Сказал Спасибо: 2
Имеет 3 спасибок в 2 сообщенях
charly911 пока неопределено
По умолчанию

Yes, when i compile it everything seems ok, no errors...
Code:
delphi Код:
library PruebaPlugin; {$define Release} // для совместимости с релизом пакетхака, при дебуге можно закоментировать uses   FastMM4,   usharedstructs; const PlayerName = 'PentA'; var                                {version} {revision}   min_ver_a: array[0..3] of Byte = ( 3,4,1,      46   );   min_ver: Integer absolute min_ver_a; // минимальная поддерживаемая версия программы   ps: TPluginStruct; // структура передаваемая в плагин // Обязательно вызываемая функция. // Должна вернуть описание плагина, // заодно может проверить версию программы function GetPluginInfo(const ver: Integer): PChar; stdcall; begin   if ver<min_ver then     Result:='Демонстрационный Plugin к программе l2phx'+sLineBreak+             'Для версий 3.4.0+'+sLineBreak+             'У вас старая версия программы! Плагин не сможет корректно с ней работать!'   else     Result:='Демонстрационный Plugin к программе l2phx'+sLineBreak+             'Для версий 3.4.0+'; end; // Обязательно вызываемая функция. // Получает структуру с ссылками на все функции основной программы, // которые могут вызываться из плагина. // Если вернёт False то плагин выгружается. function SetStruct(const struct: TPluginStruct): Boolean; stdcall; begin   ps:=struct;   Result:=True; end; // Необязательно вызываемая функция. (может отсутствовать в плагине) // Вызывается при установки соединения (cnt) с клиентом (withServer=False) // или сервером (withServer=True) procedure OnConnect(const cnt: Cardinal; // номер соединения                     const withServer: Boolean); stdcall; // с сервером? begin end; // Необязательно вызываемая функция. (может отсутствовать в плагине) // Вызывается при разрыве соединения (cnt) с клиентом (withServer=False) // или сервером (withServer=True) procedure OnDisconnect(const cnt: Cardinal; // номер соединения                        const withServer: Boolean); stdcall; // с сервером? begin end; // Необязательно вызываемая функция. (может отсутствовать в плагине) // Вызывается при выгрузке плагине procedure OnFree; stdcall; begin end; // Необязательно вызываемая функция. (может отсутствовать в плагине) // Вызывается при загрузке плагине procedure OnLoad; stdcall; var buf : string; begin   with ps do   begin         buf:=HexToString('4A 00 00 00 00');         WriteD(buf,2);         WriteS(buf,'Hola');         SendPacketStr(buf,ConnectInfo.ConnectID,False);   end; end; // Необязательно вызываемая функция. (может отсутствовать в плагине) // Вызывается при вызове скриптовой функции обьявленной в RefreshPrecompile function OnCallMethod(const MethodName: String; // имя функции в верхнем регистре                       var Params, // параметры функции                       FuncResult: Variant // результат функции          ): Boolean; stdcall; // если вернёт True то дальнейшая                               // обработка функции прекратиться begin   Result:=False; // передаём обработку функции программе   if MethodName='PI' then begin     Result:=True; // запрещаем дальнейшую обработку функции в программе     FuncResult:=Pi;   end; end; // Необязательно вызываемая функция. (может отсутствовать в плагине) // Вызывается перед компиляцией скриптов function OnRefreshPrecompile(var funcs: TStringArray): Integer; stdcall; begin   SetLength(funcs,1); // указываем количество добавляемых в скрипт функций   funcs[0]:='function Pi:Extended'; // одна из добавляемых функций end; // Необязательно вызываемая функция. (может отсутствовать в плагине) // Вызывается при приходе пакета, параметры: // cnt - номер соединения // fromServer - если пакет от сервера равна True, если от клиента то False // pck - собственно пакет (в виде массива) procedure OnPacket(const cnt: Cardinal; const fromServer: Boolean; var pck:   TPacket); stdcall; begin   if pck.size<3 then exit; // на случай если предыдущие плагины обнулили пакет end; // экспортируем используемые программой функции exports   GetPluginInfo,   SetStruct,   OnPacket,   OnConnect,   OnDisconnect,   OnLoad,   OnFree,   OnCallMethod,   OnRefreshPrecompile; begin end.

Charly.
charly911 вне форума   Ответить с цитированием
 

  CoderX :: Forums > Lineage II > L2PacketHack



Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 23:57.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!