📄 svmain.pas
字号:
TBaseObject_GoldChanged Name 'TBaseObject_GoldChanged',
TBaseObject_GameGoldChanged Name 'TBaseObject_GameGoldChanged',
TBaseObject_MagCanHitTarget Name 'TBaseObject_MagCanHitTarget',
TBaseObject_SetTargetCreat Name 'TBaseObject_SetTargetCreat',
TBaseObject_IsProtectTarget Name 'TBaseObject_IsProtectTarget',
TBaseObject_IsAttackTarget Name 'TBaseObject_IsAttackTarget',
TBaseObject_IsProperTarget Name 'TBaseObject_IsProperTarget',
TBaseObject_IsProperFriend Name 'TBaseObject_IsProperFriend',
TBaseObject_TrainSkillPoint Name 'TBaseObject_TrainSkillPoint',
TBaseObject_GetAttackPower Name 'TBaseObject_GetAttackPower',
TBaseObject_MakeSlave Name 'TBaseObject_MakeSlave',
TBaseObject_MakeGhost Name 'TBaseObject_MakeGhost',
TBaseObject_RefNameColor Name 'TBaseObject_RefNameColor',
//AddItem 占用内存由自己处理,API内部会自动申请内存
TBaseObject_AddItemToBag Name 'TBaseObject_AddItemToBag',
TBaseObject_AddItemToStorage Name 'TBaseObject_AddItemToStorage',
TBaseObject_ClearBagItem Name 'TBaseObject_ClearBagItem',
TBaseObject_ClearStorageItem Name 'TBaseObject_ClearStorageItem',
TBaseObject_SetHookGetFeature Name 'TBaseObject_SetHookGetFeature',
TBaseObject_SetHookEnterAnotherMap Name 'TBaseObject_SetHookEnterAnotherMap',
TBaseObject_SetHookObjectDie Name 'TBaseObject_SetHookObjectDie',
TBaseObject_SetHookChangeCurrMap Name 'TBaseObject_SetHookChangeCurrMap',
TBaseObject_GetPoseCreate Name 'TBaseObject_GetPoseCreate',
TBaseObject_MagMakeDefenceArea Name 'TBaseObject_MagMakeDefenceArea',
TBaseObject_MagBubbleDefenceUp Name 'TBaseObject_MagBubbleDefenceUp',
TPlayObject_IsEnoughBag Name 'TPlayObject_IsEnoughBag',
TPlayObject_nSoftVersionDate Name 'TPlayObject_nSoftVersionDate',
TPlayObject_nSoftVersionDateEx Name 'TPlayObject_nSoftVersionDateEx',
TPlayObject_dLogonTime Name 'TPlayObject_dLogonTime',
TPlayObject_dwLogonTick Name 'TPlayObject_dwLogonTick',
TPlayObject_nMemberType Name 'TPlayObject_nMemberType',
TPlayObject_nMemberLevel Name 'TPlayObject_nMemberLevel',
TPlayObject_nGameGold Name 'TPlayObject_nGameGold',
TPlayObject_nGamePoint Name 'TPlayObject_nGamePoint',
TPlayObject_nPayMentPoint Name 'TPlayObject_nPayMentPoint',
TPlayObject_nClientFlag Name 'TPlayObject_nClientFlag',
TPlayObject_nSelectID Name 'TPlayObject_nSelectID',
TPlayObject_nClientFlagMode Name 'TPlayObject_nClientFlagMode',
TPlayObject_dwClientTick Name 'TPlayObject_dwClientTick',
TPlayObject_wClientType Name 'TPlayObject_wClientType',
TPlayObject_sBankPassword Name 'TPlayObject_sBankPassword',
TPlayObject_nBankGold Name 'TPlayObject_nBankGold',
TPlayObject_Create Name 'TPlayObject_Create',
TPlayObject_Free Name 'TPlayObject_Free',
TPlayObject_SendSocket Name 'TPlayObject_SendSocket',
TPlayObject_SendDefMessage Name 'TPlayObject_SendDefMessage',
TPlayObject_SendAddItem Name 'TPlayObject_SendAddItem',
TPlayObject_SendDelItem Name 'TPlayObject_SendDelItem',
TPlayObject_TargetInNearXY Name 'TPlayObject_TargetInNearXY',
TPlayObject_SetBankPassword Name 'TPlayObject_SetBankPassword',
TPlayObject_GetPlayObjectTick Name 'TPlayObject_GetPlayObjectTick',
TPlayObject_SetPlayObjectTick Name 'TPlayObject_SetPlayObjectTick',
TPlayObject_SetHookCreate Name 'TPlayObject_SetHookCreate',
TPlayObject_GetHookCreate Name 'TPlayObject_GetHookCreate',
TPlayObject_SetHookDestroy Name 'TPlayObject_SetHookDestroy',
TPlayObject_GetHookDestroy Name 'TPlayObject_GetHookDestroy',
TPlayObject_SetHookUserLogin1 Name 'TPlayObject_SetHookUserLogin1',
TPlayObject_SetHookUserLogin2 Name 'TPlayObject_SetHookUserLogin2',
TPlayObject_SetHookUserLogin3 Name 'TPlayObject_SetHookUserLogin3',
TPlayObject_SetHookUserLogin4 Name 'TPlayObject_SetHookUserLogin4',
TPlayObject_SetHookUserCmd Name 'TPlayObject_SetHookUserCmd',
TPlayObject_GetHookUserCmd Name 'TPlayObject_GetHookUserCmd',
TPlayObject_SetHookPlayOperateMessage Name 'TPlayObject_SetHookPlayOperateMessage',
TPlayObject_GetHookPlayOperateMessage Name 'TPlayObject_GetHookPlayOperateMessage',
TPlayObject_SetHookClientQueryBagItems Name 'TPlayObject_SetHookClientQueryBagItems',
TPlayObject_SetHookClientQueryUserState Name 'TPlayObject_SetHookClientQueryUserState',
TPlayObject_SetHookSendActionGood Name 'TPlayObject_SetHookSendActionGood',
TPlayObject_SetHookSendActionFail Name 'TPlayObject_SetHookSendActionFail',
TPlayObject_SetHookSendWalkMsg Name 'TPlayObject_SetHookSendWalkMsg',
TPlayObject_SetHookSendHorseRunMsg Name 'TPlayObject_SetHookSendHorseRunMsg',
TPlayObject_SetHookSendRunMsg Name 'TPlayObject_SetHookSendRunMsg',
TPlayObject_SetHookSendDeathMsg Name 'TPlayObject_SetHookSendDeathMsg',
TPlayObject_SetHookSendSkeletonMsg Name 'TPlayObject_SetHookSendSkeletonMsg',
TPlayObject_SetHookSendAliveMsg Name 'TPlayObject_SetHookSendAliveMsg',
TPlayObject_SetHookSendSpaceMoveMsg Name 'TPlayObject_SetHookSendSpaceMoveMsg',
TPlayObject_SetHookSendChangeFaceMsg Name 'TPlayObject_SetHookSendChangeFaceMsg',
TPlayObject_SetHookSendUseitemsMsg Name 'TPlayObject_SetHookSendUseitemsMsg',
TPlayObject_SetHookSendUserLevelUpMsg Name 'TPlayObject_SetHookSendUserLevelUpMsg',
TPlayObject_SetHookSendUserAbilieyMsg Name 'TPlayObject_SetHookSendUserAbilieyMsg',
TPlayObject_SetHookSendUserStatusMsg Name 'TPlayObject_SetHookSendUserStatusMsg',
TPlayObject_SetHookSendUserStruckMsg Name 'TPlayObject_SetHookSendUserStruckMsg',
TPlayObject_SetHookSendUseMagicMsg Name 'TPlayObject_SetHookSendUseMagicMsg',
TPlayObject_SetHookSendSocket Name 'TPlayObject_SetHookSendSocket',
TPlayObject_SetHookSendGoodsList Name 'TPlayObject_SetHookSendGoodsList',
TPlayObject_SetCheckClientDropItem Name 'TPlayObject_SetCheckClientDropItem',
TPlayObject_SetCheckClientDealItem Name 'TPlayObject_SetCheckClientDealItem',
TPlayObject_SetCheckClientStorageItem Name 'TPlayObject_SetCheckClientStorageItem',
TPlayObject_SetCheckClientRepairItem Name 'TPlayObject_SetCheckClientRepairItem',
TPlayObject_SetHookCheckUserItems Name 'TPlayObject_SetHookCheckUserItems',
TPlayObject_SetHookRun Name 'TPlayObject_SetHookRun',
TPlayObject_SetHookFilterMsg Name 'TPlayObject_SetHookFilterMsg',
TPlayObject_SetHookUserRunMsg Name 'TPlayObject_SetHookUserRunMsg',
TPlayObject_SetUserInPutInteger Name 'TPlayObject_SetUserInPutInteger',
TPlayObject_SetUserInPutString Name 'TPlayObject_SetUserInPutString',
TPlayObject_IncGold Name 'TPlayObject_IncGold',
TPlayObject_IncGameGold Name 'TPlayObject_IncGameGold',
TPlayObject_IncGamePoint Name 'TPlayObject_IncGamePoint',
TPlayObject_DecGold Name 'TPlayObject_DecGold',
TPlayObject_DecGameGold Name 'TPlayObject_DecGameGold',
TPlayObject_DecGamePoint Name 'TPlayObject_DecGamePoint',
TPlayObject_PlayUseItems Name 'TPlayObject_PlayUseItems',
TNormNpc_sFilePath Name 'TNormNpc_sFilePath',
TNormNpc_sPath Name 'TNormNpc_sPath',
TNormNpc_GetLineVariableText Name 'TNormNpc_GetLineVariableText',
TNormNpc_SetScriptActionCmd Name 'TNormNpc_SetScriptActionCmd',
TNormNpc_GetScriptActionCmd Name 'TNormNpc_GetScriptActionCmd',
TNormNpc_SetScriptConditionCmd Name 'TNormNpc_SetScriptConditionCmd',
TNormNpc_GetScriptConditionCmd Name 'TNormNpc_GetScriptConditionCmd',
TNormNpc_GetManageNpc Name 'TNormNpc_GetManageNpc',
TNormNpc_GetFunctionNpc Name 'TNormNpc_GetFunctionNpc',
TNormNpc_GotoLable Name 'TNormNpc_GotoLable',
TNormNpc_SetScriptAction Name 'TNormNpc_SetScriptAction',
TNormNpc_GetScriptAction Name 'TNormNpc_GetScriptAction',
TNormNpc_SetScriptCondition Name 'TNormNpc_SetScriptCondition',
TNormNpc_GetScriptCondition Name 'TNormNpc_GetScriptCondition',
TMerchant_GoodsList Name 'TMerchant_GoodsList',
TMerchant_GetItemPrice Name 'TMerchant_GetItemPrice',
TMerchant_GetUserPrice Name 'TMerchant_GetUserPrice',
TMerchant_GetUserItemPrice Name 'TMerchant_GetUserItemPrice',
TMerchant_SetHookClientGetDetailGoodsList Name 'TMerchant_SetHookClientGetDetailGoodsList',
TMerchant_SetCheckUserSelect Name 'TMerchant_SetCheckUserSelect',
TMerchant_GetCheckUserSelect Name 'TMerchant_GetCheckUserSelect',
TUserEngine_Create Name 'TUserEngine_Create',
TUserEngine_Free Name 'TUserEngine_Free',
TUserEngine_GetUserEngine Name 'TUserEngine_GetUserEngine',
TUserEngine_GetPlayObject Name 'TUserEngine_GetPlayObject',
TUserEngine_GetLoadPlayList Name 'TUserEngine_GetLoadPlayList',
TUserEngine_GetPlayObjectList Name 'TUserEngine_GetPlayObjectList',
TUserEngine_GetLoadPlayCount Name 'TUserEngine_GetLoadPlayCount',
TUserEngine_GetPlayObjectCount Name 'TUserEngine_GetPlayObjectCount',
TUserEngine_GetStdItemByName Name 'TUserEngine_GetStdItemByName',
TUserEngine_GetStdItemByIndex Name 'TUserEngine_GetStdItemByIndex',
TUserEngine_CopyToUserItemFromName Name 'TUserEngine_CopyToUserItemFromName',
TUserEngine_GetStdItemList Name 'TUserEngine_GetStdItemList',
TUserEngine_GetMagicList Name 'TUserEngine_GetMagicList',
TUserEngine_FindMagic Name 'TUserEngine_FindMagic',
TUserEngine_AddMagic Name 'TUserEngine_AddMagic',
TUserEngine_DelMagic Name 'TUserEngine_DelMagic',
TUserEngine_SetHookRun Name 'TUserEngine_SetHookRun',
TUserEngine_GetHookRun Name 'TUserEngine_GetHookRun',
TUserEngine_SetHookClientUserMessage Name 'TUserEngine_SetHookClientUserMessage',
TMapManager_FindMap Name 'TMapManager_FindMap',
TEnvirnoment_GetRangeBaseObject Name 'TEnvirnoment_GetRangeBaseObject',
TEnvirnoment_boCANRIDE Name 'TEnvirnoment_boCANRIDE',
TEnvirnoment_boCANBAT Name 'TEnvirnoment_boCANBAT',
TGuild_RankList Name 'TGuild_RankList',
TItemUnit_GetItemAddValue Name 'TItemUnit_GetItemAddValue',
TMagicManager_MPow Name 'TMagicManager_MPow',
TMagicManager_GetPower Name 'TMagicManager_GetPower',
TMagicManager_GetPower13 Name 'TMagicManager_GetPower13',
TMagicManager_GetRPow Name 'TMagicManager_GetRPow',
TMagicManager_IsWarrSkill Name 'TMagicManager_IsWarrSkill',
TMagicManager_MagBigHealing Name 'TMagicManager_MagBigHealing',
TMagicManager_MagPushArround Name 'TMagicManager_MagPushArround',
TMagicManager_MagPushArroundTaos Name 'TMagicManager_MagPushArroundTaos',
TMagicManager_MagTurnUndead Name 'TMagicManager_MagTurnUndead',
TMagicManager_MagMakeHolyCurtain Name 'TMagicManager_MagMakeHolyCurtain',
TMagicManager_MagMakeGroupTransparent Name 'TMagicManager_MagMakeGroupTransparent',
TMagicManager_MagTamming Name 'TMagicManager_MagTamming',
TMagicManager_MagSaceMove Name 'TMagicManager_MagSaceMove',
TMagicManager_MagMakeFireCross Name 'TMagicManager_MagMakeFireCross',
TMagicManager_MagBigExplosion Name 'TMagicManager_MagBigExplosion',
TMagicManager_MagElecBlizzard Name 'TMagicManager_MagElecBlizzard',
TMagicManager_MabMabe Name 'TMagicManager_MabMabe',
TMagicManager_MagMakeSlave Name 'TMagicManager_MagMakeSlave',
TMagicManager_MagMakeSinSuSlave Name 'TMagicManager_MagMakeSinSuSlave',
TMagicManager_MagWindTebo Name 'TMagicManager_MagWindTebo',
TMagicManager_MagGroupLightening Name 'TMagicManager_MagGroupLightening',
TMagicManager_MagGroupAmyounsul Name 'TMagicManager_MagGroupAmyounsul',
TMagicManager_MagGroupDeDing Name 'TMagicManager_MagGroupDeDing',
TMagicManager_MagGroupMb Name 'TMagicManager_MagGroupMb',
TMagicManager_MagHbFireBall Name 'TMagicManager_MagHbFireBall',
TMagicManager_MagLightening Name 'TMagicManager_MagLightening',
TMagicManager_MagMakeSlave_ Name 'TMagicManager_MagMakeSlave_',
TMagicManager_CheckAmulet Name 'TMagicManager_CheckAmulet',
TMagicManager_UseAmulet Name 'TMagicManager_UseAmulet',
TMagicManager_MagMakeSuperFireCross Name 'TMagicManager_MagMakeSuperFireCross',
TMagicManager_MagMakeFireball Name 'TMagicManager_MagMakeFireball',
TMagicManager_MagTreatment Name 'TMagicManager_MagTreatment',
TMagicManager_MagMakeHellFire Name 'TMagicManager_MagMakeHellFire',
TMagicManager_MagMakeQuickLighting Name 'TMagicManager_MagMakeQuickLighting',
TMagicManager_MagMakeLighting Name 'TMagicManager_MagMakeLighting',
TMagicManager_MagMakeFireCharm Name 'TMagicManager_MagMakeFireCharm',
TMagicManager_MagMakeUnTreatment Name 'TMagicManager_MagMakeUnTreatment',
TMagicManager_MagMakePrivateTransparent Name 'TMagicManager_MagMakePrivateTransparent',
TMagicManager_MagMakeLivePlayObject Name 'TMagicManager_MagMakeLivePlayObject',
TMagicManager_MagMakeArrestObject Name 'TMagicManager_MagMakeArrestObject',
TMagicManager_MagChangePosition Name 'TMagicManager_MagChangePosition',
TMagicManager_MagMakeFireDay Name 'TMagicManager_MagMakeFireDay',
TMagicManager_GetMagicManager Name 'TMagicManager_GetMagicManager',
TMagicManager_SetHookDoSpell Name 'TMagicManager_SetHookDoSpell',
TMagicManager_DoSpell Name 'TMagicManager_DoSpell',
TRunSocket_CloseUser Name 'TRunSocket_CloseUser',
TRunSocket_SetHookExecGateMsgOpen Name 'TRunSocket_SetHookExecGateMsgOpen',
TRunSocket_SetHookExecGateMsgClose Name 'TRunSocket_SetHookExecGateMsgClose',
TRunSocket_SetHookExecGateMsgEeceive_OK Name 'TRunSocket_SetHookExecGateMsgEeceive_OK',
TRunSocket_SetHookExecGateMsgData Name 'TRunSocket_SetHookExecGateMsgData',
TPlugOfEngine_GetUserVersion Name 'TPlugOfEngine_GetUserVersion',
TPlugOfEngine_GetProductVersion Name 'TPlugOfEngine_GetProductVersion';
//------------------------------------------------------------------------------
var
sCaption: string;
l_dwRunTimeTick: LongWord;
boRemoteOpenGateSocket: Boolean = False;
boRemoteOpenGateSocketed: Boolean = False;
boSaveData: Boolean = False;
sChar: string = ' ?';
sRun: string = 'Run';
{$R *.dfm}
procedure ChangeCaptionText(Msg: PChar; nLen: Integer); stdcall;
var
sMsg: string;
begin
if (nLen > 0) and (nLen < 50) then begin
setlength(sMsg, nLen);
Move(Msg^, sMsg[1], nLen);
sCaptionExtText := sMsg;
end;
end;
procedure TFrmMain_ChangeGateSocket(boOpenGateSocket: Boolean; nCRCA: Integer); stdcall;
begin
if g_Config.nServerFile_CRCA = nCRCA then
boRemoteOpenGateSocket := boOpenGateSocket;
end;
function LoadAbuseInformation(FileName: string): Boolean;
var
i: Integer;
sText: string;
begin
Result := False;
if FileExists(FileName) then begin
AbuseTextList.Clear;
AbuseTextList.LoadFromFile(FileName);
i := 0;
while (True) do begin
if AbuseTextList.Count <= i then break;
sText := Trim(AbuseTextList.Strings[i]);
if sText = '' then begin
AbuseTextList.Delete(i);
Continue;
end;
Inc(i);
end;
Result := True;
end;
end;
procedure LoadServerTable(); //004E3E64
var
i, ii: Integer;
LoadList: TStringList;
GateList: TStringList;
SrvNetInfo: pTSrvNetInfo;
sLineText, sGateMsg: string;
sServerIdx, sIPaddr, sPort: string;
begin
for i := 0 to ServerTableList.Count - 1 do begin
TList(ServerTableList.Items[i]).Free;
end;
ServerTableList.Clear;
if FileExists('.\!servertable.txt') then begin
LoadList := TStringList.Create;
LoadList.LoadFromFile('.\!servertable.txt');
for i := 0 to LoadList.Count - 1 do begin
sLineText := Trim(LoadList.Strings[i]);
if (sLineText <> '') and (sLineText[1] <> ';') then begin
sGateMsg := Trim(GetValidStr3(sLineText, sGateMsg, [' ', #9]));
if sGateMsg <> '' then begin
GateList := TStringList.Create;
for ii := 0 to 30 do begin
if sGateMsg = '' then break;
sGateMsg := Trim(GetValidStr3(sGateMsg, sIPaddr, [' ', #9]));
sGateMsg := Trim(GetValidStr3(sGateMsg, sPort, [' ', #9]));
if (sIPaddr <> '') and (sPort <> '') then begin
GateList.AddObject(sIPaddr, TObject(Str_ToInt(sPort, 0)));
end;
end;
ServerTableList.Add(GateList);
end;
end;
end;
FreeAndNil(LoadList);
end else begin
ShowMessage('文件!servertable.txt未找到!!!');
end;
end;
procedure WriteConLog(MsgList: TStringList);
var
i: Integer;
Year, Month, Day, Hour, Min, Sec, MSec: Word;
sLogDir, sLogFileName: string;
LogFile: TextFile;
begin
if MsgList.Count <= 0 then exit;
DecodeDate(Date, Year, Month, Day);
DecodeTime(Time, Hour, Min, Sec, MSec);
if not DirectoryExists(g_Config.sConLogDir) then begin
//CreateDirectory(PChar(g_Config.sConLogDir),nil);
CreateDir(g_Config.sConLogDir);
end;
sLogDir := g_Config.sConLogDir + IntToStr(Year) + '-' + IntToStr2(Month) + '-' + IntToStr2(Day);
if not DirectoryExists(sLogDir) then begin
CreateDirectory(PChar(sLogDir), nil);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -