找回密码
 立即注册

QQ登录

只需一步,快速开始

精英招募点击投放广告点击投放广告
黄金广告位招租
腾讯云秒杀
查看: 1781|回复: 3

各位大佬帮助看看有个报错是哪里的问题!

[复制链接]

1

主题

0

回帖

1

积分

新手上路

淘币
0
贡献币
0
金币
2
最后登录
2022-4-11
发表于 2022-3-2 17:16:44 | 显示全部楼层 |阅读模式
GOM引擎
上服务器以后突然出现的这段代码!
搞不懂是哪里的问题,哀求指教!
[Exception] TBaseObject:ie 3 CheckCode:1001
回复

使用道具 举报

1

主题

41

回帖

42

积分

新手上路

淘币
0
贡献币
0
金币
43
最后登录
2022-4-16
发表于 2022-3-2 17:24:22 | 显示全部楼层
重启下服务器试试,如果以前没有报过那么基本就是这个问题。
回复

使用道具 举报

0

主题

14

回帖

14

积分

新手上路

淘币
0
贡献币
0
金币
14
最后登录
2022-4-16
发表于 2022-3-2 20:30:58 | 显示全部楼层
基础对象死亡报的错。。翻了一下源码。与怪物有关,怪物死亡时的坐标或者有一些任务标记之类的。。
然后有个计时 会报这种的错。。。。。。

简单来说 就是怪物刷新 爆物品 怪物触发方面原因的了。。。
再看了一下 好像与wa取怪物身上的物品有关的样子啊。。。。。。。。。。汗

复制一段源码你看看吧。。。。。。。。。。。。。
<ol>function TPlayObject.ClientGetButchItem(BaseObject: TBaseObject; nX, nY: Integer; btDir: Byte; var dwDelayTime: LongWord): Boolean;
var
  x, y, n10, n14, nBL: Integer;
  dwCheckTime       : LongWord;
  StdItem           : pTStdItem;
resourcestring
  sHintMsg          = '你身上灵符不足%d个,不能挖取%s身上的物品';
begin
  Result := False;
  if not (btDir in [0..7]) then Exit;
  if m_StallMgr.OnSale then Exit;

  if m_boDeath or m_boGhost then Exit;

  dwDelayTime := 0;

  if not g_Config.boSpeedHackCheck then begin
    dwCheckTime := GetTickCount - m_dwTurnTick;
    if dwCheckTime < _MAX(150, g_Config.dwTurnIntervalTime - 150) then begin
      dwDelayTime := _MAX(150, g_Config.dwTurnIntervalTime - 150) - dwCheckTime;
      Exit;
    end;
    m_dwTurnTick := GetTickCount;
  end;

  SendSocket(nil, Format('%s/%d', [sSTATUS_GOOD, GetTickCount]));

  if Integer(BaseObject) = 0 then
    Exit;

  //1001
  if (m_PEnvir.m_MapFlag.nDigItem > 0) and (m_PEnvir.m_MapFlag.pDigItemList  nil) then begin
    if (m_UseItems[U_WEAPON].wIndex > 0) and (m_UseItems[U_WEAPON].Dura > 0) then begin
      StdItem := UserEngine.GetStdItem(m_UseItems[U_WEAPON].wIndex);
      if (StdItem  nil) and (StdItem.Shape in [75..77]) and (m_DetectItem.MakeIndex > 0) then begin //品质
        //if GetItemSpiritQuality(@m_DetectItem) > 0 then begin
        m_btDirection := btDir;
        if GetFrontPosition(x, y) and m_PEnvir.CanWalk(x, y, False) then begin
          if PileEarth(x, y, StdItem.Shape, Integer(BaseObject)) then begin
            SendSocket(nil, '+DIG');
          end;
          Dec(m_nHealthTick, 30);
          Dec(m_nSpellTick, 50);
          m_nSpellTick := _MAX(0, m_nSpellTick);
          Dec(m_nPerHealth, 2);
          Dec(m_nPerSpell, 2);
          Exit;
          //end;
        end;
      end;
    end;
  end;

  if (abs(nX - m_nCurrX)
回复

使用道具 举报

0

主题

8

回帖

8

积分

新手上路

淘币
0
贡献币
0
金币
8
最后登录
2022-4-12
发表于 2022-3-2 20:33:08 | 显示全部楼层
PAI哥威武,直接从源代码找到问题的根源。
回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【乱回复纯数字纯字母将禁言】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|淘传奇GM基地 ( 冀ICP备2022008803号 )|网站地图

GMT+8, 2025-4-18 02:49 , Processed in 0.263192 second(s), 26 queries , Gzip On.

Powered by tcqm2 X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表