⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 plugofengine.pas

📁 飞尔传奇世界的引擎代码可直接编译M2Engine 请使用Delphi编译
💻 PAS
📖 第 1 页 / 共 5 页
字号:
end;

function TPlayObject_GetHookDestroy(): TObjectAction;
begin
  Result := PlugInEngine.PlayObjectDestroy;
end;
procedure TPlayObject_SetHookUserLogin1(PlayObjectUserLogin: TObjectAction);
begin
  PlugInEngine.PlayObjectUserLogin1 := PlayObjectUserLogin;
end;
procedure TPlayObject_SetHookUserLogin2(PlayObjectUserLogin: TObjectAction);
begin
  PlugInEngine.PlayObjectUserLogin2 := PlayObjectUserLogin;
end;
procedure TPlayObject_SetHookUserLogin3(PlayObjectUserLogin: TObjectAction);
begin
  PlugInEngine.PlayObjectUserLogin3 := PlayObjectUserLogin;
end;
procedure TPlayObject_SetHookUserLogin4(PlayObjectUserLogin: TObjectAction);
begin
  PlugInEngine.PlayObjectUserLogin4 := PlayObjectUserLogin;
end;
procedure TPlayObject_SetHookUserCmd(PlayObjectUserCmd: TObjectUserCmd);
begin
  PlugInEngine.PlayObjectUserCmd := PlayObjectUserCmd;
end;

function TPlayObject_GetHookUserCmd(): TObjectUserCmd;
begin
  Result := PlugInEngine.PlayObjectUserCmd;
end;

procedure TPlayObject_SetHookPlayOperateMessage(PlayObjectOperateMessage: TObjectOperateMessage);
begin
  PlugInEngine.ObjectOperateMessage := PlayObjectOperateMessage;
end;

function TPlayObject_GetHookPlayOperateMessage(): TObjectOperateMessage;
begin
  Result := PlugInEngine.ObjectOperateMessage;
end;

procedure TPlayObject_SetHookClientQueryBagItems(ClientQueryBagItems: TObjectAction);
begin
  PlugInEngine.ClientQueryBagItems := ClientQueryBagItems;
end;

procedure TPlayObject_SetHookClientQueryUserState(ClientQueryUserState: TObjectActionXY);
begin
  PlugInEngine.ClientQueryUserState := ClientQueryUserState;
end;

procedure TPlayObject_SetHookSendActionGood(SendActionGood: TObjectAction);
begin
  PlugInEngine.SendActionGood := SendActionGood;
end;

procedure TPlayObject_SetHookSendActionFail(SendActionFail: TObjectAction);
begin
  PlugInEngine.SendActionFail := SendActionFail;
end;

procedure TPlayObject_SetHookSendWalkMsg(ObjectActioinXYD: TObjectActionXYD);
begin
  PlugInEngine.SendWalkMsg := ObjectActioinXYD;
end;

procedure TPlayObject_SetHookSendHorseRunMsg(ObjectActioinXYD: TObjectActionXYD);
begin
  PlugInEngine.SendHorseRunMsg := ObjectActioinXYD;
end;

procedure TPlayObject_SetHookSendRunMsg(ObjectActioinXYD: TObjectActionXYD);
begin
  PlugInEngine.SendRunMsg := ObjectActioinXYD;
end;

procedure TPlayObject_SetHookSendDeathMsg(ObjectActioinXYDM: TObjectActionXYDM);
begin
  PlugInEngine.SendDeathMsg := ObjectActioinXYDM;
end;

procedure TPlayObject_SetHookSendSkeletonMsg(ObjectActioinXYD: TObjectActionXYD);
begin
  PlugInEngine.SendSkeletonMsg := ObjectActioinXYD;
end;

procedure TPlayObject_SetHookSendAliveMsg(ObjectActioinXYD: TObjectActionXYD);
begin
  PlugInEngine.SendAliveMsg := ObjectActioinXYD;
end;

procedure TPlayObject_SetHookSendSpaceMoveMsg(ObjectActioinXYDWS: TObjectActionXYDWS);
begin
  PlugInEngine.SendSpaceMoveMsg := ObjectActioinXYDWS;
end;

procedure TPlayObject_SetHookSendChangeFaceMsg(ObjectActioinObject: TObjectActionObject);
begin
  PlugInEngine.SendChangeFaceMsg := ObjectActioinObject;
end;

procedure TPlayObject_SetHookSendUseitemsMsg(ObjectActioin: TObjectAction);
begin
  PlugInEngine.SendUseitemsMsg := ObjectActioin;
end;

procedure TPlayObject_SetHookSendUserLevelUpMsg(ObjectActioinObject: TObjectAction);
begin
  PlugInEngine.SendUserLevelUpMsg := ObjectActioinObject;
end;

procedure TPlayObject_SetHookSendUserAbilieyMsg(ObjectActioinObject: TObjectAction);
begin
  PlugInEngine.SendUserAbilieyMsg := ObjectActioinObject;
end;

procedure TPlayObject_SetHookSendUserStatusMsg(ObjectActioinXYDWS: TObjectActionXYDWS);
begin

end;

procedure TPlayObject_SetHookSendUserStruckMsg(ObjectActioinObject: TObjectActionObject);
begin
  PlugInEngine.SendUserStruckMsg := ObjectActioinObject;
end;

procedure TPlayObject_SetHookSendUseMagicMsg(ObjectActioin: TObjectAction);
begin
  PlugInEngine.SendUseMagicMsg := ObjectActioin;
end;

procedure TPlayObject_SetHookSendSocket(SendSocket: TPlaySendSocket);
begin
  PlugInEngine.SendSocket := SendSocket;
end;

procedure TPlayObject_SetHookSendGoodsList(SendGoodsList: TObjectActionSendGoods);
begin
  PlugInEngine.SendGoodsList := SendGoodsList;
end;

procedure TPlayObject_SetCheckClientDropItem(ActionDropItem: TObjectActionItem);
begin
  PlugInEngine.CheckCanDropItem := ActionDropItem;
end;

procedure TPlayObject_SetCheckClientDealItem(ActionItem: TObjectActionItem);
begin
  PlugInEngine.CheckCanDealItem := ActionItem;
end;

procedure TPlayObject_SetCheckClientStorageItem(ActionItem: TObjectActionItem);
begin
  PlugInEngine.CheckCanStorageItem := ActionItem;
end;

procedure TPlayObject_SetCheckClientRepairItem(ActionItem: TObjectActionItem);
begin
  PlugInEngine.CheckCanRepairItem := ActionItem;
end;

procedure TPlayObject_SetHookCheckUserItems(ObjectActioin: TObjectActionCheckUserItem);
begin
  PlugInEngine.CheckUserItems := ObjectActioin;
end;

procedure TPlayObject_SetHookRun(PlayRun: TObjectAction);
begin
  PlugInEngine.PlayObjectRun := PlayRun;
end;

procedure TPlayObject_SetHookFilterMsg(FilterMsg: TObjectFilterMsg);
begin
  PlugInEngine.PlayObjectFilterMsg := FilterMsg;
end;

function TPlayObject_PlayUseItems(PlayObject: TPlayObject): PTPLAYUSEITEMS;
begin
  Result := @PlayObject.m_UseItems;
end;

function TNormNpc_sFilePath(NormNpc: TNormNpc): _LPTPATHNAME;
var
  sFilePath: _TPATHNAME;
begin
  sFilePath := NormNpc.m_sFilePath;
  Result := @sFilePath;
end;
function TNormNpc_sPath(NormNpc: TNormNpc): _LPTPATHNAME;
var
  sPath: _TPATHNAME;
begin
  sPath := NormNpc.m_sPath;
  Result := @sPath;
end;
procedure TNormNpc_GetLineVariableText(NormNpc: TNormNpc; BaseObject: TBaseObject; pszMsg: PChar; pszOutMsg: PChar; nOutMsgLen: Integer);
var
  s10, sMsg, sOutMsg: string;
  nC: Integer;
begin
  sMsg := StrPas(pszMsg);
  setlength(sOutMsg, nOutMsgLen);
  Move(pszOutMsg^, sOutMsg[1], nOutMsgLen);
  nC := 0;
  while True do begin
    if TagCount(sMsg, '>') < 1 then Break;
    ArrestStringEx(sMsg, '<', '>', s10);
    NormNpc.GetVariableText(TPlayObject(BaseObject), sOutMsg, s10);
    Inc(nC);
    if nC >= 101 then Break;
  end;
end;

procedure TNormNpc_SetScriptActionCmd(ActionCmd: TScriptCmd);
begin
  PlugInEngine.QuestActionScriptCmd := ActionCmd;
end;

function TNormNpc_GetScriptActionCmd(): TScriptCmd;
begin
  Result := PlugInEngine.QuestActionScriptCmd;
end;

procedure TNormNpc_SetScriptConditionCmd(ConditionCmd: TScriptCmd);
begin
  PlugInEngine.QuestConditionScriptCmd := ConditionCmd;
end;

function TNormNpc_GetScriptConditionCmd(): TScriptCmd;
begin
  Result := PlugInEngine.QuestConditionScriptCmd;
end;

function TNormNpc_GetManageNpc(): TNormNpc;
begin
  Result := g_ManageNPC;
end;
function TNormNpc_GetFunctionNpc(): TNormNpc;
begin
  Result := g_FunctionNPC;
end;
procedure TNormNpc_GotoLable(NormNpc: TNormNpc; PlayObject: TPlayObject; pszLabel: PChar);
begin
  NormNpc.GotoLable(PlayObject, StrPas(pszLabel), False);
end;
procedure TNormNpc_SetScriptAction(ScriptAction: TScriptAction);
begin
  PlugInEngine.ActionScriptProcess := ScriptAction;
end;
function TNormNpc_GetScriptAction(): TScriptAction;
begin
  Result := PlugInEngine.ActionScriptProcess;
end;
procedure TNormNpc_SetScriptCondition(ScriptAction: TScriptCondition);
begin
  PlugInEngine.ConditionScriptProcess := ScriptAction;
end;

function TNormNpc_GetScriptCondition(): TScriptCondition;
begin
  Result := PlugInEngine.ConditionScriptProcess;
end;

function TMerchant_GoodsList(Merchant: TMerchant): TList;
begin
  Result := Merchant.m_GoodsList;
end;
function TMerchant_GetItemPrice(Merchant: TMerchant; nIndex: Integer): Integer;
begin
  if (nIndex < Merchant.m_ItemPriceList.Count) and (nIndex >= 0) and (Merchant.m_ItemPriceList.Count > 0) then
    Result := pTItemPrice(Merchant.m_ItemPriceList.Items[nIndex]).nPrice else Result := -1;
end;
function TMerchant_GetUserPrice(Merchant: TMerchant; PlayObject: TPlayObject; nPrice: Integer): Integer;
begin
  Result := Merchant.GetUserPrice(PlayObject, nPrice);
end;
function TMerchant_GetUserItemPrice(Merchant: TMerchant; UserItem: pTUserItem): Integer;
begin
  Result := Merchant.GetUserItemPrice(UserItem);
end;
procedure TMerchant_SetHookClientGetDetailGoodsList(GetDetailGoods: TObjectActionDetailGoods);
begin
  PlugInEngine.MerchantClientGetDetailGoodsList := GetDetailGoods;
end;
function TUserEngine_Create(): TUserEngine;
begin
  Result := TUserEngine.Create;
end;
procedure TUserEngine_Free(UserEngine: TUserEngine);
begin
  UserEngine.Free;
end;
function TUserEngine_GetUserEngine(): TUserEngine;
begin
  Result := UserEngine;
end;
function TUserEngine_GetPlayObject(szPlayName: PChar; boGetHide: Boolean): TPlayObject;
begin
  Result := UserEngine.GetPlayObject(StrPas(szPlayName));
end;
function TUserEngine_GetLoadPlayList(): TStringList;
begin
  Result := UserEngine.m_LoadPlayList

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -